Public Member Functions | |
virtual DDS_ReturnCode_t | get_default_datawriter_qos (DDS_DataWriterQos &qos)=0 |
<<eXtension>> Copy the default DDS_DataWriterQos values into the provided DDS_DataWriterQos instance. | |
virtual DDS_ReturnCode_t | set_default_datawriter_qos (const DDS_DataWriterQos &qos)=0 |
<<eXtension>> Set the default DataWriterQos values for this DomainParticipant. | |
virtual DDS_ReturnCode_t | set_default_datawriter_qos_with_profile (const char *library_name, const char *profile_name)=0 |
<<eXtension>> Set the default DDS_DataWriterQos values for this domain participant based on the input XML QoS profile. | |
virtual DDS_ReturnCode_t | get_default_datareader_qos (DDS_DataReaderQos &qos)=0 |
<<eXtension>> Copy the default DDS_DataReaderQos values into the provided DDS_DataReaderQos instance. | |
virtual DDS_ReturnCode_t | set_default_datareader_qos (const DDS_DataReaderQos &qos)=0 |
<<eXtension>> Set the default DDS_DataReaderQos values for this domain participant. | |
virtual DDS_ReturnCode_t | set_default_datareader_qos_with_profile (const char *library_name, const char *profile_name)=0 |
<<eXtension>> Set the default DDS_DataReaderQos values for this DomainParticipant based on the input XML QoS profile. | |
virtual DDS_ReturnCode_t | get_default_flowcontroller_property (DDS_FlowControllerProperty_t &prop)=0 |
<<eXtension>> Copies the default DDS_FlowControllerProperty_t values for this domain participant into the given DDS_FlowControllerProperty_t instance. | |
virtual DDS_ReturnCode_t | set_default_flowcontroller_property (const DDS_FlowControllerProperty_t &prop)=0 |
<<eXtension>> Set the default DDS_FlowControllerProperty_t values for this domain participant. | |
virtual DDS_ReturnCode_t | register_contentfilter (const char *filter_name, const DDSContentFilter *contentfilter)=0 |
<<eXtension>> Register a content filter which can be used to create a DDSContentFilteredTopic. | |
virtual DDSContentFilter * | lookup_contentfilter (const char *filter_name)=0 |
<<eXtension>> Lookup a content filter previously registered with DDSDomainParticipant::register_contentfilter. | |
virtual DDS_ReturnCode_t | unregister_contentfilter (const char *filter_name)=0 |
<<eXtension>> Unregister a content filter previously registered with DDSDomainParticipant::register_contentfilter. | |
virtual const char * | get_default_library ()=0 |
<<eXtension>> Gets the default XML library associated with a DDSDomainParticipant. | |
virtual const char * | get_default_profile ()=0 |
<<eXtension>> Gets the default XML profile associated with a DDSDomainParticipant. | |
virtual const char * | get_default_profile_library ()=0 |
<<eXtension>> Gets the library where the default XML QoS profile is contained for a DDSDomainParticipant. | |
virtual DDS_ReturnCode_t | set_default_library (const char *library_name)=0 |
<<eXtension>> Sets the default XML library for a DDSDomainParticipant. | |
virtual DDS_ReturnCode_t | set_default_profile (const char *library_name, const char *profile_name)=0 |
<<eXtension>> Sets the default XML profile for a DDSDomainParticipant. | |
virtual DDS_ReturnCode_t | get_default_topic_qos (DDS_TopicQos &qos)=0 |
Copies the default DDS_TopicQos values for this domain participant into the given DDS_TopicQos instance. | |
virtual DDS_ReturnCode_t | set_default_topic_qos (const DDS_TopicQos &qos)=0 |
Set the default DDS_TopicQos values for this domain participant. | |
virtual DDS_ReturnCode_t | set_default_topic_qos_with_profile (const char *library_name, const char *profile_name)=0 |
<<eXtension>> Set the default DDS_TopicQos values for this domain participant based on the input XML QoS profile. | |
virtual DDS_ReturnCode_t | get_default_publisher_qos (DDS_PublisherQos &qos)=0 |
Copy the default DDS_PublisherQos values into the provided DDS_PublisherQos instance. | |
virtual DDS_ReturnCode_t | set_default_publisher_qos (const DDS_PublisherQos &qos)=0 |
Set the default DDS_PublisherQos values for this DomainParticipant. | |
virtual DDS_ReturnCode_t | set_default_publisher_qos_with_profile (const char *library_name, const char *profile_name)=0 |
<<eXtension>> Set the default DDS_PublisherQos values for this DomainParticipant based on the input XML QoS profile. | |
virtual DDS_ReturnCode_t | get_default_subscriber_qos (DDS_SubscriberQos &qos)=0 |
Copy the default DDS_SubscriberQos values into the provided DDS_SubscriberQos instance. | |
virtual DDS_ReturnCode_t | set_default_subscriber_qos (const DDS_SubscriberQos &qos)=0 |
Set the default DDS_SubscriberQos values for this Domain{articipant. | |
virtual DDS_ReturnCode_t | set_default_subscriber_qos_with_profile (const char *library_name, const char *profile_name)=0 |
<<eXtension>> Set the default DDS_SubscriberQos values for this DomainParticipant based on the input XML QoS profile. | |
virtual DDSPublisher * | create_publisher (const DDS_PublisherQos &qos, DDSPublisherListener *listener, DDS_StatusMask mask)=0 |
Creates a DDSPublisher with the desired QoS policies and attaches to it the specified DDSPublisherListener. | |
virtual DDSPublisher * | create_publisher_with_profile (const char *library_name, const char *profile_name, DDSPublisherListener *listener, DDS_StatusMask mask)=0 |
<<eXtension>> Creates a new DDSPublisher object using the DDS_PublisherQos associated with the input XML QoS profile. | |
virtual DDS_ReturnCode_t | delete_publisher (DDSPublisher *p)=0 |
Deletes an existing DDSPublisher. | |
virtual DDSSubscriber * | create_subscriber (const DDS_SubscriberQos &qos, DDSSubscriberListener *listener, DDS_StatusMask mask)=0 |
Creates a DDSSubscriber with the desired QoS policies and attaches to it the specified DDSSubscriberListener. | |
virtual DDSSubscriber * | create_subscriber_with_profile (const char *library_name, const char *profile_name, DDSSubscriberListener *listener, DDS_StatusMask mask)=0 |
<<eXtension>> Creates a new DDSSubscriber object using the DDS_PublisherQos associated with the input XML QoS profile. | |
virtual DDS_ReturnCode_t | delete_subscriber (DDSSubscriber *s)=0 |
Deletes an existing DDSSubscriber. | |
virtual DDS_ReturnCode_t | get_publishers (DDSPublisherSeq &publishers)=0 |
<<eXtension>> Allows the application to access all the publishers the participant has. | |
virtual DDS_ReturnCode_t | get_subscribers (DDSSubscriberSeq &subscribers)=0 |
<<eXtension>> Allows the application to access all the subscribers the participant has. | |
virtual DDSTopic * | create_topic (const char *topic_name, const char *type_name, const DDS_TopicQos &qos, DDSTopicListener *listener, DDS_StatusMask mask)=0 |
Creates a DDSTopic with the desired QoS policies and attaches to it the specified DDSTopicListener. | |
virtual DDSTopic * | create_topic_with_profile (const char *topic_name, const char *type_name, const char *library_name, const char *profile_name, DDSTopicListener *listener, DDS_StatusMask mask)=0 |
<<eXtension>> Creates a new DDSTopic object using the DDS_PublisherQos associated with the input XML QoS profile. | |
virtual DDS_ReturnCode_t | delete_topic (DDSTopic *topic)=0 |
Deletes a DDSTopic. | |
virtual DDSContentFilteredTopic * | create_contentfilteredtopic (const char *name, DDSTopic *related_topic, const char *filter_expression, const DDS_StringSeq &expression_parameters)=0 |
Creates a DDSContentFilteredTopic, that can be used to do content-based subscriptions. | |
virtual DDSContentFilteredTopic * | create_contentfilteredtopic_with_filter (const char *name, DDSTopic *related_topic, const char *filter_expression, const DDS_StringSeq &expression_parameters, const char *filter_name=DDS_SQLFILTER_NAME)=0 |
<<eXtension>> Creates a DDSContentFilteredTopic using the specified filter to do content-based subscriptions. | |
virtual DDS_ReturnCode_t | delete_contentfilteredtopic (DDSContentFilteredTopic *a_contentfilteredtopic)=0 |
Deletes a DDSContentFilteredTopic. | |
virtual DDSMultiTopic * | create_multitopic (const char *name, const char *type_name, const char *subscription_expression, const DDS_StringSeq &expression_parameters)=0 |
[Not supported (optional)] Creates a MultiTopic that can be used to subscribe to multiple topics and combine/filter the received data into a resulting type. | |
virtual DDS_ReturnCode_t | delete_multitopic (DDSMultiTopic *a_multitopic)=0 |
[Not supported (optional)] Deletes a DDSMultiTopic. | |
virtual DDSTopic * | find_topic (const char *topic_name, const DDS_Duration_t &timeout)=0 |
Finds an existing (or ready to exist) DDSTopic, based on its name. | |
virtual DDSTopicDescription * | lookup_topicdescription (const char *topic_name)=0 |
Looks up an existing, locally created DDSTopicDescription, based on its name. | |
virtual DDSFlowController * | create_flowcontroller (const char *name, const DDS_FlowControllerProperty_t &prop)=0 |
<<eXtension>> Creates a DDSFlowController with the desired property. | |
virtual DDS_ReturnCode_t | delete_flowcontroller (DDSFlowController *fc)=0 |
<<eXtension>> Deletes an existing DDSFlowController. | |
virtual DDSFlowController * | lookup_flowcontroller (const char *name)=0 |
<<eXtension>> Looks up an existing locally-created DDSFlowController, based on its name. | |
virtual DDSSubscriber * | get_builtin_subscriber ()=0 |
Accesses the built-in DDSSubscriber. | |
virtual DDS_ReturnCode_t | ignore_participant (const DDS_InstanceHandle_t &handle)=0 |
Instructs RTI Data Distribution Service to locally ignore a remote DDSDomainParticipant. | |
virtual DDS_ReturnCode_t | ignore_topic (const DDS_InstanceHandle_t &handle)=0 |
Instructs RTI Data Distribution Service to locally ignore a DDSTopic. | |
virtual DDS_ReturnCode_t | ignore_publication (const DDS_InstanceHandle_t &handle)=0 |
Instructs RTI Data Distribution Service to locally ignore a publication. | |
virtual DDS_ReturnCode_t | ignore_subscription (const DDS_InstanceHandle_t &handle)=0 |
Instructs RTI Data Distribution Service to locally ignore a subscription. | |
virtual DDS_DomainId_t | get_domain_id ()=0 |
Get the unique domain identifier. | |
virtual DDS_ReturnCode_t | get_current_time (DDS_Time_t ¤t_time)=0 |
Returns the current value of the time. | |
virtual DDS_ReturnCode_t | assert_liveliness ()=0 |
Manually asserts the liveliness of this DDSDomainParticipant. | |
virtual DDS_ReturnCode_t | delete_contained_entities ()=0 |
Delete all the entities that were created by means of the "create" operations on the DDSDomainParticipant. | |
virtual DDS_ReturnCode_t | get_discovered_participants (DDS_InstanceHandleSeq &participant_handles)=0 |
Returns list of discovered DDSDomainParticipant s. | |
virtual DDS_ReturnCode_t | get_discovered_participant_data (struct DDS_ParticipantBuiltinTopicData &participant_data, const DDS_InstanceHandle_t &participant_handle)=0 |
Returns DDS_ParticipantBuiltinTopicData for the specified DDSDomainParticipant . | |
virtual DDS_ReturnCode_t | get_discovered_topics (DDS_InstanceHandleSeq &topic_handles)=0 |
Returns list of discovered DDSTopic objects. | |
virtual DDS_ReturnCode_t | get_discovered_topic_data (struct DDS_TopicBuiltinTopicData &topic_data, const DDS_InstanceHandle_t &topic_handle)=0 |
Returns DDS_TopicBuiltinTopicData for the specified DDSTopic. | |
virtual DDS_Boolean | contains_entity (const DDS_InstanceHandle_t &a_handle)=0 |
Completes successfully with DDS_BOOLEAN_TRUE if the referenced DDSEntity is contained by the DDSDomainParticipant. | |
virtual DDS_ReturnCode_t | set_qos (const DDS_DomainParticipantQos &qos)=0 |
Change the QoS of this DomainParticipant. | |
virtual DDS_ReturnCode_t | set_qos_with_profile (const char *library_name, const char *profile_name)=0 |
<<eXtension>> Change the QoS of this domain participant using the input XML QoS profile. | |
virtual DDS_ReturnCode_t | get_qos (DDS_DomainParticipantQos &qos)=0 |
Get the participant QoS. | |
virtual DDS_ReturnCode_t | add_peer (const char *peer_desc_string)=0 |
<<eXtension>> Attempt to contact one or more additional peer participants. | |
virtual DDS_ReturnCode_t | remove_peer (const char *peer_desc_string)=0 |
<<eXtension>> Remove one or more peer participants from the list of peers with which this DDSDomainParticipant will try to communicate. | |
virtual DDS_ReturnCode_t | set_listener (DDSDomainParticipantListener *l, DDS_StatusMask mask=DDS_STATUS_MASK_ALL)=0 |
Sets the participant listener. | |
virtual DDSDomainParticipantListener * | get_listener ()=0 |
Get the participant listener. | |
virtual DDSPublisher * | get_implicit_publisher ()=0 |
<<eXtension>> Returns the implicit DDSPublisher. If an implicit Publisher does not already exist, this creates one. | |
virtual DDSSubscriber * | get_implicit_subscriber ()=0 |
<<eXtension>> Returns the implicit DDSSubscriber. If an implicit Subscriber does not already exist, this creates one. | |
virtual DDSDataWriter * | create_datawriter (DDSTopic *topic, const DDS_DataWriterQos &qos, DDSDataWriterListener *listener, DDS_StatusMask mask)=0 |
<<eXtension>> Creates a DDSDataWriter that will be attached and belong to the implicit DDSPublisher. | |
virtual DDSDataWriter * | create_datawriter_with_profile (DDSTopic *topic, const char *library_name, const char *profile_name, DDSDataWriterListener *listener, DDS_StatusMask mask)=0 |
<<eXtension>> Creates a DDSDataWriter using a XML QoS profile that will be attached and belong to the implicit DDSPublisher. | |
virtual DDS_ReturnCode_t | delete_datawriter (DDSDataWriter *a_datawriter)=0 |
<<eXtension>> Deletes a DDSDataWriter that belongs to the implicit DDSPublisher. | |
virtual DDSDataReader * | create_datareader (DDSTopicDescription *topic, const DDS_DataReaderQos &qos, DDSDataReaderListener *listener, DDS_StatusMask mask)=0 |
<<eXtension>> Creates a DDSDataReader that will be attached and belong to the implicit DDSSubscriber. | |
virtual DDSDataReader * | create_datareader_with_profile (DDSTopicDescription *topic, const char *library_name, const char *profile_name, DDSDataReaderListener *listener, DDS_StatusMask mask)=0 |
<<eXtension>> Creates a DDSDataReader using a XML QoS profile that will be attached and belong to the implicit DDSSubscriber. | |
virtual DDS_ReturnCode_t | delete_datareader (DDSDataReader *a_datareader)=0 |
<<eXtension>> Deletes a DDSDataReader that belongs to the implicit DDSSubscriber. |
The DomainParticipant object plays several roles:
- It acts as a container for all other DDSEntity objects.
- It acts as factory for the DDSPublisher, DDSSubscriber, DDSTopic and DDSMultiTopic DDSEntity objects.
- It represents the participation of the application on a communication plane that isolates applications running on the same set of physical computers from each other. A domain establishes a virtual network linking all applications that share the same domainId
and isolating them from applications running on different domains. In this way, several independent distributed applications can coexist in the same physical network without interfering, or even being aware of each other.
- It provides administration services in the domain, offering operations that allow the application to ignore locally any information about a given participant (ignore_participant()), publication (ignore_publication()), subscription (ignore_subscription()) or topic (ignore_topic()).
The following operations may be called even if the DDSDomainParticipant is not enabled. (Operations NOT in this list will fail with the value DDS_RETCODE_NOT_ENABLED if called on a disabled DomainParticipant).
virtual DDS_ReturnCode_t DDSDomainParticipant::get_default_datawriter_qos | ( | DDS_DataWriterQos & | qos | ) | [pure virtual] |
<<eXtension>> Copy the default DDS_DataWriterQos values into the provided DDS_DataWriterQos instance.
The retrieved qos
will match the set of values specified on the last successful call to DDSDomainParticipant::set_default_datawriter_qos, or DDSDomainParticipant::set_default_datawriter_qos_with_profile, or else, if the call was never made, the default values listed in DDS_DataWriterQos.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
qos | <<inout>> Qos to be filled up. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_datawriter_qos | ( | const DDS_DataWriterQos & | qos | ) | [pure virtual] |
<<eXtension>> Set the default DataWriterQos values for this DomainParticipant.
This set of default values will be inherited for a newly created DDSPublisher.
qos | <<in>> Default qos to be set. The special value DDS_DATAWRITER_QOS_DEFAULT may be passed as qos to indicate that the default QoS should be reset back to the initial values the factory would used if DDSDomainParticipant::set_default_datawriter_qos had never been called. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_datawriter_qos_with_profile | ( | const char * | library_name, | |
const char * | profile_name | |||
) | [pure virtual] |
<<eXtension>> Set the default DDS_DataWriterQos values for this domain participant based on the input XML QoS profile.
This set of default values will be inherited for a newly created DDSPublisher.
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_default_datareader_qos | ( | DDS_DataReaderQos & | qos | ) | [pure virtual] |
<<eXtension>> Copy the default DDS_DataReaderQos values into the provided DDS_DataReaderQos instance.
The retrieved qos
will match the set of values specified on the last successful call to DDSDomainParticipant::set_default_datareader_qos, or DDSDomainParticipant::set_default_datareader_qos_with_profile, or else, if the call was never made, the default values listed in DDS_DataReaderQos.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
qos | <<inout>> Qos to be filled up. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_datareader_qos | ( | const DDS_DataReaderQos & | qos | ) | [pure virtual] |
<<eXtension>> Set the default DDS_DataReaderQos values for this domain participant.
This set of default values will be inherited for a newly created DDSSubscriber.
qos | <<in>> Default qos to be set. The special value DDS_DATAREADER_QOS_DEFAULT may be passed as qos to indicate that the default QoS should be reset back to the initial values the factory would used if DDSDomainParticipant::set_default_datareader_qos had never been called. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_datareader_qos_with_profile | ( | const char * | library_name, | |
const char * | profile_name | |||
) | [pure virtual] |
<<eXtension>> Set the default DDS_DataReaderQos values for this DomainParticipant based on the input XML QoS profile.
This set of default values will be inherited for a newly created DDSSubscriber.
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_default_flowcontroller_property | ( | DDS_FlowControllerProperty_t & | prop | ) | [pure virtual] |
<<eXtension>> Copies the default DDS_FlowControllerProperty_t values for this domain participant into the given DDS_FlowControllerProperty_t instance.
The retrieved property
will match the set of values specified on the last successful call to DDSDomainParticipant::set_default_flowcontroller_property, or else, if the call was never made, the default values listed in DDS_FlowControllerProperty_t.
prop | <<in>> Default property to be retrieved. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_flowcontroller_property | ( | const DDS_FlowControllerProperty_t & | prop | ) | [pure virtual] |
<<eXtension>> Set the default DDS_FlowControllerProperty_t values for this domain participant.
This default value will be used for newly created DDSFlowController if DDS_FLOW_CONTROLLER_PROPERTY_DEFAULT is specified as the property
parameter when DDSDomainParticipant::create_flowcontroller is called.
qos
parameter.
prop | <<in>> Default property to be set. The special value DDS_FLOW_CONTROLLER_PROPERTY_DEFAULT may be passed as property to indicate that the default property should be reset to the default values the factory would use if DDSDomainParticipant::set_default_flowcontroller_property had never been called. |
virtual DDS_ReturnCode_t DDSDomainParticipant::register_contentfilter | ( | const char * | filter_name, | |
const DDSContentFilter * | contentfilter | |||
) | [pure virtual] |
<<eXtension>> Register a content filter which can be used to create a DDSContentFilteredTopic.
DDS specifies a SQL-like content filter for use by content filtered topics. If this filter does not meet your filtering requirements, you can rgister a custom filter.
To use a custom filter, it must be registered in the following places:
Each filter_name
can only be used to registered a content filter once with a DDSDomainParticipant.
filter_name | <<in>> Name of the filter. The name must be unique within the DDSDomainParticipant and must not exceed 255 characters. Cannot be NULL. | |
contentfilter | <<in>> Content filter to be registered. Cannot be NULL. |
virtual DDSContentFilter* DDSDomainParticipant::lookup_contentfilter | ( | const char * | filter_name | ) | [pure virtual] |
<<eXtension>> Lookup a content filter previously registered with DDSDomainParticipant::register_contentfilter.
filter_name | <<in>> Name of the filter. Cannot be NULL. |
virtual DDS_ReturnCode_t DDSDomainParticipant::unregister_contentfilter | ( | const char * | filter_name | ) | [pure virtual] |
<<eXtension>> Unregister a content filter previously registered with DDSDomainParticipant::register_contentfilter.
A filter_name
can be unregistered only if it has been previously registered to the DDSDomainParticipant with DDSDomainParticipant::register_contentfilter.
The unregistration of filter is not allowed if there are any existing DDSContentFilteredTopic objects that are using the filter. If the operation is called on a filter with existing DDSContentFilteredTopic objects attached to it, this operation will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
If there are still existing discovered DDSDataReader s with the same filter_name
and the filter's compile method of the filter have previously been called on the discovered DDSDataReader s, finalize method of the filter will be called on those discovered DDSDataReader s before the content filter is unregistered. This means filtering will now be performed on the application that is creating the DDSDataReader.
filter_name | <<in>> Name of the filter. Cannot be NULL. |
virtual const char* DDSDomainParticipant::get_default_library | ( | ) | [pure virtual] |
<<eXtension>> Gets the default XML library associated with a DDSDomainParticipant.
virtual const char* DDSDomainParticipant::get_default_profile | ( | ) | [pure virtual] |
<<eXtension>> Gets the default XML profile associated with a DDSDomainParticipant.
virtual const char* DDSDomainParticipant::get_default_profile_library | ( | ) | [pure virtual] |
<<eXtension>> Gets the library where the default XML QoS profile is contained for a DDSDomainParticipant.
The default profile library is automatically set when DDSDomainParticipant::set_default_profile is called.
This library can be different than the DDSDomainParticipant default library (see DDSDomainParticipant::get_default_library).
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_library | ( | const char * | library_name | ) | [pure virtual] |
<<eXtension>> Sets the default XML library for a DDSDomainParticipant.
This method specifies the library that will be used as the default the next time a default library is needed during a call to one of this DomainParticipant's operations.
Any API requiring a library_name as a parameter can use null to refer to the default library.
If the default library is not set, the DDSDomainParticipant inherits the default from the DDSDomainParticipantFactory (see DDSDomainParticipantFactory::set_default_library).
library_name | <<in>> Library name. If library_name is null any previous default is unset. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_profile | ( | const char * | library_name, | |
const char * | profile_name | |||
) | [pure virtual] |
<<eXtension>> Sets the default XML profile for a DDSDomainParticipant.
This method specifies the profile that will be used as the default the next time a default DomainParticipant profile is needed during a call to one of this DomainParticipant's operations. When calling a DDSDomainParticipant method that requires a profile_name
parameter, you can use NULL to refer to the default profile. (This same information applies to setting a default library.)
If the default profile is not set, the DDSDomainParticipant inherits the default from the DDSDomainParticipantFactory (see DDSDomainParticipantFactory::set_default_profile).
This method does not set the default QoS for entities created by the DDSDomainParticipant; for this functionality, use the methods set_default_<entity>_qos_with_profile (you may pass in NULL after having called set_default_profile()).
This method does not set the default QoS for newly created DomainParticipants; for this functionality, use DDSDomainParticipantFactory::set_default_participant_qos_with_profile.
library_name | <<in>> The library name containing the profile. | |
profile_name | <<in>> The profile name. If profile_name is null any previous default is unset. |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_default_topic_qos | ( | DDS_TopicQos & | qos | ) | [pure virtual] |
Copies the default DDS_TopicQos values for this domain participant into the given DDS_TopicQos instance.
The retrieved qos
will match the set of values specified on the last successful call to DDSDomainParticipant::set_default_topic_qos, or else, if the call was never made, the default values listed in DDS_TopicQos.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
qos | <<in>> Default qos to be retrieved. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_topic_qos | ( | const DDS_TopicQos & | qos | ) | [pure virtual] |
Set the default DDS_TopicQos values for this domain participant.
This default value will be used for newly created DDSTopic if DDS_TOPIC_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_topic is called.
qos
parameter.
qos | <<in>> Default qos to be set. The special value DDS_TOPIC_QOS_DEFAULT may be passed as qos to indicate that the default QoS should be reset back to the initial values the factory would used if DDSDomainParticipant::set_default_topic_qos had never been called. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_topic_qos_with_profile | ( | const char * | library_name, | |
const char * | profile_name | |||
) | [pure virtual] |
<<eXtension>> Set the default DDS_TopicQos values for this domain participant based on the input XML QoS profile.
This default value will be used for newly created DDSTopic if DDS_TOPIC_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_topic is called.
qos
parameter. library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_default_publisher_qos | ( | DDS_PublisherQos & | qos | ) | [pure virtual] |
Copy the default DDS_PublisherQos values into the provided DDS_PublisherQos instance.
The retrieved qos
will match the set of values specified on the last successful call to DDSDomainParticipant::set_default_publisher_qos, or DDSDomainParticipant::set_default_publisher_qos_with_profile, or else, if the call was never made, the default values listed in DDS_PublisherQos.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
If DDS_PUBLISHER_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_topic is called, the default value of the QoS set in the factory, equivalent to the value obtained by calling DDSDomainParticipant::get_default_publisher_qos, will be used to create the DDSPublisher.
qos | <<inout>> Qos to be filled up. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_publisher_qos | ( | const DDS_PublisherQos & | qos | ) | [pure virtual] |
Set the default DDS_PublisherQos values for this DomainParticipant.
This set of default values will be used for a newly created DDSPublisher if DDS_PUBLISHER_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_publisher is called.
qos
parameter.
qos | <<in>> Default qos to be set. The special value DDS_PUBLISHER_QOS_DEFAULT may be passed as qos to indicate that the default QoS should be reset back to the initial values the factory would used if DDSDomainParticipant::set_default_publisher_qos had never been called. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_publisher_qos_with_profile | ( | const char * | library_name, | |
const char * | profile_name | |||
) | [pure virtual] |
<<eXtension>> Set the default DDS_PublisherQos values for this DomainParticipant based on the input XML QoS profile.
This set of default values will be used for a newly created DDSPublisher if DDS_PUBLISHER_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_publisher is called.
qos
parameter. library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_default_subscriber_qos | ( | DDS_SubscriberQos & | qos | ) | [pure virtual] |
Copy the default DDS_SubscriberQos values into the provided DDS_SubscriberQos instance.
The retrieved qos
will match the set of values specified on the last successful call to DDSDomainParticipant::set_default_subscriber_qos, or DDSDomainParticipant::set_default_subscriber_qos_with_profile, or else, if the call was never made, the default values listed in DDS_SubscriberQos.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
If DDS_SUBSCRIBER_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_subscriber is called, the default value of the QoS set in the factory, equivalent to the value obtained by calling DDSDomainParticipant::get_default_subscriber_qos, will be used to create the DDSSubscriber.
qos | <<inout>> Qos to be filled up. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_subscriber_qos | ( | const DDS_SubscriberQos & | qos | ) | [pure virtual] |
Set the default DDS_SubscriberQos values for this Domain{articipant.
This set of default values will be used for a newly created DDSSubscriber if DDS_SUBSCRIBER_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_subscriber is called.
qos
parameter.
qos | <<in>> Default qos to be set. The special value DDS_SUBSCRIBER_QOS_DEFAULT may be passed as qos to indicate that the default QoS should be reset back to the initial values the factory would used if DDSDomainParticipant::set_default_subscriber_qos had never been called. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_default_subscriber_qos_with_profile | ( | const char * | library_name, | |
const char * | profile_name | |||
) | [pure virtual] |
<<eXtension>> Set the default DDS_SubscriberQos values for this DomainParticipant based on the input XML QoS profile.
This set of default values will be used for a newly created DDSSubscriber if DDS_SUBSCRIBER_QOS_DEFAULT is specified as the qos
parameter when DDSDomainParticipant::create_subscriber is called.
qos
parameter. library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). |
virtual DDSPublisher* DDSDomainParticipant::create_publisher | ( | const DDS_PublisherQos & | qos, | |
DDSPublisherListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
Creates a DDSPublisher with the desired QoS policies and attaches to it the specified DDSPublisherListener.
qos
, it is not safe to create the publisher while another thread may be simultaneously calling DDSDomainParticipant::set_default_publisher_qos.
qos | <<in>> QoS to be used for creating the new DDSPublisher. The special value DDS_PUBLISHER_QOS_DEFAULT can be used to indicate that the DDSPublisher should be created with the default DDS_PublisherQos set in the DDSDomainParticipant. | |
listener | <<in>>. Listener to be attached to the newly created DDSPublisher. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
DDS_PublisherQos for rules on consistency among QoS
DDSDomainParticipant::create_publisher_with_profile
virtual DDSPublisher* DDSDomainParticipant::create_publisher_with_profile | ( | const char * | library_name, | |
const char * | profile_name, | |||
DDSPublisherListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
<<eXtension>> Creates a new DDSPublisher object using the DDS_PublisherQos associated with the input XML QoS profile.
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). | |
listener | <<in>>. Listener to be attached to the newly created DDSPublisher. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
DDS_PublisherQos for rules on consistency among QoS
DDSDomainParticipant::create_publisher
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_publisher | ( | DDSPublisher * | p | ) | [pure virtual] |
Deletes an existing DDSPublisher.
DDSPublisher must have been created by this DDSDomainParticipant, or else it will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
p | <<in>> DDSPublisher to be deleted. |
virtual DDSSubscriber* DDSDomainParticipant::create_subscriber | ( | const DDS_SubscriberQos & | qos, | |
DDSSubscriberListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
Creates a DDSSubscriber with the desired QoS policies and attaches to it the specified DDSSubscriberListener.
qos
, it is not safe to create the subscriber while another thread may be simultaneously calling DDSDomainParticipant::set_default_subscriber_qos.
qos | <<in>> QoS to be used for creating the new DDSSubscriber. The special value DDS_SUBSCRIBER_QOS_DEFAULT can be used to indicate that the DDSSubscriber should be created with the default DDS_SubscriberQos set in the DDSDomainParticipant. | |
listener | <<in>>. Listener to be attached to the newly created DDSSubscriber. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
DDS_SubscriberQos for rules on consistency among QoS
DDSDomainParticipant::create_subscriber_with_profile
virtual DDSSubscriber* DDSDomainParticipant::create_subscriber_with_profile | ( | const char * | library_name, | |
const char * | profile_name, | |||
DDSSubscriberListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
<<eXtension>> Creates a new DDSSubscriber object using the DDS_PublisherQos associated with the input XML QoS profile.
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). | |
listener | <<in>>. Listener to be attached to the newly created DDSSubscriber. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
DDS_SubscriberQos for rules on consistency among QoS
DDSDomainParticipant::create_subscriber
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_subscriber | ( | DDSSubscriber * | s | ) | [pure virtual] |
Deletes an existing DDSSubscriber.
The DDSSubscriber must have been created by this DDSDomainParticipant, or else it will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
s | <<in>> DDSSubscriber to be deleted. |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_publishers | ( | DDSPublisherSeq & | publishers | ) | [pure virtual] |
<<eXtension>> Allows the application to access all the publishers the participant has.
If the sequence doesn't own its buffer, and its maximum is less than the total number of publishers, it will be filled up to its maximum, and fail with DDS_RETCODE_OUT_OF_RESOURCES.
publishers | <<inout>> a PublisherSeq object where the set or list of publishers will be returned |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_subscribers | ( | DDSSubscriberSeq & | subscribers | ) | [pure virtual] |
<<eXtension>> Allows the application to access all the subscribers the participant has.
If the sequence doesn't own its buffer, and its maximum is less than the total number of subscribers, it will be filled up to its maximum, and fail with DDS_RETCODE_OUT_OF_RESOURCES.
subscribers | <<inout>> a SubscriberSeq object where the set or list of subscribers will be returned |
virtual DDSTopic* DDSDomainParticipant::create_topic | ( | const char * | topic_name, | |
const char * | type_name, | |||
const DDS_TopicQos & | qos, | |||
DDSTopicListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
Creates a DDSTopic with the desired QoS policies and attaches to it the specified DDSTopicListener.
topic_name
attached to the same DDSDomainParticipant. If the application attempts this, this method will fail and return a NULL topic. The specified QoS policies must be consistent, or the operation will fail and no DDSTopic will be created.
Prior to creating a DDSTopic, the type must have been registered with RTI Data Distribution Service. This is done using the FooTypeSupport::register_type operation on a derived class of the DDSTypeSupport interface.
qos
, it is not safe to create the topic while another thread may be simultaneously calling DDSDomainParticipant::set_default_topic_qos.
topic_name | <<in>> Name for the new topic, must not exceed 255 characters. Cannot be NULL. | |
type_name | <<in>> The type to which the new DDSTopic will be bound. Cannot be NULL. | |
qos | <<in>> QoS to be used for creating the new DDSTopic. The special value DDS_TOPIC_QOS_DEFAULT can be used to indicate that the DDSTopic should be created with the default DDS_TopicQos set in the DDSDomainParticipant. | |
listener | <<in>>. Listener to be attached to the newly created DDSTopic. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
DDS_TopicQos for rules on consistency among QoS
DDSDomainParticipant::create_topic_with_profile
virtual DDSTopic* DDSDomainParticipant::create_topic_with_profile | ( | const char * | topic_name, | |
const char * | type_name, | |||
const char * | library_name, | |||
const char * | profile_name, | |||
DDSTopicListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
<<eXtension>> Creates a new DDSTopic object using the DDS_PublisherQos associated with the input XML QoS profile.
topic_name
attached to the same DDSDomainParticipant. If the application attempts this, this method will fail and return a NULL topic. The DDS_TopicQos in the input profile must be consistent, or the operation will fail and no DDSTopic will be created.
Prior to creating a DDSTopic, the type must have been registered with RTI Data Distribution Service. This is done using the FooTypeSupport::register_type operation on a derived class of the DDSTypeSupport interface.
topic_name | <<in>> Name for the new topic, must not exceed 255 characters. Cannot be NULL. | |
type_name | <<in>> The type to which the new DDSTopic will be bound. Cannot be NULL. | |
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). | |
listener | <<in>>. Listener to be attached to the newly created DDSTopic. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
DDS_TopicQos for rules on consistency among QoS
DDSDomainParticipant::create_topic
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_topic | ( | DDSTopic * | topic | ) | [pure virtual] |
Deletes a DDSTopic.
Make sure no objects are using the topic. More specifically, there must be no existing DDSDataReader, DDSDataWriter, DDSContentFilteredTopic, or DDSMultiTopic objects belonging to the same DDSDomainParticipant that are using the DDSTopic. If delete_topic is called on a DDSTopic with any of these existing objects attached to it, it will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
virtual DDSContentFilteredTopic* DDSDomainParticipant::create_contentfilteredtopic | ( | const char * | name, | |
DDSTopic * | related_topic, | |||
const char * | filter_expression, | |||
const DDS_StringSeq & | expression_parameters | |||
) | [pure virtual] |
Creates a DDSContentFilteredTopic, that can be used to do content-based subscriptions.
The DDSContentFilteredTopic only relates to samples published under that DDSTopic, filtered according to their content. The filtering is done by means of evaluating a logical expression that involves the values of some of the data-fields in the sample. The logical expression derived from the filter_expression
and expression_parameters
arguments.
Queries and Filters Syntax describes the syntax of filter_expression
and expression_parameters
.
topic_name
attached to the same DDSDomainParticipant. If the application attempts this, this method will fail and returns NULL.
If related_topic
does not belong to this DDSDomainParticipant, this operation returns NULL.
This function will create a content filter using the builtin SQL filter which implements a superset of the DDS specification. This filter requires that all IDL types have been compiled with typecodes. If this precondition is not met, this operation returns NULL. Do not use rtiddsgen's -notypecode option if you want to use the builtin SQL filter.
name | <<in>> Name for the new content filtered topic, must not exceed 255 characters. Cannot be NULL. | |
related_topic | <<in>> DDSTopic to be filtered. Cannot be NULL. | |
filter_expression | <<in>> Cannot be NULL | |
expression_parameters | <<in>> An empty sequence must be used if the filter expression does not contain any parameters. Length of sequence cannot be greater than 100. |
virtual DDSContentFilteredTopic* DDSDomainParticipant::create_contentfilteredtopic_with_filter | ( | const char * | name, | |
DDSTopic * | related_topic, | |||
const char * | filter_expression, | |||
const DDS_StringSeq & | expression_parameters, | |||
const char * | filter_name = DDS_SQLFILTER_NAME | |||
) | [pure virtual] |
<<eXtension>> Creates a DDSContentFilteredTopic using the specified filter to do content-based subscriptions.
name | <<in>> Name for the new content filtered topic. Cannot exceed 255 characters. Cannot be NULL. | |
related_topic | <<in>> DDSTopic to be filtered. Cannot be NULL. | |
filter_expression | <<in>> Cannot be NULL. | |
expression_parameters | <<in>> . An empty sequence must be used if the filter expression does not contain any parameters. Length of the sequence cannot be greater than 100. | |
filter_name | <<in>> Name of content filter to use. Must previously have been registered with DDSDomainParticipant::register_contentfilter on the same DDSDomainParticipant. Cannot be NULL. |
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_contentfilteredtopic | ( | DDSContentFilteredTopic * | a_contentfilteredtopic | ) | [pure virtual] |
Deletes a DDSContentFilteredTopic.
The DDSContentFilteredTopic must be created by this DDSDomainParticipant, or else this operation will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
a_contentfilteredtopic | <<in>> |
virtual DDSMultiTopic* DDSDomainParticipant::create_multitopic | ( | const char * | name, | |
const char * | type_name, | |||
const char * | subscription_expression, | |||
const DDS_StringSeq & | expression_parameters | |||
) | [pure virtual] |
[Not supported (optional)] Creates a MultiTopic that can be used to subscribe to multiple topics and combine/filter the received data into a resulting type.
The resulting type is specified by the type_name
argument. The list of topics and the logic used to combine, filter, and rearrange the information from each DDSTopic are specified using the subscription_expression
and expression_parameters
arguments.
Queries and Filters Syntax describes the syntax of subscription_expression
and expression_parameters
.
name
attached to the same DDSDomainParticipant. If the application attempts this, this method will fail and return NULL. Prior to creating a DDSMultiTopic, the type must have been registered with RTI Data Distribution Service. This is done using the FooTypeSupport::register_type operation on a derived class of the DDSTypeSupport interface. Otherwise, this method will return NULL.
name | <<in>> Name of the newly create DDSMultiTopic. Cannot be NULL. | |
type_name | <<in>> Cannot be NULL. | |
subscription_expression | <<in>> Cannot be NULL. | |
expression_parameters | <<in>> |
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_multitopic | ( | DDSMultiTopic * | a_multitopic | ) | [pure virtual] |
[Not supported (optional)] Deletes a DDSMultiTopic.
The DDSMultiTopic must be created by this DDSDomainParticipant, or else this operation will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
a_multitopic | <<in>> |
virtual DDSTopic* DDSDomainParticipant::find_topic | ( | const char * | topic_name, | |
const DDS_Duration_t & | timeout | |||
) | [pure virtual] |
Finds an existing (or ready to exist) DDSTopic, based on its name.
This call can be used to block for a specified duration to wait for the DDSTopic to be created.
If the requested DDSTopic already exists, it is returned. Otherwise, find_topic() waits until another thread creates it or else returns when the specified timeout occurs.
find_topic() is useful when multiple threads are concurrently creating and looking up topics. In that case, one thread can call find_topic() and, if another thread has not yet created the topic being looked up, it can wait for some period of time for it to do so. In almost all other cases, it is more straightforward to call DDSDomainParticipant::lookup_topicdescription.
The DDSDomainParticipant must already be enabled.
Note: Each DDSTopic obtained by DDSDomainParticipant::find_topic must also be deleted by means of DDSDomainParticipant::delete_topic. If DDSTopic is obtained multiple times by means of DDSDomainParticipant::find_topic or DDSDomainParticipant::create_topic, it must also be deleted that same number of times using DDSDomainParticipant::delete_topic.
topic_name | <<in>> Name of the DDSTopic to search for. Cannot be NULL. | |
timeout | <<in>> The time to wait if the DDSTopic does not exist already. |
virtual DDSTopicDescription* DDSDomainParticipant::lookup_topicdescription | ( | const char * | topic_name | ) | [pure virtual] |
Looks up an existing, locally created DDSTopicDescription, based on its name.
DDSTopicDescription is the base class for DDSTopic, DDSMultiTopic and DDSContentFilteredTopic. So you can narrow the DDSTopicDescription returned from this operation to a DDSTopic or DDSContentFilteredTopic as appropriate.
Unlike DDSDomainParticipant::find_topic, which logically returns a new DDSTopic object that must be independently deleted, this operation returns a reference to the original local object.
The DDSDomainParticipant does not have to be enabled when you call lookup_topicdescription().
The returned topic may be either enabled or disabled.
topic_name | <<in>> Name of DDSTopicDescription to search for. This string must be no more than 255 characters; it cannot be NULL. |
virtual DDSFlowController* DDSDomainParticipant::create_flowcontroller | ( | const char * | name, | |
const DDS_FlowControllerProperty_t & | prop | |||
) | [pure virtual] |
<<eXtension>> Creates a DDSFlowController with the desired property.
The created DDSFlowController is associated with a DDSDataWriter via DDS_PublishModeQosPolicy::flow_controller_name. A single DDSFlowController may service multiple DDSDataWriter instances, even if they belong to a different DDSPublisher. The property
determines how the DDSFlowController shapes the network traffic.
property
must be consistent, or the operation will fail and no DDSFlowController will be created. property
, it is not safe to create the flow controller while another thread may be simultaneously calling DDSDomainParticipant::set_default_flowcontroller_property or trying to lookup that flow controller with DDSDomainParticipant::lookup_flowcontroller.
name | <<in>> name of the DDSFlowController to create. A DDSDataWriter is associated with a DDSFlowController by name. Limited to 255 characters. | |
prop | <<in>> property to be used for creating the new DDSFlowController. The special value DDS_FLOW_CONTROLLER_PROPERTY_DEFAULT can be used to indicate that the DDSFlowController should be created with the default DDS_FlowControllerProperty_t set in the DDSDomainParticipant. |
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_flowcontroller | ( | DDSFlowController * | fc | ) | [pure virtual] |
<<eXtension>> Deletes an existing DDSFlowController.
The DDSFlowController must have been created by this DDSDomainParticipant, or else it will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
fc | <<in>> The DDSFlowController to be deleted. |
virtual DDSFlowController* DDSDomainParticipant::lookup_flowcontroller | ( | const char * | name | ) | [pure virtual] |
<<eXtension>> Looks up an existing locally-created DDSFlowController, based on its name.
Looks up a previously created DDSFlowController, including the built-in ones. Once a DDSFlowController has been deleted, subsequent lookups will fail.
name | <<in>> Name of DDSFlowController to search for. Limited to 255 characters. Cannot be NULL. |
virtual DDSSubscriber* DDSDomainParticipant::get_builtin_subscriber | ( | ) | [pure virtual] |
Accesses the built-in DDSSubscriber.
Each DDSDomainParticipant contains several built-in DDSTopic objects as well as corresponding DDSDataReader objects to access them. All of these DDSDataReader objects belong to a single built-in DDSSubscriber.
The built-in Topics are used to communicate information about other DDSDomainParticipant, DDSTopic, DDSDataReader, and DDSDataWriter objects.
The built-in subscriber is created when this operation is called for the first time. The built-in subscriber is deleted automatically when the DDSDomainParticipant is deleted.
virtual DDS_ReturnCode_t DDSDomainParticipant::ignore_participant | ( | const DDS_InstanceHandle_t & | handle | ) | [pure virtual] |
Instructs RTI Data Distribution Service to locally ignore a remote DDSDomainParticipant.
From the time of this call onwards, RTI Data Distribution Service will locally behave as if the remote participant did not exist. This means it will ignore any topic, publication, or subscription that originates on that DDSDomainParticipant.
There is no way to reverse this operation.
This operation can be used in conjunction with the discovery of remote participants offered by means of the DDS_ParticipantBuiltinTopicData to provide access control.
Application data can be associated with a DDSDomainParticipant by means of the USER_DATA policy. This application data is propagated as a field in the built-in topic and can be used by an application to implement its own access control policy.
The DDSDomainParticipant to ignore is identified by the handle
argument. This handle
is the one that appears in the DDS_SampleInfo retrieved when reading the data-samples available for the built-in DDSDataReader to the DDSDomainParticipant
topic. The built-in DDSDataReader is read with the same FooDataReader::read and FooDataReader::take operations used for any DDSDataReader.
handle | <<in>> DDS_InstanceHandle_t of the DDSDomainParticipant to be ignored. |
virtual DDS_ReturnCode_t DDSDomainParticipant::ignore_topic | ( | const DDS_InstanceHandle_t & | handle | ) | [pure virtual] |
Instructs RTI Data Distribution Service to locally ignore a DDSTopic.
This means it will locally ignore any publication, or subscription to the DDSTopic.
There is no way to reverse this operation.
This operation can be used to save local resources when the application knows that it will never publish or subscribe to data under certain topics.
The DDSTopic to ignore is identified by the handle
argument. This is the handle of a DDSTopic that appears in the DDS_SampleInfo retrieved when reading data samples from the built-in DDSDataReader for the DDSTopic.
virtual DDS_ReturnCode_t DDSDomainParticipant::ignore_publication | ( | const DDS_InstanceHandle_t & | handle | ) | [pure virtual] |
Instructs RTI Data Distribution Service to locally ignore a publication.
A publication is defined by the association of a topic name, user data, and partition set on the DDSPublisher (see DDS_PublicationBuiltinTopicData). After this call, any data written by that publication's DDSDataWriter will be ignored.
This operation can be used to ignore local and remote DataWriters.
The publication (DataWriter) to ignore is identified by the handle
argument.
handle
can be obtained from the DDS_SampleInfo retrieved when reading data samples from the built-in DDSDataReader for the publication topic. handle
can be obtained by calling DDSEntity::get_instance_handle for the local DataWriter.
handle | <<in>> Handle of the DDSDataWriter to be ignored. |
virtual DDS_ReturnCode_t DDSDomainParticipant::ignore_subscription | ( | const DDS_InstanceHandle_t & | handle | ) | [pure virtual] |
Instructs RTI Data Distribution Service to locally ignore a subscription.
A subscription is defined by the association of a topic name, user data, and partition set on the DDSSubscriber (see DDS_SubscriptionBuiltinTopicData). After this call, any data received related to that subscription's DDSDataReader will be ignored.
This operation can be used to ignore local and remote DataReaders.
The subscription to ignore is identified by the handle
argument.
handle
can be obtained from the DDS_SampleInfo retrieved when reading data samples from the built-in DDSDataReader for the subscription topic. handle
can be obtained by calling DDSEntity::get_instance_handle for the local DataReader.
handle | <<in>> Handle of the DDSDataReader to be ignored. |
virtual DDS_DomainId_t DDSDomainParticipant::get_domain_id | ( | ) | [pure virtual] |
Get the unique domain identifier.
This operation retrieves the domain_id
used to create the DDSDomainParticipant. The domain_id
identifies the DDS domain to which the DDSDomainParticipant belongs. Each DDS domain represents a separate data 'communication plane' isolated from other domains.
domainId
that was used to create the domain virtual DDS_ReturnCode_t DDSDomainParticipant::get_current_time | ( | DDS_Time_t & | current_time | ) | [pure virtual] |
Returns the current value of the time.
The current value of the time that RTI Data Distribution Service uses to time-stamp DDSDataWriter and to set the reception-timestamp for the data updates that it receives.
current_time | <<inout>> Current time to be filled up. |
virtual DDS_ReturnCode_t DDSDomainParticipant::assert_liveliness | ( | ) | [pure virtual] |
Manually asserts the liveliness of this DDSDomainParticipant.
This is used in combination with the DDS_LivelinessQosPolicy to indicate to RTI Data Distribution Service that the entity remains active.
You need to use this operation if the DDSDomainParticipant conatins DDSDataWriter entities with the DDS_LivelinessQosPolicy::kind set to DDS_MANUAL_BY_PARTICIPANT_LIVELINESS_QOS and it only affects the liveliness of those DDSDataWriter entities. Otherwise, it has no effect.
Note: writing data via the FooDataWriter::write or FooDataWriter::write_w_timestamp operation asserts liveliness on the DDSDataWriter itself and its DDSDomainParticipant. Consequently the use of assert_liveliness() is only needed if the application is not writing data regularly.
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_contained_entities | ( | ) | [pure virtual] |
Delete all the entities that were created by means of the "create" operations on the DDSDomainParticipant.
This operation deletes all contained DDSPublisher (including an implicit Publisher, if one exists), DDSSubscriber (including implicit subscriber), DDSTopic, DDSContentFilteredTopic, and DDSMultiTopic objects.
Prior to deleting each contained entity, this operation will recursively call the corresponding delete_contained_entities operation on each contained entity (if applicable). This pattern is applied recursively. In this manner the operation delete_contained_entities() on the DDSDomainParticipant will end up deleting all the entities recursively contained in the DDSDomainParticipant, that is also the DDSDataWriter, DDSDataReader, as well as the DDSQueryCondition and DDSReadCondition objects belonging to the contained DDSDataReader.
The operation will fail with DDS_RETCODE_PRECONDITION_NOT_MET if any of the contained entities is in a state where it cannot be deleted.
If delete_contained_entities() completes successfully, the application may delete the DDSDomainParticipant knowing that it has no contained entities.
virtual DDS_ReturnCode_t DDSDomainParticipant::get_discovered_participants | ( | DDS_InstanceHandleSeq & | participant_handles | ) | [pure virtual] |
Returns list of discovered DDSDomainParticipant s.
This operation retrieves the list of DDSDomainParticipant s that have been discovered in the domain and that the application has not indicated should be "ignored" by means of the DDSDomainParticipant::ignore_participant operation.
participant_handles | <<inout>> DDSInstanceHandleSeq to be filled with handles of the discovered DDSDomainParticipant s |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_discovered_participant_data | ( | struct DDS_ParticipantBuiltinTopicData & | participant_data, | |
const DDS_InstanceHandle_t & | participant_handle | |||
) | [pure virtual] |
Returns DDS_ParticipantBuiltinTopicData for the specified DDSDomainParticipant .
This operation retrieves information on a DDSDomainParticipant that has been discovered on the network. The participant must be in the same domain as the participant on which this operation is invoked and must not have been "ignored" by means of the DDSDomainParticipant::ignore_participant operation.
The participant_handle
must correspond to such a DomainParticipant. Otherwise, the operation will fail with PRECONDITION_NOT_MET.
Use the operation DDSDomainParticipant::get_discovered_participants to find the DDSDomainParticipant s that are currently discovered.
Note: This operation does not retrieve the DDS_ParticipantBuiltinTopicData::property. This information is available through DDSDataReaderListener::on_data_available() (if a reader listener is installed on the DDSParticipantBuiltinTopicDataDataReader).
participant_data | <<inout>> DDS_ParticipantBuiltinTopicData to be filled with the specified DDSDomainParticipant 's data. | |
participant_handle | <<in>> DDS_InstanceHandle_t of DDSDomainParticipant. |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_discovered_topics | ( | DDS_InstanceHandleSeq & | topic_handles | ) | [pure virtual] |
Returns list of discovered DDSTopic objects.
This operation retrieves the list of DDSTopic s that have been discovered in the domain and that the application has not indicated should be "ignored" by means of the DDSDomainParticipant::ignore_topic operation.
topic_handles | <<inout>> DDSInstanceHandleSeq to be filled with handles of the discovered DDSTopic objects |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_discovered_topic_data | ( | struct DDS_TopicBuiltinTopicData & | topic_data, | |
const DDS_InstanceHandle_t & | topic_handle | |||
) | [pure virtual] |
Returns DDS_TopicBuiltinTopicData for the specified DDSTopic.
This operation retrieves information on a DDSTopic that has been discovered by the local Participant and must not have been "ignored" by means of the DDSDomainParticipant::ignore_topic operation.
The topic_handle
must correspond to such a topic. Otherwise, the operation will fail with DDS_RETCODE_PRECONDITION_NOT_MET.
This call is not supported for remote topics. If a remote topic_handle
is used, the operation will fail with DDS_RETCODE_UNSUPPORTED.
Use the operation DDSDomainParticipant::get_discovered_topics to find the topics that are currently discovered.
topic_data | <<inout>> DDS_TopicBuiltinTopicData to be filled with the specified DDSTopic's data. | |
topic_handle | <<in>> DDS_InstanceHandle_t of DDSTopic. |
virtual DDS_Boolean DDSDomainParticipant::contains_entity | ( | const DDS_InstanceHandle_t & | a_handle | ) | [pure virtual] |
Completes successfully with DDS_BOOLEAN_TRUE if the referenced DDSEntity is contained by the DDSDomainParticipant.
This operation checks whether or not the given a_handle
represents an DDSEntity that was created from the DDSDomainParticipant. The containment applies recursively. That is, it applies both to entities (DDSTopicDescription, DDSPublisher, or DDSSubscriber) created directly using the DDSDomainParticipant as well as entities created using a contained DDSPublisher, or DDSSubscriber as the factory, and so forth.
The instance
handle for an DDSEntity may be obtained from built-in topic data, from various statuses, or from the operation DDSEntity::get_instance_handle.
a_handle | <<in>> DDS_InstanceHandle_t of the DDSEntity to be checked. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_qos | ( | const DDS_DomainParticipantQos & | qos | ) | [pure virtual] |
Change the QoS of this DomainParticipant.
The DDS_DomainParticipantQos::user_data and DDS_DomainParticipantQos::entity_factory can be changed. The other policies are immutable.
qos | <<in>> Set of policies to be applied to DDSDomainParticipant. Policies must be consistent. Immutable policies cannot be changed after DDSDomainParticipant is enabled. The special value DDS_PARTICIPANT_QOS_DEFAULT can be used to indicate that the QoS of the DDSDomainParticipant should be changed to match the current default DDS_DomainParticipantQos set in the DDSDomainParticipantFactory. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_qos_with_profile | ( | const char * | library_name, | |
const char * | profile_name | |||
) | [pure virtual] |
<<eXtension>> Change the QoS of this domain participant using the input XML QoS profile.
The DDS_DomainParticipantQos::user_data and DDS_DomainParticipantQos::entity_factory can be changed. The other policies are immutable.
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipantFactory::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipantFactory::set_default_profile). |
virtual DDS_ReturnCode_t DDSDomainParticipant::get_qos | ( | DDS_DomainParticipantQos & | qos | ) | [pure virtual] |
Get the participant QoS.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
qos | <<inout>> QoS to be filled up. |
virtual DDS_ReturnCode_t DDSDomainParticipant::add_peer | ( | const char * | peer_desc_string | ) | [pure virtual] |
<<eXtension>> Attempt to contact one or more additional peer participants.
Add the given peer description to the list of peers with which this DDSDomainParticipant will try to communicate.
This method may be called at any time after this DDSDomainParticipant has been created (before or after it has been enabled).
If this method is called after DDSEntity::enable, an attempt will be made to contact the new peer(s) immediately.
If this method is called before the DomainParticipant is enabled, the peer description will simply be added to the list that was populated by DDS_DiscoveryQosPolicy::initial_peers; the first attempted contact will take place after this DDSDomainParticipant is enabled.
Adding a peer description with this method does not guarantee that any peer(s) discovered as a result will exactly correspond to those described:
To remove specific peer locators, you may use DDSDomainParticipant::remove_peer. If a peer is removed, the add_peer operation will add it back to the list of peers.
To stop communicating with a peer DDSDomainParticipant that has been discovered, use DDSDomainParticipant::ignore_participant.
Adding a peer description with this method has no effect on the DDS_DiscoveryQosPolicy::initial_peers that may be subsequently retrieved with DDSDomainParticipant::get_qos() (because DDS_DiscoveryQosPolicy is immutable).
peer_desc_string | <<in>> New peer descriptor to be added. The format is specified in Peer Descriptor Format. |
virtual DDS_ReturnCode_t DDSDomainParticipant::remove_peer | ( | const char * | peer_desc_string | ) | [pure virtual] |
<<eXtension>> Remove one or more peer participants from the list of peers with which this DDSDomainParticipant will try to communicate.
This method may be called any time after this DDSDomainParticipant has been enabled
Calling this method has the following effects:
Removing a peer description with this method has no effect on the DDS_DiscoveryQosPolicy::initial_peers that may be subsequently retrieved with DDSDomainParticipant::get_qos() (because DDS_DiscoveryQosPolicy is immutable).
peer_desc_string | <<in>> Peer descriptor to be removed. The format is specified in Peer Descriptor Format. |
virtual DDS_ReturnCode_t DDSDomainParticipant::set_listener | ( | DDSDomainParticipantListener * | l, | |
DDS_StatusMask | mask = DDS_STATUS_MASK_ALL | |||
) | [pure virtual] |
Sets the participant listener.
l | <<in>> Listener to be installed on entity. | |
mask | <<in>> Changes of communication status to be invoked on the listener. |
virtual DDSDomainParticipantListener* DDSDomainParticipant::get_listener | ( | ) | [pure virtual] |
Get the participant listener.
virtual DDSPublisher* DDSDomainParticipant::get_implicit_publisher | ( | ) | [pure virtual] |
<<eXtension>> Returns the implicit DDSPublisher. If an implicit Publisher does not already exist, this creates one.
There can only be one implicit Publisher per DomainParticipant.
The implicit Publisher is created with DDS_PUBLISHER_QOS_DEFAULT and no Listener.
This implicit Publisher will be deleted automatically when the following methods are called: DDSDomainParticipant::delete_contained_entities, or DDSDomainParticipant::delete_publisher with the implicit publisher as a parameter. Additionally, when a DomainParticipant is deleted, if there are no attached DataWriters that belong to the implicit Publisher, the implicit Publisher will be implicitly deleted.
virtual DDSSubscriber* DDSDomainParticipant::get_implicit_subscriber | ( | ) | [pure virtual] |
<<eXtension>> Returns the implicit DDSSubscriber. If an implicit Subscriber does not already exist, this creates one.
There can only be one implicit Subscriber per DomainParticipant.
The implicit Subscriber is created with DDS_SUBSCRIBER_QOS_DEFAULT and no Listener.
This implicit Subscriber will be deleted automatically when the following methods are called: DDSDomainParticipant::delete_contained_entities, or DDSDomainParticipant::delete_subscriber with the subscriber as a parameter. Additionally, when a DomainParticipant is deleted, if there are no attached DataReaders that belong to the implicit Subscriber, the implicit Subscriber will be implicitly deleted.
virtual DDSDataWriter* DDSDomainParticipant::create_datawriter | ( | DDSTopic * | topic, | |
const DDS_DataWriterQos & | qos, | |||
DDSDataWriterListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
<<eXtension>> Creates a DDSDataWriter that will be attached and belong to the implicit DDSPublisher.
qos
parameter, it is not safe to create the DataWriter while another thread may be simultaneously calling DDSDomainParticipant::set_default_datawriter_qos.
topic | <<in>> The DDSTopic that the DDSDataWriter will be associated with. | |
qos | <<in>> QoS to be used for creating the new DDSDataWriter. The special value DDS_DATAWRITER_QOS_DEFAULT can be used to indicate that the DDSDataWriter should be created with the default DDS_DataWriterQos set in the implicit DDSPublisher. The special value DDS_DATAWRITER_QOS_USE_TOPIC_QOS can be used to indicate that the DDSDataWriter should be created with the combination of the default DDS_DataWriterQos set on the DDSPublisher and the DDS_TopicQos of the DDSTopic. | |
listener | <<in>> The listener of the DDSDataWriter. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
Specifying QoS on entities for information on setting QoS before entity creation
DDS_DataWriterQos for rules on consistency among QoS
DDS_DATAWRITER_QOS_USE_TOPIC_QOS
DDSDomainParticipant::create_datawriter_with_profile
DDSDomainParticipant::get_default_datawriter_qos
virtual DDSDataWriter* DDSDomainParticipant::create_datawriter_with_profile | ( | DDSTopic * | topic, | |
const char * | library_name, | |||
const char * | profile_name, | |||
DDSDataWriterListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
<<eXtension>> Creates a DDSDataWriter using a XML QoS profile that will be attached and belong to the implicit DDSPublisher.
topic | <<in>> The DDSTopic that the DDSDataWriter will be associated with. | |
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). | |
listener | <<in>> The listener of the DDSDataWriter. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
Specifying QoS on entities for information on setting QoS before entity creation
DDS_DataWriterQos for rules on consistency among QoS
DDSDomainParticipant::create_datawriter
DDSDomainParticipant::get_default_datawriter_qos
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_datawriter | ( | DDSDataWriter * | a_datawriter | ) | [pure virtual] |
<<eXtension>> Deletes a DDSDataWriter that belongs to the implicit DDSPublisher.
The deletion of the DDSDataWriter will automatically unregister all instances. Depending on the settings of the WRITER_DATA_LIFECYCLE QosPolicy, the deletion of the DDSDataWriter may also dispose all instances.
a_datawriter | <<in>> The DDSDataWriter to be deleted. |
virtual DDSDataReader* DDSDomainParticipant::create_datareader | ( | DDSTopicDescription * | topic, | |
const DDS_DataReaderQos & | qos, | |||
DDSDataReaderListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
<<eXtension>> Creates a DDSDataReader that will be attached and belong to the implicit DDSSubscriber.
qos
parameter, it is not safe to create the datareader while another thread may be simultaneously calling DDSDomainParticipant::set_default_datareader_qos.
topic | <<in>> The DDSTopicDescription that the DDSDataReader will be associated with. | |
qos | <<in>> The qos of the DDSDataReader. The special value DDS_DATAREADER_QOS_DEFAULT can be used to indicate that the DDSDataReader should be created with the default DDS_DataReaderQos set in the implicit DDSSubscriber. If DDSTopicDescription is of type DDSTopic or DDSContentFilteredTopic, the special value DDS_DATAREADER_QOS_USE_TOPIC_QOS can be used to indicate that the DDSDataReader should be created with the combination of the default DDS_DataReaderQos set on the implicit DDSSubscriber and the DDS_TopicQos (in the case of a DDSContentFilteredTopic, the DDS_TopicQos of the related DDSTopic). if DDS_DATAREADER_QOS_USE_TOPIC_QOS is used, topic cannot be a DDSMultiTopic. | |
listener | <<in>> The listener of the DDSDataReader. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
Specifying QoS on entities for information on setting QoS before entity creation
DDS_DataReaderQos for rules on consistency among QoS
DDSDomainParticipant::create_datareader_with_profile
DDSDomainParticipant::get_default_datareader_qos
virtual DDSDataReader* DDSDomainParticipant::create_datareader_with_profile | ( | DDSTopicDescription * | topic, | |
const char * | library_name, | |||
const char * | profile_name, | |||
DDSDataReaderListener * | listener, | |||
DDS_StatusMask | mask | |||
) | [pure virtual] |
<<eXtension>> Creates a DDSDataReader using a XML QoS profile that will be attached and belong to the implicit DDSSubscriber.
topic | <<in>> The DDSTopicDescription that the DDSDataReader will be associated with. | |
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDSDomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDSDomainParticipant::set_default_profile). | |
listener | <<in>> The listener of the DDSDataReader. | |
mask | <<in>>. Changes of communication status to be invoked on the listener. |
Specifying QoS on entities for information on setting QoS before entity creation
DDS_DataReaderQos for rules on consistency among QoS
DDSDomainParticipant::create_datareader
DDSDomainParticipant::get_default_datareader_qos
virtual DDS_ReturnCode_t DDSDomainParticipant::delete_datareader | ( | DDSDataReader * | a_datareader | ) | [pure virtual] |
<<eXtension>> Deletes a DDSDataReader that belongs to the implicit DDSSubscriber.
a_datareader | <<in>> The DDSDataReader to be deleted. |