| 
    OpenDDS
    Snapshot(2023/03/03-19:27)
    
   | 
 
Representative of a Topic Description. More...
#include <DCPS_IR_Topic_Description.h>


Private Attributes | |
| ACE_CString | name_ | 
| ACE_CString | dataTypeName_ | 
| DCPS_IR_Domain * | domain_ | 
| DCPS_IR_Subscription_Set | subscriptionRefs_ | 
| DCPS_IR_Topic_Set | topics_ | 
Additional Inherited Members | |
  Protected Member Functions inherited from OpenDDS::DCPS::EnableContainerSupportedUniquePtr< DCPS_IR_Topic_Description > | |
| EnableContainerSupportedUniquePtr () | |
| void | _add_ref () | 
| void | _remove_ref () | 
| long | ref_count () const | 
Representative of a Topic Description.
Definition at line 43 of file DCPS_IR_Topic_Description.h.
| OPENDDS_BEGIN_VERSIONED_NAMESPACE_DECL DCPS_IR_Topic_Description::DCPS_IR_Topic_Description | ( | DCPS_IR_Domain * | domain, | 
| const char * | name, | ||
| const char * | dataTypeName | ||
| ) | 
Definition at line 25 of file DCPS_IR_Topic_Description.cpp.
| DCPS_IR_Topic_Description::~DCPS_IR_Topic_Description | ( | ) | 
Definition at line 34 of file DCPS_IR_Topic_Description.cpp.
| int DCPS_IR_Topic_Description::add_subscription_reference | ( | DCPS_IR_Subscription * | subscription, | 
| bool | associate = true  | 
        ||
| ) | 
Adds the subscription to the list of subscriptions Tries to associate with existing publications if successfully added 'associate' switch toggles association attempt. Returns 0 if added, 1 if already exists, -1 other failure
Definition at line 38 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_TEXT(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::DCPS_debug_level, domain_, DCPS_IR_Subscription::get_id(), ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::insert(), LM_DEBUG, LM_ERROR, name_, DCPS_IR_Domain::publish_subscription_bit(), subscriptionRefs_, and try_associate_subscription().
Referenced by DCPS_IR_Topic::add_subscription_reference().
| int DCPS_IR_Topic_Description::add_topic | ( | DCPS_IR_Topic * | topic | ) | 
Add a topic Takes ownership of memory pointed to by topic Returns 0 if added, 1 if already exists, -1 other failure
Definition at line 116 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_TEXT(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::DCPS_debug_level, DCPS_IR_Topic::get_id(), ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::insert(), LM_DEBUG, LM_ERROR, LM_WARNING, name_, and topics_.
Referenced by DCPS_IR_Domain::add_topic_i().
| void DCPS_IR_Topic_Description::associate | ( | DCPS_IR_Publication * | publication, | 
| DCPS_IR_Subscription * | subscription | ||
| ) | 
Associate the publication and subscription.
Definition at line 339 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_TEXT(), DCPS_IR_Subscription::add_associated_publication(), DCPS_IR_Publication::add_associated_subscription(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::DCPS_debug_level, DCPS_IR_Publication::get_id(), DCPS_IR_Subscription::get_id(), LM_DEBUG, LM_INFO, and name_.
Referenced by try_associate().
| std::string DCPS_IR_Topic_Description::dump_to_string | ( | const std::string & | prefix, | 
| int | depth | ||
| ) | const | 
Definition at line 419 of file DCPS_IR_Topic_Description.cpp.
References ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::begin(), ACE_String_Base< char >::c_str(), dataTypeName_, ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::end(), name_, OPENDDS_END_VERSIONED_NAMESPACE_DECL, subscriptionRefs_, and topics_.
| const char * DCPS_IR_Topic_Description::get_dataTypeName | ( | ) | const | 
Definition at line 408 of file DCPS_IR_Topic_Description.cpp.
References ACE_String_Base< char >::c_str(), and dataTypeName_.
Referenced by DCPS_IR_Domain::add_topic_description(), TAO_DDS_DCPSInfo_i::find_topic(), DCPS_IR_Domain::publish_publication_bit(), DCPS_IR_Domain::publish_subscription_bit(), DCPS_IR_Domain::publish_topic_bit(), and DCPS_IR_Domain::remove_topic().
| DCPS_IR_Topic * DCPS_IR_Topic_Description::get_first_topic | ( | ) | 
Gets the first topic in the topic list.
Definition at line 186 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_TEXT(), ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::begin(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::DCPS_debug_level, DCPS_IR_Topic::get_id(), LM_DEBUG, name_, ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::size(), and topics_.
| const char * DCPS_IR_Topic_Description::get_name | ( | void | ) | const | 
Definition at line 403 of file DCPS_IR_Topic_Description.cpp.
References ACE_String_Base< char >::c_str(), and name_.
Referenced by DCPS_IR_Domain::add_topic_description(), DCPS_IR_Domain::publish_publication_bit(), DCPS_IR_Domain::publish_subscription_bit(), DCPS_IR_Domain::publish_topic_bit(), DCPS_IR_Domain::remove_topic(), and DCPS_IR_Domain::remove_topic_description().
| CORBA::ULong DCPS_IR_Topic_Description::get_number_topics | ( | ) | const | 
Returns the number of topics.
Definition at line 413 of file DCPS_IR_Topic_Description.cpp.
References ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::size(), and topics_.
Referenced by DCPS_IR_Domain::remove_topic().
| void DCPS_IR_Topic_Description::reevaluate_associations | ( | DCPS_IR_Publication * | publication | ) | 
Re-evaluate the association between the provided publication and the subscriptions it maintains.
Definition at line 389 of file DCPS_IR_Topic_Description.cpp.
References ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::begin(), ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::end(), DCPS_IR_Subscription::reevaluate_association(), DCPS_IR_Publication::reevaluate_association(), and subscriptionRefs_.
Referenced by DCPS_IR_Publication::set_qos(), and DCPS_IR_Subscription::set_qos().
| void DCPS_IR_Topic_Description::reevaluate_associations | ( | DCPS_IR_Subscription * | subscription | ) | 
Re-evaluate the association between the provided subscription and the publications in all its maintained topics.
Definition at line 374 of file DCPS_IR_Topic_Description.cpp.
References ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::begin(), ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::end(), DCPS_IR_Topic::reevaluate_associations(), and topics_.
| int DCPS_IR_Topic_Description::remove_subscription_reference | ( | DCPS_IR_Subscription * | subscription | ) | 
Removes the subscription from the list of subscriptions Returns 0 if successful
Definition at line 90 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_TEXT(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::DCPS_debug_level, DCPS_IR_Subscription::get_id(), LM_DEBUG, LM_ERROR, name_, ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::remove(), and subscriptionRefs_.
Referenced by DCPS_IR_Topic::remove_subscription_reference().
| int DCPS_IR_Topic_Description::remove_topic | ( | DCPS_IR_Topic * | topic | ) | 
Removes the topic from the list of topics Gives ownership of the memory pointed to by topic to the caller Returns 0 if successful
Definition at line 160 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_TEXT(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::DCPS_debug_level, DCPS_IR_Topic::get_id(), LM_DEBUG, LM_ERROR, name_, ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::remove(), and topics_.
Referenced by DCPS_IR_Domain::add_topic_i(), and DCPS_IR_Domain::remove_topic().
| bool DCPS_IR_Topic_Description::try_associate | ( | DCPS_IR_Publication * | publication, | 
| DCPS_IR_Subscription * | subscription | ||
| ) | 
Checks to see if the publication and subscription can be associated.
Definition at line 274 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_TEXT(), associate(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::compatibleQOS(), OpenDDS::DCPS::DCPS_debug_level, DCPS_IR_Subscription::get_datareader_qos(), DCPS_IR_Publication::get_datawriter_qos(), DCPS_IR_Publication::get_id(), DCPS_IR_Subscription::get_id(), DCPS_IR_Publication::get_incompatibleQosStatus(), DCPS_IR_Subscription::get_incompatibleQosStatus(), DCPS_IR_Publication::get_participant_id(), DCPS_IR_Subscription::get_participant_id(), DCPS_IR_Publication::get_publisher_qos(), DCPS_IR_Subscription::get_subscriber_qos(), DCPS_IR_Publication::get_topic_id(), DCPS_IR_Subscription::get_topic_id(), DCPS_IR_Publication::get_transportLocatorSeq(), DCPS_IR_Subscription::get_transportLocatorSeq(), DCPS_IR_Subscription::is_publication_ignored(), DCPS_IR_Publication::is_subscription_ignored(), LM_DEBUG, and name_.
Referenced by DCPS_IR_Subscription::reevaluate_association(), DCPS_IR_Publication::reevaluate_association(), DCPS_IR_Topic::try_associate(), and try_associate_publication().
| void DCPS_IR_Topic_Description::try_associate_publication | ( | DCPS_IR_Publication * | publication | ) | 
Tries to associate the publication will each of the subscriptions in the subscription list
Definition at line 207 of file DCPS_IR_Topic_Description.cpp.
References ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::begin(), OpenDDS::DCPS::IncompatibleQosStatus::count_since_last_send, ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::end(), DCPS_IR_Publication::get_incompatibleQosStatus(), DCPS_IR_Subscription::get_incompatibleQosStatus(), subscriptionRefs_, try_associate(), DCPS_IR_Publication::update_incompatible_qos(), and DCPS_IR_Subscription::update_incompatible_qos().
Referenced by DCPS_IR_Topic::add_publication_reference(), and DCPS_IR_Topic::reassociate_all_publications().
| void DCPS_IR_Topic_Description::try_associate_subscription | ( | DCPS_IR_Subscription * | subscription | ) | 
Tries to associate the subscription will each of the publications in each topic in the topic list
Definition at line 237 of file DCPS_IR_Topic_Description.cpp.
References ACE_DEBUG, ACE_TEXT(), ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::begin(), ACE_String_Base< char >::c_str(), OpenDDS::DCPS::DCPS_debug_level, ACE_Unbounded_Set_Ex< T, ACE_Unbounded_Set_Default_Comparator< T > >::end(), DCPS_IR_Subscription::get_id(), DCPS_IR_Subscription::get_incompatibleQosStatus(), LM_DEBUG, name_, topics_, OpenDDS::DCPS::IncompatibleQosStatus::total_count, DCPS_IR_Topic::try_associate(), and DCPS_IR_Subscription::update_incompatible_qos().
Referenced by add_subscription_reference().
      
  | 
  private | 
Definition at line 113 of file DCPS_IR_Topic_Description.h.
Referenced by dump_to_string(), and get_dataTypeName().
      
  | 
  private | 
Definition at line 114 of file DCPS_IR_Topic_Description.h.
Referenced by add_subscription_reference().
      
  | 
  private | 
Definition at line 112 of file DCPS_IR_Topic_Description.h.
Referenced by add_subscription_reference(), add_topic(), associate(), dump_to_string(), get_first_topic(), get_name(), remove_subscription_reference(), remove_topic(), try_associate(), and try_associate_subscription().
      
  | 
  private | 
Definition at line 116 of file DCPS_IR_Topic_Description.h.
Referenced by add_subscription_reference(), dump_to_string(), reevaluate_associations(), remove_subscription_reference(), and try_associate_publication().
      
  | 
  private | 
Definition at line 117 of file DCPS_IR_Topic_Description.h.
Referenced by add_topic(), dump_to_string(), get_first_topic(), get_number_topics(), reevaluate_associations(), remove_topic(), and try_associate_subscription().
 1.8.13