#include <DDS_Base_Connector_T.h>
Public Member Functions | |
DDS_Base_Connector_T (void) | |
virtual | ~DDS_Base_Connector_T (void) |
virtual void | set_session_context (::Components::SessionContext_ptr ctx) |
domain_id | |
Accessors for domain_id | |
virtual ::DDS::DomainId_t | domain_id (void) |
virtual void | domain_id (::DDS::DomainId_t domain_id) |
qos_profile | |
Accessors for qos_profile | |
virtual char * | qos_profile (void) |
virtual void | qos_profile (const char *qos_profile) |
virtual void | configuration_complete (void) |
virtual void | ccm_remove (void) |
virtual void | ccm_activate (void) |
virtual void | ccm_passivate (void) |
Protected Member Functions | |
ACE_Reactor * | reactor (void) |
Get the reactor associated with this component. | |
void | init_domain (::DDS::DomainParticipant_ptr &participant) |
void | register_type (::DDS::DomainParticipant_ptr participant, const char *typesupport_name) |
void | init_topic (::DDS::DomainParticipant_ptr participant,::DDS::Topic_ptr &topic, const char *topic_name, const char *typesupport_name) |
void | init_publisher (::DDS::DomainParticipant_ptr participant,::DDS::Publisher_ptr &publisher) |
void | init_subscriber (::DDS::DomainParticipant_ptr participant,::DDS::Subscriber_ptr &subscriber) |
void | activate_topic (ACE_Reactor *reactor,::DDS::Topic_ptr topic,::DDS::TopicListener_ptr &listener) |
void | activate_publisher (ACE_Reactor *reactor,::DDS::Publisher_ptr publisher,::DDS::PublisherListener_ptr &publisher_listener) |
void | activate_subscriber (ACE_Reactor *reactor,::DDS::Subscriber_ptr subscriber,::DDS::SubscriberListener_ptr &subscriber_listener) |
void | passivate_topic (::DDS::Topic_ptr topic,::DDS::TopicListener_ptr topic_listener) |
void | passivate_publisher (::DDS::Publisher_ptr publisher,::DDS::PublisherListener_ptr publisher_listener) |
void | passivate_subscriber (::DDS::Subscriber_ptr subscriber,::DDS::SubscriberListener_ptr subscriber_listener) |
void | remove_topic (::DDS::DomainParticipant_ptr participant,::DDS::Topic_ptr topic) |
void | remove_publisher (::DDS::DomainParticipant_ptr participant,::DDS::Publisher_ptr publisher) |
void | remove_subscriber (::DDS::DomainParticipant_ptr participant,::DDS::Subscriber_ptr subscriber) |
void | remove_domain (::DDS::DomainParticipant_ptr participant) |
void | unregister_type (::DDS::DomainParticipant_ptr participant, const char *typesupport_name) |
Protected Attributes | |
::CIAO::DDS4CCM::Logger_Service * | dlf_ |
::DDS::DomainParticipant_var | domain_participant_ |
CCM_TYPE::context_type::_var_type | context_ |
DomainParticipantFactory | participant_factory_ |
::DDS::DomainId_t | domain_id_ |
::CORBA::String_var | qos_profile_ |
configuration_complete_ | |
Indicates whether configuration_complete has been invoked. Once invoked, changing a connectors attribute is not allowed anymore. If the user still wants to set an attribute, a NonChangeable exception is thrown. | |
bool | configuration_complete_ |
char * | library_name_ |
char * | profile_name_ |
Private Types | |
typedef ::CIAO::NDDS::DDS_DomainParticipantFactory_i | DomainParticipantFactory |
typedef ::CIAO::NDDS::DDS_DomainParticipantFactory_i DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::DomainParticipantFactory [private] |
DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::DDS_Base_Connector_T | ( | void | ) |
DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::~DDS_Base_Connector_T | ( | void | ) | [virtual] |
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::activate_publisher | ( | ACE_Reactor * | reactor, |
::DDS::Publisher_ptr | publisher, | ||
::DDS::PublisherListener_ptr & | publisher_listener | ||
) | [protected] |
Activation of a connector.
Helper methods to create the DDS listeners and attach them to the DDS Entities. This'll will activate the DDS Entities.
Activation
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::activate_subscriber | ( | ACE_Reactor * | reactor, |
::DDS::Subscriber_ptr | subscriber, | ||
::DDS::SubscriberListener_ptr & | subscriber_listener | ||
) | [protected] |
Activation of a connector.
Helper methods to create the DDS listeners and attach them to the DDS Entities. This'll will activate the DDS Entities.
Activation
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::activate_topic | ( | ACE_Reactor * | reactor, |
::DDS::Topic_ptr | topic, | ||
::DDS::TopicListener_ptr & | listener | ||
) | [protected] |
Activation of a connector.
Helper methods to create the DDS listeners and attach them to the DDS Entities. This'll will activate the DDS Entities.
Activation
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::ccm_activate | ( | void | ) | [virtual] |
Interface methods for the Deployment and Configuration Framework
Reimplemented in DDS_Event_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >, and DDS_State_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >.
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::ccm_passivate | ( | void | ) | [virtual] |
Interface methods for the Deployment and Configuration Framework
Reimplemented in DDS_Event_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >, DDS_State_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >, and DDS_TopicBase_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >.
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::ccm_remove | ( | void | ) | [virtual] |
Interface methods for the Deployment and Configuration Framework
Reimplemented in DDS_Event_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >, DDS_State_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >, and DDS_TopicBase_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >.
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::configuration_complete | ( | void | ) | [virtual] |
Interface methods for the Deployment and Configuration Framework
Reimplemented in DDS_Event_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >, DDS_State_Connector_T< CCM_TYPE, DDS_TYPE, FIXED, SEQ_TYPE, FIXED_SEQ_TYPE >, and DDS_TopicBase_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >.
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::domain_id | ( | ::DDS::DomainId_t | domain_id ) | [virtual] |
DDS::DomainId_t DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::domain_id | ( | void | ) |
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::init_domain | ( | ::DDS::DomainParticipant_ptr & | participant ) | [protected] |
Initialization of a connector.
When one wants to use his own DDS::DomainParticipant, DDS::Topic, DDS::Subscriber and/or DDS::Publisher, these helper methods allows to create these, independant of the DDS vendor.
See $CIAO_ROOT/connectors/dds4ccm/tests/MultiTopic/Connector/MultiTopic_Connector_T.cpp on how to use these methods.
These methods will create the DDS4CCM Entities (and therefor the DDS entities in DDS itself), like DomainParticipant, Topic, Subscriber and Publisher
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::init_publisher | ( | ::DDS::DomainParticipant_ptr | participant, |
::DDS::Publisher_ptr & | publisher | ||
) | [protected] |
Initialization of a connector.
When one wants to use his own DDS::DomainParticipant, DDS::Topic, DDS::Subscriber and/or DDS::Publisher, these helper methods allows to create these, independant of the DDS vendor.
See $CIAO_ROOT/connectors/dds4ccm/tests/MultiTopic/Connector/MultiTopic_Connector_T.cpp on how to use these methods.
These methods will create the DDS4CCM Entities (and therefor the DDS entities in DDS itself), like DomainParticipant, Topic, Subscriber and Publisher
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::init_subscriber | ( | ::DDS::DomainParticipant_ptr | participant, |
::DDS::Subscriber_ptr & | subscriber | ||
) | [protected] |
Initialization of a connector.
When one wants to use his own DDS::DomainParticipant, DDS::Topic, DDS::Subscriber and/or DDS::Publisher, these helper methods allows to create these, independant of the DDS vendor.
See $CIAO_ROOT/connectors/dds4ccm/tests/MultiTopic/Connector/MultiTopic_Connector_T.cpp on how to use these methods.
These methods will create the DDS4CCM Entities (and therefor the DDS entities in DDS itself), like DomainParticipant, Topic, Subscriber and Publisher
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::init_topic | ( | ::DDS::DomainParticipant_ptr | participant, |
::DDS::Topic_ptr & | topic, | ||
const char * | topic_name, | ||
const char * | typesupport_name | ||
) | [protected] |
Initialization
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::passivate_publisher | ( | ::DDS::Publisher_ptr | publisher, |
::DDS::PublisherListener_ptr | publisher_listener | ||
) | [protected] |
Passivation of a connector.
Helper methods to detach the DDS listeners from the DDS Entities. This'll passivate the DDS Entities.
In order to allow a thread safe and memory leak free passivation, one should use a temporary _var variable and assign this by using _retn () in the calling methods.
For example:
DDS::TopicListener_var tmp = this->topic_listener_._retn (); if (!CORBA::is_nil (tmp.in ())) this->passivate_topi (this->topic_.in (), tmp.in ());
Where topic_listener_ and topic_ are _var class members of a derived, user defined class.
Again, see $CIAO_ROOT/connectors/dds4ccm/tests/MultiTopic/Connector/MultiTopic_Connector_T.cpp on how to passivate a connector.
Passivation
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::passivate_subscriber | ( | ::DDS::Subscriber_ptr | subscriber, |
::DDS::SubscriberListener_ptr | subscriber_listener | ||
) | [protected] |
Passivation of a connector.
Helper methods to detach the DDS listeners from the DDS Entities. This'll passivate the DDS Entities.
In order to allow a thread safe and memory leak free passivation, one should use a temporary _var variable and assign this by using _retn () in the calling methods.
For example:
DDS::TopicListener_var tmp = this->topic_listener_._retn (); if (!CORBA::is_nil (tmp.in ())) this->passivate_topi (this->topic_.in (), tmp.in ());
Where topic_listener_ and topic_ are _var class members of a derived, user defined class.
Again, see $CIAO_ROOT/connectors/dds4ccm/tests/MultiTopic/Connector/MultiTopic_Connector_T.cpp on how to passivate a connector.
Passivation
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::passivate_topic | ( | ::DDS::Topic_ptr | topic, |
::DDS::TopicListener_ptr | topic_listener | ||
) | [protected] |
Passivation of a connector.
Helper methods to detach the DDS listeners from the DDS Entities. This'll passivate the DDS Entities.
In order to allow a thread safe and memory leak free passivation, one should use a temporary _var variable and assign this by using _retn () in the calling methods.
For example:
DDS::TopicListener_var tmp = this->topic_listener_._retn (); if (!CORBA::is_nil (tmp.in ())) this->passivate_topi (this->topic_.in (), tmp.in ());
Where topic_listener_ and topic_ are _var class members of a derived, user defined class.
Again, see $CIAO_ROOT/connectors/dds4ccm/tests/MultiTopic/Connector/MultiTopic_Connector_T.cpp on how to passivate a connector.
Passivation
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::qos_profile | ( | const char * | qos_profile ) | [virtual] |
char * DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::qos_profile | ( | void | ) | [virtual] |
ACE_Reactor * DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::reactor | ( | void | ) | [protected] |
Get the reactor associated with this component.
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::register_type | ( | ::DDS::DomainParticipant_ptr | participant, |
const char * | typesupport_name | ||
) | [protected] |
Type registration
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::remove_domain | ( | ::DDS::DomainParticipant_ptr | participant ) | [protected] |
Removal of a connector.
Helper methods to remove the DDS Entities from memory.
Again, one should use a temporary _var variable and _retn () in order to remove the DDS Entities in a thread safe and memory leak free manner. See 'Passivation of a connector' in this file.
Removal
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::remove_publisher | ( | ::DDS::DomainParticipant_ptr | participant, |
::DDS::Publisher_ptr | publisher | ||
) | [protected] |
Removal of a connector.
Helper methods to remove the DDS Entities from memory.
Again, one should use a temporary _var variable and _retn () in order to remove the DDS Entities in a thread safe and memory leak free manner. See 'Passivation of a connector' in this file.
Removal
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::remove_subscriber | ( | ::DDS::DomainParticipant_ptr | participant, |
::DDS::Subscriber_ptr | subscriber | ||
) | [protected] |
Removal of a connector.
Helper methods to remove the DDS Entities from memory.
Again, one should use a temporary _var variable and _retn () in order to remove the DDS Entities in a thread safe and memory leak free manner. See 'Passivation of a connector' in this file.
Removal
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::remove_topic | ( | ::DDS::DomainParticipant_ptr | participant, |
::DDS::Topic_ptr | topic | ||
) | [protected] |
Removal of a connector.
Helper methods to remove the DDS Entities from memory.
Again, one should use a temporary _var variable and _retn () in order to remove the DDS Entities in a thread safe and memory leak free manner. See 'Passivation of a connector' in this file.
Removal
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::set_session_context | ( | ::Components::SessionContext_ptr | ctx ) | [virtual] |
void DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::unregister_type | ( | ::DDS::DomainParticipant_ptr | participant, |
const char * | typesupport_name | ||
) | [protected] |
Unregister type
bool DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::configuration_complete_ [protected] |
Result of splitting qos_profile into to different names.
CCM_TYPE::context_type::_var_type DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::context_ [protected] |
Context of the connector. Used to make connection to the user component like the interface to the data listeners.
::CIAO::DDS4CCM::Logger_Service* DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::dlf_ [protected] |
::DDS::DomainId_t DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::domain_id_ [protected] |
Attribute of DDS4CCM Base
::DDS::DomainParticipant_var DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::domain_participant_ [protected] |
char* DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::library_name_ [protected] |
Result of splitting qos_profile into to different names.
DomainParticipantFactory DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::participant_factory_ [protected] |
DomainParticipantFactory. Administration of Domain Participants
char* DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::profile_name_ [protected] |
Result of splitting qos_profile into to different names.
::CORBA::String_var DDS_Base_Connector_T< CCM_TYPE, DDS_TYPE, SEQ_TYPE >::qos_profile_ [protected] |
Attribute of DDS4CCM Base