#include <DCPS_IR_Domain.h>
Collaboration diagram for DCPS_IR_Domain:

This represents a Domain in the system. It contains the representatives of the entities that are in the corresponding system's domain.
typedef std::map<OpenDDS::DCPS::RepoId, DCPS_IR_Topic*, OpenDDS::DCPS::GUID_tKeyLessThan> DCPS_IR_Domain::IdToTopicMap [private] |
Mapping from RepoId values to Topic object references.
| DCPS_IR_Domain::DCPS_IR_Domain | ( | DDS::DomainId_t | id, | |
| RepoIdGenerator & | generator | |||
| ) |
| DCPS_IR_Domain::~DCPS_IR_Domain | ( | ) |
| void DCPS_IR_Domain::add_dead_participant | ( | DCPS_IR_Participant * | participant | ) |
Mark a participant as being unresponsive (dead) and schedule it to be removed next time remove_dead_participants is called.
| int DCPS_IR_Domain::add_participant | ( | DCPS_IR_Participant * | participant | ) |
Add the participant This takes ownership of the memory if the particpant is added. Returns 0 if added, 1 if already exists, -1 other failure
| OpenDDS::DCPS::TopicStatus DCPS_IR_Domain::add_topic | ( | OpenDDS::DCPS::RepoId_out | topicId, | |
| const char * | topicName, | |||
| const char * | dataTypeName, | |||
| const DDS::TopicQos & | qos, | |||
| DCPS_IR_Participant * | participantPtr | |||
| ) |
Add a topic to the domain Returns OpenDDS::DCPS::CREATED if successfull
| int DCPS_IR_Domain::add_topic_description | ( | DCPS_IR_Topic_Description *& | desc | ) | [private] |
Takes ownership of the memory pointed to by desc if successful returns 0 if successful, 1 if description already exists -1 unknown error 2 if confliciting dataTypeName
| OpenDDS::DCPS::TopicStatus DCPS_IR_Domain::add_topic_i | ( | OpenDDS::DCPS::RepoId & | topicId, | |
| const char * | topicName, | |||
| const char * | dataTypeName, | |||
| const DDS::TopicQos & | qos, | |||
| DCPS_IR_Participant * | participantPtr | |||
| ) | [private] |
| int DCPS_IR_Domain::cleanup_built_in_topics | ( | ) |
Cleans up the Built-In Topic structures.
| void DCPS_IR_Domain::dispose_participant_bit | ( | DCPS_IR_Participant * | participant | ) |
Remove the Built-In Topic information.
| void DCPS_IR_Domain::dispose_publication_bit | ( | DCPS_IR_Publication * | publication | ) |
| void DCPS_IR_Domain::dispose_subscription_bit | ( | DCPS_IR_Subscription * | subscription | ) |
| void DCPS_IR_Domain::dispose_topic_bit | ( | DCPS_IR_Topic * | topic | ) |
| DCPS_IR_Topic * DCPS_IR_Domain::find_topic | ( | const OpenDDS::DCPS::RepoId & | id | ) |
Find a topic object reference using the topic Id value.
| OpenDDS::DCPS::TopicStatus DCPS_IR_Domain::find_topic | ( | const char * | topicName, | |
| DCPS_IR_Topic *& | topic | |||
| ) |
Find the topic with the topic name Does NOT take ownership of any initial memory pointed to by topic Returns OpenDDS::DCPS::FOUND if exists and topic is changed, -1 otherwise
| int DCPS_IR_Domain::find_topic_description | ( | const char * | name, | |
| const char * | dataTypeName, | |||
| DCPS_IR_Topic_Description *& | desc | |||
| ) | [private] |
Find the topic description with the name and data type name Does NOT take ownership of any initial memory pointed to by desc Returns 0 if found and desc is changed, -1 if not found and 1 if conflicting dataTypeName
| OpenDDS::DCPS::TopicStatus DCPS_IR_Domain::force_add_topic | ( | const OpenDDS::DCPS::RepoId & | topicId, | |
| const char * | topicName, | |||
| const char * | dataTypeName, | |||
| const DDS::TopicQos & | qos, | |||
| DCPS_IR_Participant * | participantPtr | |||
| ) |
| DDS::DomainId_t DCPS_IR_Domain::get_id | ( | ) |
| OpenDDS::DCPS::RepoId DCPS_IR_Domain::get_next_participant_id | ( | ) |
| int DCPS_IR_Domain::init_built_in_topics | ( | bool | federated = false |
) |
Initialize the Built-In Topic structures This needs to be called before the run begins Returns 0 (zero) if successful
| int DCPS_IR_Domain::init_built_in_topics_datawriters | ( | bool | federated | ) | [private] |
| int DCPS_IR_Domain::init_built_in_topics_topics | ( | ) | [private] |
work of initializing the built in topics is done in these private methods. They were broken up for readability.
| int DCPS_IR_Domain::init_built_in_topics_transport | ( | ) | [private] |
| void DCPS_IR_Domain::last_participant_key | ( | long | key | ) |
| DCPS_IR_Participant * DCPS_IR_Domain::participant | ( | const OpenDDS::DCPS::RepoId & | id | ) | const |
Find the participant with the id.
| const DCPS_IR_Participant_Map & DCPS_IR_Domain::participants | ( | ) | const |
Expose a readable reference to the participant map.
| void DCPS_IR_Domain::publish_participant_bit | ( | DCPS_IR_Participant * | participant | ) |
Publish the Built-In Topic information.
| void DCPS_IR_Domain::publish_publication_bit | ( | DCPS_IR_Publication * | publication | ) |
| void DCPS_IR_Domain::publish_subscription_bit | ( | DCPS_IR_Subscription * | subscription | ) |
| void DCPS_IR_Domain::publish_topic_bit | ( | DCPS_IR_Topic * | topic | ) |
| int DCPS_IR_Domain::reassociate_built_in_topic_pubs | ( | ) |
Reassociate the Built-In Topic datawriters This needs to be called after reincarnating from persistence and before the run begins Returns 0 (zero) if successful
| void DCPS_IR_Domain::remove_dead_participants | ( | ) |
Remove any participants currently marked as dead.
| int DCPS_IR_Domain::remove_participant | ( | const OpenDDS::DCPS::RepoId & | particpantId, | |
| CORBA::Boolean | notify_lost | |||
| ) |
Remove the particpant The participant has been deleted if returns successful. Returns 0 if successful. The notify_lost parameter is passed to the remove_associations() See the comments of remove_associations() in DdsDcpsDataWriterRemote.idl or DdsDcpsDataReaderRemote.idl.
| OpenDDS::DCPS::TopicStatus DCPS_IR_Domain::remove_topic | ( | DCPS_IR_Participant * | part, | |
| DCPS_IR_Topic *& | topic | |||
| ) |
Remove the topic The topic has been deleted if returns successful Returns OpenDDS::DCPS::REMOVED if successful
| int DCPS_IR_Domain::remove_topic_description | ( | DCPS_IR_Topic_Description *& | desc | ) | [private] |
Caller is given ownership of the topic description and any memory that it has ownership of if returns successful
: Is this a leak? Who owns the contained description?
DDS::DomainParticipant_var DCPS_IR_Domain::bitParticipant_ [private] |
DDS::ParticipantBuiltinTopicDataDataWriter_var DCPS_IR_Domain::bitParticipantDataWriter_ [private] |
DDS::DomainParticipantFactory_var DCPS_IR_Domain::bitParticipantFactory_ [private] |
Built-in Topic variables.
DDS::DomainParticipantListener_var DCPS_IR_Domain::bitParticipantListener_ [private] |
DDS::Topic_var DCPS_IR_Domain::bitParticipantTopic_ [private] |
DDS::PublicationBuiltinTopicDataDataWriter_var DCPS_IR_Domain::bitPublicationDataWriter_ [private] |
DDS::Topic_var DCPS_IR_Domain::bitPublicationTopic_ [private] |
DDS::Publisher_var DCPS_IR_Domain::bitPublisher_ [private] |
DDS::SubscriptionBuiltinTopicDataDataWriter_var DCPS_IR_Domain::bitSubscriptionDataWriter_ [private] |
DDS::Topic_var DCPS_IR_Domain::bitSubscriptionTopic_ [private] |
DDS::TopicBuiltinTopicDataDataWriter_var DCPS_IR_Domain::bitTopicDataWriter_ [private] |
DDS::Topic_var DCPS_IR_Domain::bitTopicTopic_ [private] |
the dead participants dead participants exist in both this and participants_
DDS::DomainId_t DCPS_IR_Domain::id_ [private] |
IdToTopicMap DCPS_IR_Domain::idToTopicMap_ [private] |
Actual mapping of Id values to Topic object references.
all the participants
all the topics
bool DCPS_IR_Domain::useBIT_ [private] |
indicates if the BuiltIn Topics are enabled
1.4.7