OpenDDS
Snapshot(2023/04/07-19:43)
|
Representation of a Domain in the system. More...
#include <DCPS_IR_Domain.h>
Public Member Functions | |
DCPS_IR_Domain (DDS::DomainId_t id, OpenDDS::DCPS::RepoIdGenerator &generator) | |
~DCPS_IR_Domain () | |
int | add_participant (DCPS_IR_Participant_rch participant) |
int | remove_participant (const OpenDDS::DCPS::GUID_t &particpantId, CORBA::Boolean notify_lost) |
DCPS_IR_Participant_rch | participant_rch (const OpenDDS::DCPS::GUID_t &id) const |
DCPS_IR_Participant * | participant (const OpenDDS::DCPS::GUID_t &id) const |
Find the participant with the id. More... | |
OpenDDS::DCPS::TopicStatus | find_topic (const char *topicName, DCPS_IR_Topic *&topic) |
DCPS_IR_Topic * | find_topic (const OpenDDS::DCPS::GUID_t &id) |
Find a topic object reference using the topic Id value. More... | |
OpenDDS::DCPS::TopicStatus | remove_topic (DCPS_IR_Participant *part, DCPS_IR_Topic *&topic) |
void | remove_topic_id_mapping (const OpenDDS::DCPS::GUID_t &topicId) |
void | add_dead_participant (DCPS_IR_Participant_rch participant) |
void | remove_dead_participants (bool part_of_cleanup=false) |
Remove any participants currently marked as dead. More... | |
DDS::DomainId_t | get_id () |
OpenDDS::DCPS::GUID_t | get_next_participant_id () |
Next Entity Id value in sequence. More... | |
void | last_participant_key (long key) |
Ensure no conflicts with sequence values from persistent storage. More... | |
int | init_built_in_topics (bool federated, bool persistent) |
int | cleanup_built_in_topics () |
Cleans up the Built-In Topic structures. More... | |
int | reassociate_built_in_topic_pubs () |
void | publish_participant_bit (DCPS_IR_Participant *participant) |
Publish Participant in the Participant Built-In Topic. More... | |
void | publish_topic_bit (DCPS_IR_Topic *topic) |
Publish Topic in the Topic Built-In Topic. More... | |
void | publish_subscription_bit (DCPS_IR_Subscription *subscription) |
Publish Subscription in the Subscription Built-In Topic. More... | |
void | publish_publication_bit (DCPS_IR_Publication *publication) |
Publish Publication in the Publication Built-In Topic. More... | |
void | dispose_participant_bit (DCPS_IR_Participant *participant) |
Dispose Participant in the Participant Built-In Topic. More... | |
void | dispose_topic_bit (DCPS_IR_Topic *topic) |
Dispose Topic in the Topic Built-In Topic. More... | |
void | dispose_subscription_bit (DCPS_IR_Subscription *subscription) |
Dispose Subscription in the Subscription Built-In Topic. More... | |
void | dispose_publication_bit (DCPS_IR_Publication *publication) |
Dispose Publication in the Publication Built-In Topic. More... | |
const DCPS_IR_Participant_Map & | participants () const |
Expose a readable reference to the participant map. More... | |
std::string | dump_to_string (const std::string &prefix, int depth) const |
bool | useBIT () const |
OpenDDS::DCPS::TopicStatus | add_topic (OpenDDS::DCPS::GUID_t_out topicId, const char *topicName, const char *dataTypeName, const DDS::TopicQos &qos, DCPS_IR_Participant *participantPtr) |
OpenDDS::DCPS::TopicStatus | force_add_topic (const OpenDDS::DCPS::GUID_t &topicId, const char *topicName, const char *dataTypeName, const DDS::TopicQos &qos, DCPS_IR_Participant *participantPtr) |
![]() | |
virtual | ~RcObject () |
virtual void | _add_ref () |
virtual void | _remove_ref () |
long | ref_count () const |
WeakObject * | _get_weak_object () const |
Private Types | |
typedef std::map< OpenDDS::DCPS::GUID_t, OpenDDS::DCPS::container_supported_unique_ptr< DCPS_IR_Topic >, OpenDDS::DCPS::GUID_tKeyLessThan > | IdToTopicMap |
Mapping from GUID_t values to Topic object references. More... | |
Private Member Functions | |
OpenDDS::DCPS::TopicStatus | add_topic_i (OpenDDS::DCPS::GUID_t &topicId, const char *topicName, const char *dataTypeName, const DDS::TopicQos &qos, DCPS_IR_Participant *participantPtr, bool isBIT) |
int | add_topic_description (OpenDDS::DCPS::unique_ptr< DCPS_IR_Topic_Description > desc) |
int | find_topic_description (const char *name, const char *dataTypeName, DCPS_IR_Topic_Description *&desc) |
int | remove_topic_description (DCPS_IR_Topic_Description *desc) |
Returns 0 if successful. More... | |
DCPS_IR_Domain (const DCPS_IR_Domain &) | |
int | init_built_in_topics_topics () |
int | init_built_in_topics_datawriters (bool federated) |
int | init_built_in_topics_transport (bool persistent) |
Additional Inherited Members | |
![]() | |
RcObject () | |
Representation of a Domain in the system.
This represents a Domain in the system. It contains the representatives of the entities that are in the corresponding system's domain.
Definition at line 64 of file DCPS_IR_Domain.h.
|
private |
Mapping from GUID_t values to Topic object references.
Definition at line 236 of file DCPS_IR_Domain.h.
DCPS_IR_Domain::DCPS_IR_Domain | ( | DDS::DomainId_t | id, |
OpenDDS::DCPS::RepoIdGenerator & | generator | ||
) |
Definition at line 39 of file DCPS_IR_Domain.cpp.
DCPS_IR_Domain::~DCPS_IR_Domain | ( | ) |
Definition at line 46 of file DCPS_IR_Domain.cpp.
|
private |
void DCPS_IR_Domain::add_dead_participant | ( | DCPS_IR_Participant_rch | participant | ) |
Mark a participant as being unresponsive (dead) and schedule it to be removed next time remove_dead_participants is called.
Definition at line 966 of file DCPS_IR_Domain.cpp.
References deadParticipants_.
Referenced by DCPS_IR_Participant::mark_dead().
int DCPS_IR_Domain::add_participant | ( | DCPS_IR_Participant_rch | participant | ) |
Add the participant Returns 0 if added, 1 if already exists, -1 other failure
Definition at line 75 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, id_, OpenDDS::DCPS::RcHandle< T >::in(), LM_DEBUG, LM_NOTICE, participants_, and publish_participant_bit().
OpenDDS::DCPS::TopicStatus DCPS_IR_Domain::add_topic | ( | OpenDDS::DCPS::GUID_t_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 successful
Definition at line 156 of file DCPS_IR_Domain.cpp.
References add_topic_i(), OpenDDS::DCPS::CREATED, DCPS_IR_Participant::get_next_topic_id(), OpenDDS::DCPS::GUID_UNKNOWN, and OpenDDS::DCPS::topicIsBIT().
|
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
Definition at line 899 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, find_topic_description(), OpenDDS::DCPS::unique_ptr< T, Deleter >::get(), DCPS_IR_Topic_Description::get_dataTypeName(), DCPS_IR_Topic_Description::get_name(), id_, LM_DEBUG, LM_ERROR, LM_NOTICE, OpenDDS::DCPS::move(), and topicDescriptions_.
Referenced by add_topic_i().
|
private |
Definition at line 193 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_TEXT(), DCPS_IR_Topic_Description::add_topic(), add_topic_description(), DCPS_IR_Participant::add_topic_reference(), OpenDDS::DCPS::CONFLICTING_TYPENAME, OpenDDS::DCPS::CREATED, OpenDDS::DCPS::DCPS_debug_level, find_topic_description(), OpenDDS::DCPS::unique_ptr< T, Deleter >::get(), OpenDDS::DCPS::GUID_UNKNOWN, id_, idToTopicMap_, LM_DEBUG, LM_ERROR, LM_NOTICE, OpenDDS::DCPS::move(), OpenDDS::DCPS::NOT_FOUND, publish_topic_bit(), and DCPS_IR_Topic_Description::remove_topic().
Referenced by add_topic(), and force_add_topic().
int DCPS_IR_Domain::cleanup_built_in_topics | ( | ) |
Cleans up the Built-In Topic structures.
Definition at line 857 of file DCPS_IR_Domain.cpp.
References ACE_ERROR, bitParticipant_, bitParticipantDataWriter_, bitParticipantFactory_, bitParticipantTopic_, bitPublicationDataWriter_, bitPublicationTopic_, bitPublisher_, bitSubscriptionDataWriter_, bitSubscriptionTopic_, bitTopicDataWriter_, bitTopicTopic_, LM_ERROR, OpenDDS::DCPS::retcode_to_string(), and useBIT_.
void DCPS_IR_Domain::dispose_participant_bit | ( | DCPS_IR_Participant * | participant | ) |
Dispose Participant in the Participant Built-In Topic.
Definition at line 1266 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_ERROR, ACE_TEXT(), bitParticipantDataWriter_, DCPS_IR_Participant::get_handle(), DCPS_IR_Participant::get_id(), DCPS_IR_Participant::isBitPublisher(), LM_ERROR, DDS::RETCODE_OK, and useBIT_.
Referenced by remove_participant().
void DCPS_IR_Domain::dispose_publication_bit | ( | DCPS_IR_Publication * | publication | ) |
Dispose Publication in the Publication Built-In Topic.
Definition at line 1414 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_ERROR, ACE_TEXT(), bitPublicationDataWriter_, DCPS_IR_Publication::get_handle(), DCPS_IR_Publication::is_bit(), LM_ERROR, DDS::RETCODE_OK, and useBIT_.
Referenced by DCPS_IR_Participant::remove_publication().
void DCPS_IR_Domain::dispose_subscription_bit | ( | DCPS_IR_Subscription * | subscription | ) |
Dispose Subscription in the Subscription Built-In Topic.
Definition at line 1364 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_ERROR, ACE_TEXT(), bitSubscriptionDataWriter_, DCPS_IR_Subscription::get_handle(), DCPS_IR_Subscription::is_bit(), LM_ERROR, DDS::RETCODE_OK, and useBIT_.
Referenced by DCPS_IR_Participant::remove_subscription().
void DCPS_IR_Domain::dispose_topic_bit | ( | DCPS_IR_Topic * | topic | ) |
Dispose Topic in the Topic Built-In Topic.
Definition at line 1314 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_ERROR, ACE_TEXT(), bitTopicDataWriter_, DCPS_IR_Topic::get_handle(), DCPS_IR_Topic::is_bit(), LM_ERROR, DDS::RETCODE_OK, and useBIT_.
Referenced by remove_topic().
std::string DCPS_IR_Domain::dump_to_string | ( | const std::string & | prefix, |
int | depth | ||
) | const |
Definition at line 1470 of file DCPS_IR_Domain.cpp.
References deadParticipants_, id_, OPENDDS_END_VERSIONED_NAMESPACE_DECL, participants_, topicDescriptions_, and useBIT_.
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
Definition at line 330 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, OpenDDS::DCPS::FOUND, DCPS_IR_Topic::get_id(), id_, LM_DEBUG, OpenDDS::DCPS::NOT_FOUND, and topicDescriptions_.
DCPS_IR_Topic * DCPS_IR_Domain::find_topic | ( | const OpenDDS::DCPS::GUID_t & | id | ) |
Find a topic object reference using the topic Id value.
Definition at line 358 of file DCPS_IR_Domain.cpp.
References idToTopicMap_.
|
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
Definition at line 418 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, id_, init_built_in_topics(), LM_DEBUG, LM_NOTICE, ACE_OS::strcmp(), and topicDescriptions_.
Referenced by add_topic_description(), and add_topic_i().
OpenDDS::DCPS::TopicStatus DCPS_IR_Domain::force_add_topic | ( | const OpenDDS::DCPS::GUID_t & | 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 successful
Definition at line 178 of file DCPS_IR_Domain.cpp.
References add_topic_i(), and OpenDDS::DCPS::topicIsBIT().
DDS::DomainId_t DCPS_IR_Domain::get_id | ( | void | ) |
Definition at line 1006 of file DCPS_IR_Domain.cpp.
References id_.
Referenced by DCPS_IR_Participant::remove_all_dependents(), and DCPS_IR_Participant::takeOwnership().
OpenDDS::DCPS::GUID_t DCPS_IR_Domain::get_next_participant_id | ( | ) |
Next Entity Id value in sequence.
Definition at line 1012 of file DCPS_IR_Domain.cpp.
References OpenDDS::DCPS::RepoIdGenerator::next(), and participantIdGenerator_.
Referenced by TAO_DDS_DCPSInfo_i::add_domain_participant().
int DCPS_IR_Domain::init_built_in_topics | ( | bool | federated, |
bool | persistent | ||
) |
Initialize the Built-In Topic structures This needs to be called before the run begins Returns 0 (zero) if successful
Definition at line 469 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_DEBUG, ACE_ERROR_RETURN, ACE_TEXT(), bitParticipant_, bitParticipantFactory_, bitParticipantListener_, OpenDDS::DCPS::DCPS_debug_level, OpenDDS::DCPS::DEFAULT_STATUS_MASK, id_, init_built_in_topics_datawriters(), init_built_in_topics_topics(), init_built_in_topics_transport(), CORBA::is_nil(), LM_DEBUG, LM_ERROR, PARTICIPANT_QOS_DEFAULT, reassociate_built_in_topic_pubs(), TheParticipantFactory, TheTransientKludge, and useBIT_.
Referenced by TAO_DDS_DCPSInfo_i::domain(), and find_topic_description().
|
private |
work of initializing the built in topics is done in these private methods. They were broken up for readability.
Definition at line 705 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_ERROR_RETURN, ACE_TEXT(), bitParticipantDataWriter_, bitParticipantTopic_, bitPublicationDataWriter_, bitPublicationTopic_, bitPublisher_, bitSubscriptionDataWriter_, bitSubscriptionTopic_, bitTopicDataWriter_, bitTopicTopic_, OpenDDS::DCPS::DEFAULT_STATUS_MASK, DDS::DataWriterQos::durability, CORBA::is_nil(), DDS::DurabilityQosPolicy::kind, DDS::LivelinessQosPolicy::lease_duration, DDS::DataWriterQos::liveliness, LM_ERROR, DDS::Duration_t::nanosec, DDS::Duration_t::sec, TheServiceParticipant, and DDS::TRANSIENT_LOCAL_DURABILITY_QOS.
Referenced by init_built_in_topics(), and 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.
Definition at line 565 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_ERROR, ACE_ERROR_RETURN, ACE_TEXT(), bitParticipant_, bitParticipantTopic_, bitPublicationTopic_, bitSubscriptionTopic_, bitTopicTopic_, OpenDDS::DCPS::BUILT_IN_PARTICIPANT_TOPIC, OpenDDS::DCPS::BUILT_IN_PARTICIPANT_TOPIC_TYPE, OpenDDS::DCPS::BUILT_IN_PUBLICATION_TOPIC, OpenDDS::DCPS::BUILT_IN_PUBLICATION_TOPIC_TYPE, OpenDDS::DCPS::BUILT_IN_SUBSCRIPTION_TOPIC, OpenDDS::DCPS::BUILT_IN_SUBSCRIPTION_TOPIC_TYPE, OpenDDS::DCPS::BUILT_IN_TOPIC_TOPIC, OpenDDS::DCPS::BUILT_IN_TOPIC_TOPIC_TYPE, OpenDDS::DCPS::DEFAULT_STATUS_MASK, init_built_in_topics_datawriters(), CORBA::is_nil(), LM_ERROR, and DDS::RETCODE_OK.
Referenced by init_built_in_topics().
|
private |
work of initializing the built in topics is done in these private methods. They were broken up for readability.
Definition at line 807 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_ERROR_RETURN, ACE_TEXT(), DDS::WriterDataLifecycleQosPolicy::autodispose_unregistered_instances, OpenDDS::DCPS::TransportRegistry::bind_config(), bitParticipant_, bitPublisher_, OpenDDS::DCPS::TransportRegistry::DEFAULT_INST_PREFIX, OpenDDS::DCPS::DEFAULT_STATUS_MASK, OpenDDS::DCPS::TransportRegistry::get_config(), OpenDDS::DCPS::TransportRegistry::instance(), CORBA::is_nil(), LM_ERROR, PUBLISHER_QOS_DEFAULT, transportConfig_, and DDS::DataWriterQos::writer_data_lifecycle.
Referenced by init_built_in_topics().
void DCPS_IR_Domain::last_participant_key | ( | long | key | ) |
Ensure no conflicts with sequence values from persistent storage.
Definition at line 1018 of file DCPS_IR_Domain.cpp.
References OpenDDS::DCPS::RepoIdGenerator::last(), and participantIdGenerator_.
DCPS_IR_Participant * DCPS_IR_Domain::participant | ( | const OpenDDS::DCPS::GUID_t & | id | ) | const |
Find the participant with the id.
Definition at line 69 of file DCPS_IR_Domain.cpp.
References OpenDDS::DCPS::RcHandle< T >::in(), and participant_rch().
Referenced by TAO_DDS_DCPSInfo_i::add_domain_participant(), TAO_DDS_DCPSInfo_i::add_subscription(), and remove_participant().
DCPS_IR_Participant_rch DCPS_IR_Domain::participant_rch | ( | const OpenDDS::DCPS::GUID_t & | id | ) | const |
Definition at line 56 of file DCPS_IR_Domain.cpp.
References participants_.
Referenced by participant().
const DCPS_IR_Participant_Map & DCPS_IR_Domain::participants | ( | ) | const |
Expose a readable reference to the participant map.
Definition at line 51 of file DCPS_IR_Domain.cpp.
References participants_.
Referenced by TAO_DDS_DCPSInfo_i::add_domain_participant().
void DCPS_IR_Domain::publish_participant_bit | ( | DCPS_IR_Participant * | participant | ) |
Publish Participant in the Participant Built-In Topic.
Definition at line 1023 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_DEBUG, OpenDDS::DCPS::bit_key_to_guid(), bitParticipantDataWriter_, OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::DCPS_debug_level, DCPS_IR_Participant::get_id(), DCPS_IR_Participant::get_qos(), OpenDDS::DCPS::guid_to_bit_key(), DCPS_IR_Participant::isBitPublisher(), LM_DEBUG, DCPS_IR_Participant::set_handle(), useBIT_, and DDS::DomainParticipantQos::user_data.
Referenced by add_participant(), and DCPS_IR_Participant::set_qos().
void DCPS_IR_Domain::publish_publication_bit | ( | DCPS_IR_Publication * | publication | ) |
Publish Publication in the Publication Built-In Topic.
Definition at line 1186 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_DEBUG, ACE_ERROR, OpenDDS::DCPS::bit_key_to_guid(), bitPublicationDataWriter_, OpenDDS::DCPS::BUILT_IN_PARTICIPANT_TOPIC_TYPE, OpenDDS::DCPS::BUILT_IN_PUBLICATION_TOPIC_TYPE, OpenDDS::DCPS::BUILT_IN_SUBSCRIPTION_TOPIC_TYPE, OpenDDS::DCPS::BUILT_IN_TOPIC_TOPIC_TYPE, OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::DCPS_debug_level, DDS::DataWriterQos::deadline, DDS::DataWriterQos::destination_order, DDS::DataWriterQos::durability, DDS::DataWriterQos::durability_service, DCPS_IR_Topic_Description::get_dataTypeName(), DCPS_IR_Publication::get_datawriter_qos(), DCPS_IR_Publication::get_id(), DCPS_IR_Topic_Description::get_name(), DCPS_IR_Publication::get_participant_id(), DCPS_IR_Publication::get_publisher_qos(), DCPS_IR_Publication::get_topic(), DCPS_IR_Publication::get_topic_description(), DCPS_IR_Topic::get_topic_qos(), DDS::PublisherQos::group_data, OpenDDS::DCPS::guid_to_bit_key(), DDS::DataWriterQos::latency_budget, DDS::DataWriterQos::lifespan, DDS::DataWriterQos::liveliness, LM_DEBUG, LM_ERROR, DDS::DataWriterQos::ownership, DDS::DataWriterQos::ownership_strength, DDS::PublisherQos::partition, DDS::PublisherQos::presentation, DDS::DataWriterQos::reliability, DDS::RETCODE_OK, DCPS_IR_Publication::set_bit_status(), DCPS_IR_Publication::set_handle(), ACE_OS::strcmp(), DDS::TopicQos::topic_data, useBIT_, and DDS::DataWriterQos::user_data.
Referenced by DCPS_IR_Topic::add_publication_reference(), DCPS_IR_Publication::set_qos(), and DCPS_IR_Topic::set_topic_qos().
void DCPS_IR_Domain::publish_subscription_bit | ( | DCPS_IR_Subscription * | subscription | ) |
Publish Subscription in the Subscription Built-In Topic.
Definition at line 1118 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_DEBUG, OpenDDS::DCPS::bit_key_to_guid(), bitSubscriptionDataWriter_, OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::DCPS_debug_level, DDS::DataReaderQos::deadline, DDS::DataReaderQos::destination_order, DDS::DataReaderQos::durability, DCPS_IR_Subscription::get_datareader_qos(), DCPS_IR_Topic_Description::get_dataTypeName(), DCPS_IR_Subscription::get_id(), DCPS_IR_Topic_Description::get_name(), DCPS_IR_Subscription::get_participant_id(), DCPS_IR_Subscription::get_subscriber_qos(), DCPS_IR_Subscription::get_topic(), DCPS_IR_Subscription::get_topic_description(), DCPS_IR_Topic::get_topic_qos(), DDS::SubscriberQos::group_data, OpenDDS::DCPS::guid_to_bit_key(), DDS::DataReaderQos::latency_budget, DDS::DataReaderQos::liveliness, LM_DEBUG, name, DDS::DataReaderQos::ownership, DDS::SubscriberQos::partition, DDS::SubscriberQos::presentation, DDS::DataReaderQos::reliability, DCPS_IR_Subscription::set_bit_status(), DCPS_IR_Subscription::set_handle(), DDS::DataReaderQos::time_based_filter, DDS::TopicQos::topic_data, OpenDDS::DCPS::topicIsBIT(), useBIT_, and DDS::DataReaderQos::user_data.
Referenced by DCPS_IR_Topic_Description::add_subscription_reference(), DCPS_IR_Subscription::set_qos(), and DCPS_IR_Topic::set_topic_qos().
void DCPS_IR_Domain::publish_topic_bit | ( | DCPS_IR_Topic * | topic | ) |
Publish Topic in the Topic Built-In Topic.
Definition at line 1058 of file DCPS_IR_Domain.cpp.
References CORBA::Exception::_tao_print_exception(), ACE_DEBUG, OpenDDS::DCPS::bit_key_to_guid(), bitTopicDataWriter_, OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::DCPS_debug_level, DDS::TopicQos::deadline, DDS::TopicQos::destination_order, DDS::TopicQos::durability, DDS::TopicQos::durability_service, DCPS_IR_Topic_Description::get_dataTypeName(), DCPS_IR_Topic::get_id(), DCPS_IR_Topic_Description::get_name(), DCPS_IR_Topic::get_topic_description(), DCPS_IR_Topic::get_topic_qos(), OpenDDS::DCPS::guid_to_bit_key(), DDS::TopicQos::history, DDS::TopicQos::latency_budget, DDS::TopicQos::lifespan, DDS::TopicQos::liveliness, LM_DEBUG, name, DDS::TopicQos::ownership, DDS::TopicQos::reliability, DDS::TopicQos::resource_limits, DCPS_IR_Topic::set_bit_status(), DCPS_IR_Topic::set_handle(), DDS::TopicQos::topic_data, OpenDDS::DCPS::topicIsBIT(), DDS::TopicQos::transport_priority, and useBIT_.
Referenced by add_topic_i(), and DCPS_IR_Topic::set_topic_qos().
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
Definition at line 536 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, id_, LM_DEBUG, and participants_.
Referenced by init_built_in_topics().
void DCPS_IR_Domain::remove_dead_participants | ( | bool | part_of_cleanup = false | ) |
Remove any participants currently marked as dead.
Definition at line 971 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_ERROR, dead, deadParticipants_, OpenDDS::DCPS::RcHandle< T >::in(), LM_DEBUG, LM_WARNING, and remove_participant().
Referenced by TAO_DDS_DCPSInfo_i::add_subscription().
int DCPS_IR_Domain::remove_participant | ( | const OpenDDS::DCPS::GUID_t & | 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 DataWriterRemote.idl or DataReaderRemote.idl.
Definition at line 115 of file DCPS_IR_Domain.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, dispose_participant_bit(), OpenDDS::DCPS::RcHandle< T >::get(), id_, OpenDDS::DCPS::RcHandle< T >::in(), LM_DEBUG, LM_ERROR, participant(), and participants_.
Referenced by remove_dead_participants().
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
Definition at line 369 of file DCPS_IR_Domain.cpp.
References ACE_ERROR, ACE_TEXT(), dispose_topic_bit(), DCPS_IR_Topic_Description::get_dataTypeName(), DCPS_IR_Topic::get_id(), DCPS_IR_Participant::get_id(), DCPS_IR_Topic_Description::get_name(), DCPS_IR_Topic_Description::get_number_topics(), DCPS_IR_Topic::get_topic_description(), id_, LM_ERROR, DCPS_IR_Topic::release(), DCPS_IR_Topic_Description::remove_topic(), remove_topic_description(), DCPS_IR_Participant::remove_topic_reference(), and OpenDDS::DCPS::REMOVED.
Referenced by DCPS_IR_Participant::remove_all_dependents().
|
private |
Returns 0 if successful.
Definition at line 948 of file DCPS_IR_Domain.cpp.
References ACE_ERROR, ACE_TEXT(), DCPS_IR_Topic_Description::get_name(), id_, LM_ERROR, and topicDescriptions_.
Referenced by remove_topic().
void DCPS_IR_Domain::remove_topic_id_mapping | ( | const OpenDDS::DCPS::GUID_t & | topicId | ) |
Remove the topic from the id to topic map. This method should only be called by the DCPS_IR_Topic when deleting the topic.
Definition at line 1463 of file DCPS_IR_Domain.cpp.
References idToTopicMap_.
Referenced by DCPS_IR_Topic::release().
|
inline |
Definition at line 178 of file DCPS_IR_Domain.h.
References name.
Referenced by TAO_DDS_DCPSInfo_i::domain().
|
private |
Built-in Topic variables
Definition at line 247 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), init_built_in_topics(), init_built_in_topics_topics(), and init_built_in_topics_transport().
|
private |
Built-in Topic variables
Definition at line 255 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), dispose_participant_bit(), init_built_in_topics_datawriters(), and publish_participant_bit().
|
private |
Built-in Topic variables
Definition at line 246 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), and init_built_in_topics().
|
private |
Built-in Topic variables
Definition at line 248 of file DCPS_IR_Domain.h.
Referenced by init_built_in_topics().
|
private |
Built-in Topic variables
Definition at line 254 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), init_built_in_topics_datawriters(), and init_built_in_topics_topics().
|
private |
Built-in Topic variables
Definition at line 264 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), dispose_publication_bit(), init_built_in_topics_datawriters(), and publish_publication_bit().
|
private |
Built-in Topic variables
Definition at line 263 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), init_built_in_topics_datawriters(), and init_built_in_topics_topics().
|
private |
Built-in Topic variables
Definition at line 249 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), init_built_in_topics_datawriters(), and init_built_in_topics_transport().
|
private |
Built-in Topic variables
Definition at line 261 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), dispose_subscription_bit(), init_built_in_topics_datawriters(), and publish_subscription_bit().
|
private |
Built-in Topic variables
Definition at line 260 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), init_built_in_topics_datawriters(), and init_built_in_topics_topics().
|
private |
Built-in Topic variables
Definition at line 258 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), dispose_topic_bit(), init_built_in_topics_datawriters(), and publish_topic_bit().
|
private |
Built-in Topic variables
Definition at line 257 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), init_built_in_topics_datawriters(), and init_built_in_topics_topics().
|
private |
the dead participants dead participants exist in both this and participants_
Definition at line 228 of file DCPS_IR_Domain.h.
Referenced by add_dead_participant(), dump_to_string(), and remove_dead_participants().
|
private |
Definition at line 217 of file DCPS_IR_Domain.h.
Referenced by add_participant(), add_topic_description(), add_topic_i(), dump_to_string(), find_topic(), find_topic_description(), get_id(), init_built_in_topics(), reassociate_built_in_topic_pubs(), remove_participant(), remove_topic(), and remove_topic_description().
|
private |
Actual mapping of Id values to Topic object references.
Definition at line 239 of file DCPS_IR_Domain.h.
Referenced by add_topic_i(), find_topic(), and remove_topic_id_mapping().
|
private |
Participant GUID Id generator. The remaining Entities have their values generated within the containing Participant.
Definition at line 221 of file DCPS_IR_Domain.h.
Referenced by get_next_participant_id(), and last_participant_key().
|
private |
all the participants
Definition at line 224 of file DCPS_IR_Domain.h.
Referenced by add_participant(), dump_to_string(), participant_rch(), participants(), reassociate_built_in_topic_pubs(), and remove_participant().
|
private |
all the topics
Definition at line 231 of file DCPS_IR_Domain.h.
Referenced by add_topic_description(), dump_to_string(), find_topic(), find_topic_description(), and remove_topic_description().
|
private |
Built-in Topic variables
Definition at line 252 of file DCPS_IR_Domain.h.
Referenced by init_built_in_topics_transport().
|
private |
indicates if the BuiltIn Topics are enabled
Definition at line 242 of file DCPS_IR_Domain.h.
Referenced by cleanup_built_in_topics(), dispose_participant_bit(), dispose_publication_bit(), dispose_subscription_bit(), dispose_topic_bit(), dump_to_string(), init_built_in_topics(), publish_participant_bit(), publish_publication_bit(), publish_subscription_bit(), and publish_topic_bit().