diff options
Diffstat (limited to 'CIAO/connectors/dds4ccm/impl/ndds/DomainParticipantManager.h')
-rw-r--r-- | CIAO/connectors/dds4ccm/impl/ndds/DomainParticipantManager.h | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/CIAO/connectors/dds4ccm/impl/ndds/DomainParticipantManager.h b/CIAO/connectors/dds4ccm/impl/ndds/DomainParticipantManager.h index 495f4e162f2..5d32d11f561 100644 --- a/CIAO/connectors/dds4ccm/impl/ndds/DomainParticipantManager.h +++ b/CIAO/connectors/dds4ccm/impl/ndds/DomainParticipantManager.h @@ -61,27 +61,36 @@ namespace CIAO /// Destructor ~DomainParticipantManager (void); - bool add_topic (DDSDomainParticipant *dp, DDSTopic * tp); + bool add_topic (DDSDomainParticipant *dp, + DDSTopic * tp); - bool remove_topic (DDSDomainParticipant * dp, DDSTopic *tp); + bool remove_topic (DDSDomainParticipant * dp, + DDSTopic *tp); - DDSDomainParticipant * get_participant (const char * qos_profile); + DDSDomainParticipant * get_participant (const DDS_DomainId_t domain_id, + const char * qos_profile); bool - add_participant (const char * qos_profile, DDSDomainParticipant * dp); + add_participant (const char * qos_profile, + DDSDomainParticipant * dp); bool remove_participant (DDSDomainParticipant * dp); - void _inc_ref (DDSDomainParticipant * dp, DDSTopic * tp); + void _inc_ref (DDSDomainParticipant * dp, + DDSTopic * tp); private: TAO_SYNCH_MUTEX dps_mutex_; typedef std::map <ACE_CString, DDSParticipantTopic *> DomainParticipants; + + typedef std::map < DDS_DomainId_t, DomainParticipants > DomainParticipantIDs; + DomainParticipantIDs dps_; + typedef DomainParticipants::iterator DomainParticipants_iterator; - DomainParticipants dps_; DomainParticipants_iterator - get_participanttopic_by_participant (DDSDomainParticipant * dp); + get_participanttopic_by_participant (const DomainParticipantIDs::iterator it, + DDSDomainParticipant * dp); }; typedef ACE_Singleton<DomainParticipantManager, |