| Fast DDS Version 3.3.0 Fast DDS

Loading...
Searching...
No Matches
DomainParticipant Class Reference
eProsima Fast DDS API Reference » DDS Public API

Class DomainParticipant used to group Publishers and Subscribers into a single working unit. More...

`#include <DomainParticipant.hpp>`

Inheritance diagram for DomainParticipant:
[legend]

## Public Member Functions

virtual | ~DomainParticipant ()
| Destructor.
FASTDDS_EXPORTED_API ReturnCode_t | get_qos (DomainParticipantQos &qos) const
| This operation returns the value of the DomainParticipant QoS policies.
FASTDDS_EXPORTED_API const DomainParticipantQos & | get_qos () const
| This operation returns the value of the DomainParticipant QoS policies.
FASTDDS_EXPORTED_API ReturnCode_t | set_qos (const DomainParticipantQos &qos) const
| This operation sets the value of the DomainParticipant QoS policies.
FASTDDS_EXPORTED_API const DomainParticipantListener * | get_listener () const
| Allows accessing the DomainParticipantListener.
FASTDDS_EXPORTED_API ReturnCode_t | set_listener (DomainParticipantListener *listener)
| Modifies the DomainParticipantListener, sets the mask to StatusMask::all().
FASTDDS_EXPORTED_API ReturnCode_t | set_listener (DomainParticipantListener *listener, const std::chrono::seconds timeout)
| Modifies the DomainParticipantListener, sets the mask to StatusMask::all().
FASTDDS_EXPORTED_API ReturnCode_t | set_listener (DomainParticipantListener *listener, const StatusMask &mask)
| Modifies the DomainParticipantListener.
FASTDDS_EXPORTED_API ReturnCode_t | set_listener (DomainParticipantListener *listener, const StatusMask &mask, const std::chrono::seconds timeout)
| Modifies the DomainParticipantListener.
FASTDDS_EXPORTED_API ReturnCode_t | enable () override
| This operation enables the DomainParticipant.
FASTDDS_EXPORTED_API Publisher * | create_publisher (const PublisherQos &qos, PublisherListener *listener=nullptr, const StatusMask &mask=StatusMask::all())
| Create a Publisher in this Participant.
FASTDDS_EXPORTED_API Publisher * | create_publisher_with_profile (const std::string &profile_name, PublisherListener *listener=nullptr, const StatusMask &mask=StatusMask::all())
| Create a Publisher in this Participant.
FASTDDS_EXPORTED_API ReturnCode_t | delete_publisher (const Publisher *publisher)
| Deletes an existing Publisher.
FASTDDS_EXPORTED_API Subscriber * | create_subscriber (const SubscriberQos &qos, SubscriberListener *listener=nullptr, const StatusMask &mask=StatusMask::all())
| Create a Subscriber in this Participant.
FASTDDS_EXPORTED_API Subscriber * | create_subscriber_with_profile (const std::string &profile_name, SubscriberListener *listener=nullptr, const StatusMask &mask=StatusMask::all())
| Create a Subscriber in this Participant.
FASTDDS_EXPORTED_API ReturnCode_t | delete_subscriber (const Subscriber *subscriber)
| Deletes an existing Subscriber.
FASTDDS_EXPORTED_API Topic * | create_topic (const std::string &topic_name, const std::string &type_name, const TopicQos &qos, TopicListener *listener=nullptr, const StatusMask &mask=StatusMask::all())
| Create a Topic in this Participant.
FASTDDS_EXPORTED_API Topic * | create_topic_with_profile (const std::string &topic_name, const std::string &type_name, const std::string &profile_name, TopicListener *listener=nullptr, const StatusMask &mask=StatusMask::all())
| Create a Topic in this Participant.
FASTDDS_EXPORTED_API ReturnCode_t | delete_topic (const Topic *topic)
| Deletes an existing Topic.
FASTDDS_EXPORTED_API ContentFilteredTopic * | create_contentfilteredtopic (const std::string &name, Topic *related_topic, const std::string &filter_expression, const std::vector< std::string > &expression_parameters)
| Create a ContentFilteredTopic in this Participant.
FASTDDS_EXPORTED_API ContentFilteredTopic * | create_contentfilteredtopic (const std::string &name, Topic *related_topic, const std::string &filter_expression, const std::vector< std::string > &expression_parameters, const char *filter_class_name)
| Create a ContentFilteredTopic in this Participant using a custom filter.
FASTDDS_EXPORTED_API ReturnCode_t | delete_contentfilteredtopic (const ContentFilteredTopic *a_contentfilteredtopic)
| Deletes an existing ContentFilteredTopic.
FASTDDS_EXPORTED_API MultiTopic * | create_multitopic (const std::string &name, const std::string &type_name, const std::string &subscription_expression, const std::vector< std::string > &expression_parameters)
| Create a MultiTopic in this Participant.
FASTDDS_EXPORTED_API ReturnCode_t | delete_multitopic (const MultiTopic *a_multitopic)
| Deletes an existing MultiTopic.
FASTDDS_EXPORTED_API Topic * | find_topic (const std::string &topic_name, const fastdds::dds::Duration_t &timeout)
| Gives access to an existing (or ready to exist) enabled Topic.
FASTDDS_EXPORTED_API rpc::Service * | create_service (const std::string &service_name, const std::string &service_type_name)
| Create a RPC service.
FASTDDS_EXPORTED_API rpc::Service * | find_service (const std::string &service_name) const
| Find a RPC service by name.
FASTDDS_EXPORTED_API ReturnCode_t | delete_service (const rpc::Service *service)
| Delete a registered RPC service.
FASTDDS_EXPORTED_API rpc::Requester * | create_service_requester (rpc::Service *service, const RequesterQos &requester_qos)
| Create a RPC Requester in a given Service.
FASTDDS_EXPORTED_API ReturnCode_t | delete_service_requester (const std::string &service_name, rpc::Requester *requester)
| Deletes an existing RPC Requester.
FASTDDS_EXPORTED_API rpc::Replier * | create_service_replier (rpc::Service *service, const ReplierQos &replier_qos)
| Create a RPC Replier in a given Service.
FASTDDS_EXPORTED_API ReturnCode_t | delete_service_replier (const std::string &service_name, rpc::Replier *replier)
| Deletes an existing RPC Replier.
FASTDDS_EXPORTED_API TopicDescription * | lookup_topicdescription (const std::string &topic_name) const
| Looks up an existing, locally created TopicDescription, based on its name.
FASTDDS_EXPORTED_API const Subscriber * | get_builtin_subscriber () const
| Allows access to the builtin Subscriber.
FASTDDS_EXPORTED_API ReturnCode_t | ignore_participant (const InstanceHandle_t &handle)
| Locally ignore a remote domain participant.
FASTDDS_EXPORTED_API ReturnCode_t | ignore_topic (const InstanceHandle_t &handle)
| Locally ignore a topic.
FASTDDS_EXPORTED_API ReturnCode_t | ignore_publication (const InstanceHandle_t &handle)
| Locally ignore a remote datawriter.
FASTDDS_EXPORTED_API ReturnCode_t | ignore_subscription (const InstanceHandle_t &handle)
| Locally ignore a remote datareader.
FASTDDS_EXPORTED_API DomainId_t | get_domain_id () const
| This operation retrieves the domain_id used to create the DomainParticipant.
FASTDDS_EXPORTED_API ReturnCode_t | delete_contained_entities ()
| Deletes all the entities that were created by means of the “create” methods.
FASTDDS_EXPORTED_API ReturnCode_t | assert_liveliness ()
| This operation manually asserts the liveliness of the DomainParticipant.
FASTDDS_EXPORTED_API ReturnCode_t | set_default_publisher_qos (const PublisherQos &qos)
| This operation sets a default value of the Publisher QoS policies which will be used for newly created Publisher entities in the case where the QoS policies are defaulted in the create_publisher operation.
FASTDDS_EXPORTED_API const PublisherQos & | get_default_publisher_qos () const
| This operation retrieves the default value of the Publisher QoS, that is, the QoS policies which will be used for newly created Publisher entities in the case where the QoS policies are defaulted in the create_publisher operation.
FASTDDS_EXPORTED_API ReturnCode_t | get_default_publisher_qos (PublisherQos &qos) const
| This operation retrieves the default value of the Publisher QoS, that is, the QoS policies which will be used for newly created Publisher entities in the case where the QoS policies are defaulted in the create_publisher operation.
FASTDDS_EXPORTED_API ReturnCode_t | get_publisher_qos_from_profile (const std::string &profile_name, PublisherQos &qos) const
| Fills the PublisherQos with the values of the XML profile.
FASTDDS_EXPORTED_API ReturnCode_t | get_publisher_qos_from_xml (const std::string &xml, PublisherQos &qos) const
| Fills the PublisherQos with the first publisher profile found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_publisher_qos_from_xml (const std::string &xml, PublisherQos &qos, const std::string &profile_name) const
| Fills the PublisherQos with the publisher profile with `profile_name` to be found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_default_publisher_qos_from_xml (const std::string &xml, PublisherQos &qos) const
| Fills the PublisherQos with the default publisher profile found in the provided XML (if there is).
FASTDDS_EXPORTED_API ReturnCode_t | set_default_subscriber_qos (const SubscriberQos &qos)
| This operation sets a default value of the Subscriber QoS policies that will be used for newly created Subscriber entities in the case where the QoS policies are defaulted in the create_subscriber operation.
FASTDDS_EXPORTED_API const SubscriberQos & | get_default_subscriber_qos () const
| This operation retrieves the default value of the Subscriber QoS, that is, the QoS policies which will be used for newly created Subscriber entities in the case where the QoS policies are defaulted in the create_subscriber operation.
FASTDDS_EXPORTED_API ReturnCode_t | get_default_subscriber_qos (SubscriberQos &qos) const
| This operation retrieves the default value of the Subscriber QoS, that is, the QoS policies which will be used for newly created Subscriber entities in the case where the QoS policies are defaulted in the create_subscriber operation.
FASTDDS_EXPORTED_API ReturnCode_t | get_subscriber_qos_from_profile (const std::string &profile_name, SubscriberQos &qos) const
| Fills the SubscriberQos with the values of the XML profile.
FASTDDS_EXPORTED_API ReturnCode_t | get_subscriber_qos_from_xml (const std::string &xml, SubscriberQos &qos) const
| Fills the SubscriberQos with the first subscriber profile found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_subscriber_qos_from_xml (const std::string &xml, SubscriberQos &qos, const std::string &profile_name) const
| Fills the SubscriberQos with the subscriber profile with `profile_name` to be found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_default_subscriber_qos_from_xml (const std::string &xml, SubscriberQos &qos) const
| Fills the SubscriberQos with the default subscriber profile found in the provided XML (if there is).
FASTDDS_EXPORTED_API ReturnCode_t | set_default_topic_qos (const TopicQos &qos)
| This operation sets a default value of the Topic QoS policies which will be used for newly created Topic entities in the case where the QoS policies are defaulted in the create_topic operation.
FASTDDS_EXPORTED_API const TopicQos & | get_default_topic_qos () const
| This operation retrieves the default value of the Topic QoS, that is, the QoS policies that will be used for newly created Topic entities in the case where the QoS policies are defaulted in the create_topic operation.
FASTDDS_EXPORTED_API ReturnCode_t | get_default_topic_qos (TopicQos &qos) const
| This operation retrieves the default value of the Topic QoS, that is, the QoS policies that will be used for newly created Topic entities in the case where the QoS policies are defaulted in the create_topic operation.
FASTDDS_EXPORTED_API ReturnCode_t | get_topic_qos_from_profile (const std::string &profile_name, TopicQos &qos) const
| Fills the TopicQos with the values of the XML profile.
FASTDDS_EXPORTED_API ReturnCode_t | get_topic_qos_from_profile (const std::string &profile_name, TopicQos &qos, std::string &topic_name, std::string &topic_data_type) const
| Fills the TopicQos with the values of the XML profile, and also its corresponding topic and data type names (if specified).
FASTDDS_EXPORTED_API ReturnCode_t | get_topic_qos_from_xml (const std::string &xml, TopicQos &qos) const
| Fills the TopicQos with the first topic profile found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_topic_qos_from_xml (const std::string &xml, TopicQos &qos, std::string &topic_name, std::string &topic_data_type) const
| Fills the TopicQos with the first topic profile found in the provided XML, and also its corresponding topic and data type names (if specified).
FASTDDS_EXPORTED_API ReturnCode_t | get_topic_qos_from_xml (const std::string &xml, TopicQos &qos, const std::string &profile_name) const
| Fills the TopicQos with the topic profile with `profile_name` to be found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_topic_qos_from_xml (const std::string &xml, TopicQos &qos, std::string &topic_name, std::string &topic_data_type, const std::string &profile_name) const
| Fills the TopicQos with the topic profile with `profile_name` to be found in the provided XML, and also its corresponding topic and data type names (if specified).
FASTDDS_EXPORTED_API ReturnCode_t | get_default_topic_qos_from_xml (const std::string &xml, TopicQos &qos) const
| Fills the TopicQos with the default topic profile found in the provided XML (if there is).
FASTDDS_EXPORTED_API ReturnCode_t | get_default_topic_qos_from_xml (const std::string &xml, TopicQos &qos, std::string &topic_name, std::string &topic_data_type) const
| Fills the TopicQos with the default topic profile found in the provided XML (if there is), and also its corresponding topic and data type names (if specified).
FASTDDS_EXPORTED_API ReturnCode_t | get_replier_qos_from_profile (const std::string &profile_name, ReplierQos &qos) const
| Fills the ReplierQos with the values of the XML profile.
FASTDDS_EXPORTED_API ReturnCode_t | get_replier_qos_from_xml (const std::string &xml, ReplierQos &qos) const
| Fills the ReplierQos with the first replier profile found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_replier_qos_from_xml (const std::string &xml, ReplierQos &qos, const std::string &profile_name) const
| Fills the ReplierQos with the replier profile with `profile_name` to be found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_default_replier_qos_from_xml (const std::string &xml, ReplierQos &qos) const
| Fills the ReplierQos with the default replier profile found in the provided XML (if there is).
FASTDDS_EXPORTED_API ReturnCode_t | get_requester_qos_from_profile (const std::string &profile_name, RequesterQos &qos) const
| Fills the RequesterQos with the values of the XML profile.
FASTDDS_EXPORTED_API ReturnCode_t | get_requester_qos_from_xml (const std::string &xml, RequesterQos &qos) const
| Fills the RequesterQos with the first requester profile found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_requester_qos_from_xml (const std::string &xml, RequesterQos &qos, const std::string &profile_name) const
| Fills the RequesterQos with the requester profile with `profile_name` to be found in the provided XML.
FASTDDS_EXPORTED_API ReturnCode_t | get_default_requester_qos_from_xml (const std::string &xml, RequesterQos &qos) const
| Fills the RequesterQos with the default requester profile found in the provided XML (if there is).
FASTDDS_EXPORTED_API ReturnCode_t | get_discovered_participants (std::vector< InstanceHandle_t > &participant_handles) const
| Retrieves the list of DomainParticipants that have been discovered in the domain and are not "ignored".
FASTDDS_EXPORTED_API ReturnCode_t | get_discovered_participant_data (ParticipantBuiltinTopicData &participant_data, const InstanceHandle_t &participant_handle) const
| Retrieves the DomainParticipant data of a discovered not ignored participant.
FASTDDS_EXPORTED_API ReturnCode_t | get_discovered_topics (std::vector< InstanceHandle_t > &topic_handles) const
| Retrieves the list of topics that have been discovered in the domain and are not "ignored".
FASTDDS_EXPORTED_API ReturnCode_t | get_discovered_topic_data (builtin::TopicBuiltinTopicData &topic_data, const InstanceHandle_t &topic_handle) const
| Retrieves the Topic data of a discovered not ignored topic.
FASTDDS_EXPORTED_API bool | contains_entity (const InstanceHandle_t &a_handle, bool recursive=true) const
| This operation checks whether or not the given handle represents an Entity that was created from the DomainParticipant.
FASTDDS_EXPORTED_API ReturnCode_t | get_current_time (fastdds::dds::Time_t &current_time) const
| This operation returns the current value of the time that the service uses to time-stamp data-writes and to set the reception-timestamp for the data-updates it receives.
FASTDDS_EXPORTED_API ReturnCode_t | register_type (TypeSupport type, const std::string &type_name)
| Register a type in this participant.
FASTDDS_EXPORTED_API ReturnCode_t | register_type (TypeSupport type)
| Register a type in this participant.
FASTDDS_EXPORTED_API ReturnCode_t | unregister_type (const std::string &typeName)
| Unregister a type in this participant.
FASTDDS_EXPORTED_API TypeSupport | find_type (const std::string &type_name) const
| This method gives access to a registered type based on its name.
FASTDDS_EXPORTED_API ReturnCode_t | register_service_type (rpc::ServiceTypeSupport service_type, const std::string &service_type_name)
| Register a service type in this participant.
FASTDDS_EXPORTED_API ReturnCode_t | unregister_service_type (const std::string &service_type_name)
| Unregister a service type in this participant.
FASTDDS_EXPORTED_API rpc::ServiceTypeSupport | find_service_type (const std::string &service_type_name) const
| This method gives access to a registered service type based on its name.
FASTDDS_EXPORTED_API const InstanceHandle_t & | get_instance_handle () const
| Returns the DomainParticipant's handle.
FASTDDS_EXPORTED_API const fastdds::rtps::GUID_t & | guid () const
| Getter for the Participant GUID.
FASTDDS_EXPORTED_API std::vector< std::string > | get_participant_names () const
| Getter for the participant names.
FASTDDS_EXPORTED_API bool | new_remote_endpoint_discovered (const fastdds::rtps::GUID_t &partguid, uint16_t userId, fastdds::rtps::EndpointKind_t kind)
| This method can be used when using a StaticEndpointDiscovery mechanism different that the one included in Fast DDS, for example when communicating with other implementations.
FASTDDS_EXPORTED_API ReturnCode_t | register_content_filter_factory (const char *filter_class_name, IContentFilterFactory *const filter_factory)
| Register a custom content filter factory, which can be used to create a ContentFilteredTopic.
FASTDDS_EXPORTED_API IContentFilterFactory * | lookup_content_filter_factory (const char *filter_class_name)
| Lookup a custom content filter factory previously registered with register_content_filter_factory.
FASTDDS_EXPORTED_API ReturnCode_t | unregister_content_filter_factory (const char *filter_class_name)
| Unregister a custom content filter factory previously registered with register_content_filter_factory.
FASTDDS_EXPORTED_API bool | has_active_entities ()
| Check if the Participant has any Publisher, Subscriber or Topic.
Public Member Functions inherited from Entity
FASTDDS_EXPORTED_API | Entity (const StatusMask &mask=StatusMask::all())
| Constructor.
void | close ()
| This operation disables the Entity before closing it.
FASTDDS_EXPORTED_API const StatusMask & | get_status_mask () const
| Retrieves the set of relevant statuses for the Entity.
FASTDDS_EXPORTED_API const StatusMask & | get_status_changes () const
| Retrieves the set of triggered statuses in the Entity.
const InstanceHandle_t & | get_instance_handle () const
| Retrieves the instance handler that represents the Entity.
FASTDDS_EXPORTED_API bool | is_enabled () const
| Checks if the Entity is enabled.
FASTDDS_EXPORTED_API bool | operator== (const Entity &other) const
FASTDDS_EXPORTED_API StatusCondition & | get_statuscondition ()
| Allows access to the StatusCondition associated with the Entity.
FASTDDS_EXPORTED_API const StatusCondition & | get_statuscondition () const
| Allows access to the StatusCondition associated with the Entity.

## Protected Member Functions

| DomainParticipant (const StatusMask &mask=StatusMask::all())
Protected Member Functions inherited from Entity
FASTDDS_EXPORTED_API void | set_instance_handle (const InstanceHandle_t &handle)
| Setter for the Instance Handle.

## Protected Attributes

DomainParticipantImpl * | impl_
Protected Attributes inherited from Entity
StatusMask | status_mask_
| StatusMask with relevant statuses set to 1.
StatusCondition | status_condition_
| Condition associated to the Entity.
InstanceHandle_t | instance_handle_
| InstanceHandle associated to the Entity.
bool | enable_
| Boolean that states if the Entity is enabled or disabled.

## Friends

class | DomainParticipantFactory
class | DomainParticipantImpl
class | ::dds::domain::DomainParticipant

## Detailed Description

Class DomainParticipant used to group Publishers and Subscribers into a single working unit.

## Constructor & Destructor Documentation

## ◆ ~DomainParticipant()

virtual ~DomainParticipant | ( |  | ) |

virtual

Destructor.

## ◆ DomainParticipant()

DomainParticipant | ( | const StatusMask & | mask = StatusMask::all() | ) |

protected

## Member Function Documentation

## ◆ assert_liveliness()

FASTDDS_EXPORTED_API ReturnCode_t assert_liveliness | ( |  | ) |

This operation manually asserts the liveliness of the DomainParticipant.

This is used in combination with the LIVELINESS QoS policy to indicate to the Service that the entity remains active.

This operation needs to only be used if the DomainParticipant contains DataWriter entities with the LIVELINESS set to MANUAL_BY_PARTICIPANT and it only affects the liveliness of those DataWriter entities. Otherwise, it has no effect.

Note
  Writing data via the write operation on a DataWriter asserts liveliness on the DataWriter itself and its DomainParticipant. Consequently the use of assert_liveliness is only needed if the application is not writing data regularly.

Returns
  RETCODE_OK if the liveliness was asserted, RETCODE_ERROR otherwise.

## ◆ contains_entity()

FASTDDS_EXPORTED_API bool contains_entity | ( | const InstanceHandle_t & | a_handle,
|  | bool | recursive = true ) const

This operation checks whether or not the given handle represents an Entity that was created from the DomainParticipant.

Parameters

  a_handle | InstanceHandle of the entity to look for.
  recursive | The containment applies recursively. That is, it applies both to entities (TopicDescription, Publisher, or Subscriber) created directly using the DomainParticipant as well as entities created using a contained Publisher, or Subscriber as the factory, and so forth. (default: true)

Returns
  True if entity is contained. False otherwise.

## ◆ create_contentfilteredtopic() [1/2]

FASTDDS_EXPORTED_API ContentFilteredTopic * create_contentfilteredtopic | ( | const std::string & | name,
|  | Topic * | related_topic,
|  | const std::string & | filter_expression,
|  | const std::vector< std::string > & | expression_parameters )

Create a ContentFilteredTopic in this Participant.

Parameters

  name | Name of the ContentFilteredTopic
  related_topic | Related Topic to being subscribed
  filter_expression | Logic expression to create filter
  expression_parameters | Parameters to filter content

Returns
  Pointer to the created ContentFilteredTopic.
  nullptr if `related_topic` does not belong to this participant.
  nullptr if a topic with the specified `name` has already been created.
  nullptr if a filter cannot be created with the specified `filter_expression` and `expression_parameters`.

## ◆ create_contentfilteredtopic() [2/2]

FASTDDS_EXPORTED_API ContentFilteredTopic * create_contentfilteredtopic | ( | const std::string & | name,
|  | Topic * | related_topic,
|  | const std::string & | filter_expression,
|  | const std::vector< std::string > & | expression_parameters,
|  | const char * | filter_class_name )

Create a ContentFilteredTopic in this Participant using a custom filter.

Parameters

  name | Name of the ContentFilteredTopic
  related_topic | Related Topic to being subscribed
  filter_expression | Logic expression to create filter
  expression_parameters | Parameters to filter content
  filter_class_name | Name of the filter class to use

Returns
  Pointer to the created ContentFilteredTopic.
  nullptr if `related_topic` does not belong to this participant.
  nullptr if a topic with the specified `name` has already been created.
  nullptr if a filter cannot be created with the specified `filter_expression` and `expression_parameters`.
  nullptr if the specified `filter_class_name` has not been registered.

## ◆ create_multitopic()

FASTDDS_EXPORTED_API MultiTopic * create_multitopic | ( | const std::string & | name,
|  | const std::string & | type_name,
|  | const std::string & | subscription_expression,
|  | const std::vector< std::string > & | expression_parameters )

Create a MultiTopic in this Participant.

Parameters

  name | Name of the MultiTopic
  type_name | Result type of the MultiTopic
  subscription_expression | Logic expression to combine filter
  expression_parameters | Parameters to subscription content

Returns
  Pointer to the created ContentFilteredTopic, nullptr in error case

## ◆ create_publisher()

FASTDDS_EXPORTED_API Publisher * create_publisher | ( | const PublisherQos & | qos,
|  | PublisherListener * | listener = nullptr,
|  | const StatusMask & | mask = StatusMask::all() )

Create a Publisher in this Participant.

Parameters

  qos | QoS of the Publisher.
  listener | Pointer to the listener (default: nullptr)
  mask | StatusMask that holds statuses the listener responds to (default: all)

Returns
  Pointer to the created Publisher.

## ◆ create_publisher_with_profile()

FASTDDS_EXPORTED_API Publisher * create_publisher_with_profile | ( | const std::string & | profile_name,
|  | PublisherListener * | listener = nullptr,
|  | const StatusMask & | mask = StatusMask::all() )

Create a Publisher in this Participant.

Parameters

  profile_name | Publisher profile name.
  listener | Pointer to the listener (default: nullptr)
  mask | StatusMask that holds statuses the listener responds to (default: all)

Returns
  Pointer to the created Publisher.

## ◆ create_service()

FASTDDS_EXPORTED_API rpc::Service * create_service | ( | const std::string & | service_name,
|  | const std::string & | service_type_name )

Create a RPC service.

Parameters

  service_name | Name of the service.
  service_type_name | Type name of the service (Request & reply types)

Returns
  Pointer to the created service. nullptr in error case.

## ◆ create_service_replier()

FASTDDS_EXPORTED_API rpc::Replier * create_service_replier | ( | rpc::Service * | service,
|  | const ReplierQos & | replier_qos )

Create a RPC Replier in a given Service.

It will override the current service's replier

Parameters

  service | Pointer to a service object where the Replier will be created.
  replier_qos | QoS of the replier.

Returns
  Pointer to the created replier. nullptr in error case.

## ◆ create_service_requester()

FASTDDS_EXPORTED_API rpc::Requester * create_service_requester | ( | rpc::Service * | service,
|  | const RequesterQos & | requester_qos )

Create a RPC Requester in a given Service.

Parameters

  service | Pointer to a service object where the requester will be created.
  requester_qos | QoS of the requester.

Returns
  Pointer to the created requester. nullptr in error case.

## ◆ create_subscriber()

FASTDDS_EXPORTED_API Subscriber * create_subscriber | ( | const SubscriberQos & | qos,
|  | SubscriberListener * | listener = nullptr,
|  | const StatusMask & | mask = StatusMask::all() )

Create a Subscriber in this Participant.

Parameters

  qos | QoS of the Subscriber.
  listener | Pointer to the listener (default: nullptr)
  mask | StatusMask that holds statuses the listener responds to (default: all)

Returns
  Pointer to the created Subscriber.

## ◆ create_subscriber_with_profile()

FASTDDS_EXPORTED_API Subscriber * create_subscriber_with_profile | ( | const std::string & | profile_name,
|  | SubscriberListener * | listener = nullptr,
|  | const StatusMask & | mask = StatusMask::all() )

Create a Subscriber in this Participant.

Parameters

  profile_name | Subscriber profile name.
  listener | Pointer to the listener (default: nullptr)
  mask | StatusMask that holds statuses the listener responds to (default: all)

Returns
  Pointer to the created Subscriber.

## ◆ create_topic()

FASTDDS_EXPORTED_API Topic * create_topic | ( | const std::string & | topic_name,
|  | const std::string & | type_name,
|  | const TopicQos & | qos,
|  | TopicListener * | listener = nullptr,
|  | const StatusMask & | mask = StatusMask::all() )

Create a Topic in this Participant.

Parameters

  topic_name | Name of the Topic.
  type_name | Data type of the Topic.
  qos | QoS of the Topic.
  listener | Pointer to the listener (default: nullptr)
  mask | StatusMask that holds statuses the listener responds to (default: all)

Returns
  Pointer to the created Topic.

## ◆ create_topic_with_profile()

FASTDDS_EXPORTED_API Topic * create_topic_with_profile | ( | const std::string & | topic_name,
|  | const std::string & | type_name,
|  | const std::string & | profile_name,
|  | TopicListener * | listener = nullptr,
|  | const StatusMask & | mask = StatusMask::all() )

Create a Topic in this Participant.

Parameters

  topic_name | Name of the Topic.
  type_name | Data type of the Topic.
  profile_name | Topic profile name.
  listener | Pointer to the listener (default: nullptr)
  mask | StatusMask that holds statuses the listener responds to (default: all)

Returns
  Pointer to the created Topic.

## ◆ delete_contained_entities()

FASTDDS_EXPORTED_API ReturnCode_t delete_contained_entities | ( |  | ) |

Deletes all the entities that were created by means of the “create” methods.

Returns
  RETURN_OK code if everything correct, error code otherwise

## ◆ delete_contentfilteredtopic()

FASTDDS_EXPORTED_API ReturnCode_t delete_contentfilteredtopic | ( | const ContentFilteredTopic * | a_contentfilteredtopic | ) |

Deletes an existing ContentFilteredTopic.

Parameters

  a_contentfilteredtopic | ContentFilteredTopic to be deleted

Returns
  RETCODE_BAD_PARAMETER if the topic passed is a nullptr, RETCODE_PRECONDITION_NOT_MET if the topic does not belong to this participant or if it is referenced by any entity and RETCODE_OK if the ContentFilteredTopic was deleted.

## ◆ delete_multitopic()

FASTDDS_EXPORTED_API ReturnCode_t delete_multitopic | ( | const MultiTopic * | a_multitopic | ) |

Deletes an existing MultiTopic.

Parameters

  a_multitopic | MultiTopic to be deleted

Returns
  RETCODE_BAD_PARAMETER if the topic passed is a nullptr, RETCODE_PRECONDITION_NOT_MET if the topic does not belong to this participant or if it is referenced by any entity and RETCODE_OK if the Topic was deleted.

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ delete_publisher()

FASTDDS_EXPORTED_API ReturnCode_t delete_publisher | ( | const Publisher * | publisher | ) |

Deletes an existing Publisher.

Parameters

  publisher | to be deleted.

Returns
  RETCODE_PRECONDITION_NOT_MET if the publisher does not belong to this participant or if it has active DataWriters, RETCODE_OK if it is correctly deleted and RETCODE_ERROR otherwise.

## ◆ delete_service()

FASTDDS_EXPORTED_API ReturnCode_t delete_service | ( | const rpc::Service * | service | ) |

Delete a registered RPC service.

Parameters

  service | Pointer to the service to be deleted.

Returns
  RETCODE_OK if the service was deleted, or an specific error code otherwise.

## ◆ delete_service_replier()

FASTDDS_EXPORTED_API ReturnCode_t delete_service_replier | ( | const std::string & | service_name,
|  | rpc::Replier * | replier )

Deletes an existing RPC Replier.

Parameters

  service_name | Name of the service where the replier is created.
  replier | Pointer to the replier to be deleted.

Returns
  RETCODE_OK if the replier was deleted, or an specific error code otherwise.

## ◆ delete_service_requester()

FASTDDS_EXPORTED_API ReturnCode_t delete_service_requester | ( | const std::string & | service_name,
|  | rpc::Requester * | requester )

Deletes an existing RPC Requester.

Parameters

  service_name | Name of the service where the requester is created.
  requester | Pointer to the requester to be deleted.

Returns
  RETCODE_OK if the requester was deleted, or an specific error code otherwise.

## ◆ delete_subscriber()

FASTDDS_EXPORTED_API ReturnCode_t delete_subscriber | ( | const Subscriber * | subscriber | ) |

Deletes an existing Subscriber.

Parameters

  subscriber | to be deleted.

Returns
  RETCODE_PRECONDITION_NOT_MET if the subscriber does not belong to this participant or if it has active DataReaders, RETCODE_OK if it is correctly deleted and RETCODE_ERROR otherwise.

## ◆ delete_topic()

FASTDDS_EXPORTED_API ReturnCode_t delete_topic | ( | const Topic * | topic | ) |

Deletes an existing Topic.

Parameters

  topic | to be deleted.

Returns
  RETCODE_BAD_PARAMETER if the topic passed is a nullptr, RETCODE_PRECONDITION_NOT_MET if the topic does not belong to this participant or if it is referenced by any entity and RETCODE_OK if the Topic was deleted.

## ◆ enable()

FASTDDS_EXPORTED_API ReturnCode_t enable | ( |  | ) |

override virtual

This operation enables the DomainParticipant.

Returns
  RETCODE_OK

Reimplemented from Entity.

## ◆ find_service()

FASTDDS_EXPORTED_API rpc::Service * find_service | ( | const std::string & | service_name | ) | const

Find a RPC service by name.

Parameters

  service_name | Name of the service to search for.

Returns
  Pointer to the service object if found, nullptr if not found.

## ◆ find_service_type()

FASTDDS_EXPORTED_API rpc::ServiceTypeSupport find_service_type | ( | const std::string & | service_type_name | ) | const

This method gives access to a registered service type based on its name.

Parameters

  service_type_name | Name of the type

Returns
  ServiceTypeSupport corresponding to the service_type_name

## ◆ find_topic()

FASTDDS_EXPORTED_API Topic * find_topic | ( | const std::string & | topic_name,
|  | const fastdds::dds::Duration_t & | timeout )

Gives access to an existing (or ready to exist) enabled Topic.

It should be noted that the returned Topic is a local object that acts as a proxy to designate the global concept of topic. Topics obtained by means of find_topic, must also be deleted by means of delete_topic so that the local resources can be released. If a Topic is obtained multiple times by means of find_topic or create_topic, it must also be deleted that same number of times using delete_topic.

Parameters

  topic_name | Topic name
  timeout | Maximum time to wait for the Topic

Returns
  Pointer to the existing Topic, nullptr in case of error or timeout

## ◆ find_type()

FASTDDS_EXPORTED_API TypeSupport find_type | ( | const std::string & | type_name | ) | const

This method gives access to a registered type based on its name.

Parameters

  type_name | Name of the type

Returns
  TypeSupport corresponding to the type_name

## ◆ get_builtin_subscriber()

FASTDDS_EXPORTED_API const Subscriber * get_builtin_subscriber | ( |  | ) | const

Allows access to the builtin Subscriber.

Returns
  Pointer to the builtin Subscriber, nullptr in error case

## ◆ get_current_time()

FASTDDS_EXPORTED_API ReturnCode_t get_current_time | ( | fastdds::dds::Time_t & | current_time | ) | const

This operation returns the current value of the time that the service uses to time-stamp data-writes and to set the reception-timestamp for the data-updates it receives.

Parameters

  current_time | Time_t reference where the current time is returned

Returns
  RETCODE_OK

## ◆ get_default_publisher_qos() [1/2]

FASTDDS_EXPORTED_API const PublisherQos & get_default_publisher_qos | ( |  | ) | const

This operation retrieves the default value of the Publisher QoS, that is, the QoS policies which will be used for newly created Publisher entities in the case where the QoS policies are defaulted in the create_publisher operation.

The values retrieved get_default_publisher_qos will match the set of values specified on the last successful call to set_default_publisher_qos, or else, if the call was never made, the default values.

Returns
  Current default publisher qos.

## ◆ get_default_publisher_qos() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_default_publisher_qos | ( | PublisherQos & | qos | ) | const

This operation retrieves the default value of the Publisher QoS, that is, the QoS policies which will be used for newly created Publisher entities in the case where the QoS policies are defaulted in the create_publisher operation.

The values retrieved get_default_publisher_qos will match the set of values specified on the last successful call to set_default_publisher_qos, or else, if the call was never made, the default values.

Parameters

  qos | PublisherQos reference where the default_publisher_qos is returned

Returns
  RETCODE_OK

## ◆ get_default_publisher_qos_from_xml()

FASTDDS_EXPORTED_API ReturnCode_t get_default_publisher_qos_from_xml | ( | const std::string & | xml,
|  | PublisherQos & | qos ) const

Fills the PublisherQos with the default publisher profile found in the provided XML (if there is).

Note
  This method does not update the default publisher qos (returned by `get_default_publisher_qos`).

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | PublisherQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_default_replier_qos_from_xml()

FASTDDS_EXPORTED_API ReturnCode_t get_default_replier_qos_from_xml | ( | const std::string & | xml,
|  | ReplierQos & | qos ) const

Fills the ReplierQos with the default replier profile found in the provided XML (if there is).

Note
  This method does not update the default replier qos.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | ReplierQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_default_requester_qos_from_xml()

FASTDDS_EXPORTED_API ReturnCode_t get_default_requester_qos_from_xml | ( | const std::string & | xml,
|  | RequesterQos & | qos ) const

Fills the RequesterQos with the default requester profile found in the provided XML (if there is).

Note
  This method does not update the default requester qos.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | RequesterQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_default_subscriber_qos() [1/2]

FASTDDS_EXPORTED_API const SubscriberQos & get_default_subscriber_qos | ( |  | ) | const

This operation retrieves the default value of the Subscriber QoS, that is, the QoS policies which will be used for newly created Subscriber entities in the case where the QoS policies are defaulted in the create_subscriber operation.

The values retrieved get_default_subscriber_qos will match the set of values specified on the last successful call to set_default_subscriber_qos, or else, if the call was never made, the default values.

Returns
  Current default subscriber qos.

## ◆ get_default_subscriber_qos() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_default_subscriber_qos | ( | SubscriberQos & | qos | ) | const

This operation retrieves the default value of the Subscriber QoS, that is, the QoS policies which will be used for newly created Subscriber entities in the case where the QoS policies are defaulted in the create_subscriber operation.

The values retrieved get_default_subscriber_qos will match the set of values specified on the last successful call to set_default_subscriber_qos, or else, if the call was never made, the default values.

Parameters

  qos | SubscriberQos reference where the default_subscriber_qos is returned

Returns
  RETCODE_OK

## ◆ get_default_subscriber_qos_from_xml()

FASTDDS_EXPORTED_API ReturnCode_t get_default_subscriber_qos_from_xml | ( | const std::string & | xml,
|  | SubscriberQos & | qos ) const

Fills the SubscriberQos with the default subscriber profile found in the provided XML (if there is).

Note
  This method does not update the default subscriber qos (returned by `get_default_subscriber_qos`).

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | SubscriberQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_default_topic_qos() [1/2]

FASTDDS_EXPORTED_API const TopicQos & get_default_topic_qos | ( |  | ) | const

This operation retrieves the default value of the Topic QoS, that is, the QoS policies that will be used for newly created Topic entities in the case where the QoS policies are defaulted in the create_topic operation.

The values retrieved get_default_topic_qos will match the set of values specified on the last successful call to set_default_topic_qos, or else, TOPIC_QOS_DEFAULT if the call was never made.

Returns
  Current default topic qos.

## ◆ get_default_topic_qos() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_default_topic_qos | ( | TopicQos & | qos | ) | const

This operation retrieves the default value of the Topic QoS, that is, the QoS policies that will be used for newly created Topic entities in the case where the QoS policies are defaulted in the create_topic operation.

The values retrieved get_default_topic_qos will match the set of values specified on the last successful call to set_default_topic_qos, or else, TOPIC_QOS_DEFAULT if the call was never made.

Parameters

  qos | TopicQos reference where the default_topic_qos is returned

Returns
  RETCODE_OK

## ◆ get_default_topic_qos_from_xml() [1/2]

FASTDDS_EXPORTED_API ReturnCode_t get_default_topic_qos_from_xml | ( | const std::string & | xml,
|  | TopicQos & | qos ) const

Fills the TopicQos with the default topic profile found in the provided XML (if there is).

Note
  This method does not update the default topic qos (returned by `get_default_topic_qos`).

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | TopicQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_default_topic_qos_from_xml() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_default_topic_qos_from_xml | ( | const std::string & | xml,
|  | TopicQos & | qos,
|  | std::string & | topic_name,
|  | std::string & | topic_data_type ) const

Fills the TopicQos with the default topic profile found in the provided XML (if there is), and also its corresponding topic and data type names (if specified).

Note
  This method does not update the default topic qos (returned by `get_default_topic_qos`).

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | TopicQos object where the qos is returned.
  topic_name | String where the name of the topic associated to this profile is returned (if specified).
  topic_data_type | String where the name of the topic data type associated to this profile is returned (if specified).

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_discovered_participant_data()

FASTDDS_EXPORTED_API ReturnCode_t get_discovered_participant_data | ( | ParticipantBuiltinTopicData & | participant_data,
|  | const InstanceHandle_t & | participant_handle ) const

Retrieves the DomainParticipant data of a discovered not ignored participant.

Parameters

  [out] | participant_data | Reference to the ParticipantBuiltinTopicData object to return the data
  | participant_handle | InstanceHandle of DomainParticipant to retrieve the data from

Returns
  RETCODE_OK if everything correct, PRECONDITION_NOT_MET if participant does not exist

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ get_discovered_participants()

FASTDDS_EXPORTED_API ReturnCode_t get_discovered_participants | ( | std::vector< InstanceHandle_t > & | participant_handles | ) | const

Retrieves the list of DomainParticipants that have been discovered in the domain and are not "ignored".

Parameters

  [out] | participant_handles | Reference to the vector where discovered participants will be returned

Returns
  RETCODE_OK if everything correct, error code otherwise

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ get_discovered_topic_data()

FASTDDS_EXPORTED_API ReturnCode_t get_discovered_topic_data | ( | builtin::TopicBuiltinTopicData & | topic_data,
|  | const InstanceHandle_t & | topic_handle ) const

Retrieves the Topic data of a discovered not ignored topic.

Parameters

  [out] | topic_data | Reference to the TopicBuiltinTopicData object to return the data
  | topic_handle | InstanceHandle of Topic to retrieve the data from

Returns
  RETCODE_OK if everything correct, PRECONDITION_NOT_MET if topic does not exist

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ get_discovered_topics()

FASTDDS_EXPORTED_API ReturnCode_t get_discovered_topics | ( | std::vector< InstanceHandle_t > & | topic_handles | ) | const

Retrieves the list of topics that have been discovered in the domain and are not "ignored".

Parameters

  [out] | topic_handles | Reference to the vector where discovered topics will be returned

Returns
  RETCODE_OK if everything correct, error code otherwise

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ get_domain_id()

FASTDDS_EXPORTED_API DomainId_t get_domain_id | ( |  | ) | const

This operation retrieves the domain_id used to create the DomainParticipant.

The domain_id identifies the DDS domain to which the DomainParticipant belongs.

Returns
  The Participant's domain_id

## ◆ get_instance_handle()

FASTDDS_EXPORTED_API const InstanceHandle_t & get_instance_handle | ( |  | ) | const

Returns the DomainParticipant's handle.

Returns
  InstanceHandle of this DomainParticipant.

## ◆ get_listener()

FASTDDS_EXPORTED_API const DomainParticipantListener * get_listener | ( |  | ) | const

Allows accessing the DomainParticipantListener.

Returns
  DomainParticipantListener pointer

## ◆ get_participant_names()

FASTDDS_EXPORTED_API std::vector< std::string > get_participant_names | ( |  | ) | const

Getter for the participant names.

Returns
  Vector with the names

## ◆ get_publisher_qos_from_profile()

FASTDDS_EXPORTED_API ReturnCode_t get_publisher_qos_from_profile | ( | const std::string & | profile_name,
|  | PublisherQos & | qos ) const

Fills the PublisherQos with the values of the XML profile.

Parameters

  profile_name | Publisher profile name.
  qos | PublisherQos object where the qos is returned.

Returns
  RETCODE_OK if the profile exists. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_publisher_qos_from_xml() [1/2]

FASTDDS_EXPORTED_API ReturnCode_t get_publisher_qos_from_xml | ( | const std::string & | xml,
|  | PublisherQos & | qos ) const

Fills the PublisherQos with the first publisher profile found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | PublisherQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_publisher_qos_from_xml() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_publisher_qos_from_xml | ( | const std::string & | xml,
|  | PublisherQos & | qos,
|  | const std::string & | profile_name ) const

Fills the PublisherQos with the publisher profile with `profile_name` to be found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | PublisherQos object where the qos is returned.
  profile_name | Publisher profile name.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_qos() [1/2]

FASTDDS_EXPORTED_API const DomainParticipantQos & get_qos | ( |  | ) | const

This operation returns the value of the DomainParticipant QoS policies.

Returns
  A reference to the DomainParticipantQos

## ◆ get_qos() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_qos | ( | DomainParticipantQos & | qos | ) | const

This operation returns the value of the DomainParticipant QoS policies.

Parameters

  qos | DomainParticipantQos reference where the qos is going to be returned

Returns
  RETCODE_OK

## ◆ get_replier_qos_from_profile()

FASTDDS_EXPORTED_API ReturnCode_t get_replier_qos_from_profile | ( | const std::string & | profile_name,
|  | ReplierQos & | qos ) const

Fills the ReplierQos with the values of the XML profile.

Parameters

  profile_name | Replier profile name.
  qos | ReplierQos object where the qos is returned.

Returns
  RETCODE_OK if the profile exists. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_replier_qos_from_xml() [1/2]

FASTDDS_EXPORTED_API ReturnCode_t get_replier_qos_from_xml | ( | const std::string & | xml,
|  | ReplierQos & | qos ) const

Fills the ReplierQos with the first replier profile found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | ReplierQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_replier_qos_from_xml() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_replier_qos_from_xml | ( | const std::string & | xml,
|  | ReplierQos & | qos,
|  | const std::string & | profile_name ) const

Fills the ReplierQos with the replier profile with `profile_name` to be found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | ReplierQos object where the qos is returned.
  profile_name | Replier profile name.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_requester_qos_from_profile()

FASTDDS_EXPORTED_API ReturnCode_t get_requester_qos_from_profile | ( | const std::string & | profile_name,
|  | RequesterQos & | qos ) const

Fills the RequesterQos with the values of the XML profile.

Parameters

  profile_name | Requester profile name.
  qos | RequesterQos object where the qos is returned.

Returns
  RETCODE_OK if the profile exists. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_requester_qos_from_xml() [1/2]

FASTDDS_EXPORTED_API ReturnCode_t get_requester_qos_from_xml | ( | const std::string & | xml,
|  | RequesterQos & | qos ) const

Fills the RequesterQos with the first requester profile found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | RequesterQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_requester_qos_from_xml() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_requester_qos_from_xml | ( | const std::string & | xml,
|  | RequesterQos & | qos,
|  | const std::string & | profile_name ) const

Fills the RequesterQos with the requester profile with `profile_name` to be found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | RequesterQos object where the qos is returned.
  profile_name | Requester profile name.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_subscriber_qos_from_profile()

FASTDDS_EXPORTED_API ReturnCode_t get_subscriber_qos_from_profile | ( | const std::string & | profile_name,
|  | SubscriberQos & | qos ) const

Fills the SubscriberQos with the values of the XML profile.

Parameters

  profile_name | Subscriber profile name.
  qos | SubscriberQos object where the qos is returned.

Returns
  RETCODE_OK if the profile exists. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_subscriber_qos_from_xml() [1/2]

FASTDDS_EXPORTED_API ReturnCode_t get_subscriber_qos_from_xml | ( | const std::string & | xml,
|  | SubscriberQos & | qos ) const

Fills the SubscriberQos with the first subscriber profile found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | SubscriberQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_subscriber_qos_from_xml() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_subscriber_qos_from_xml | ( | const std::string & | xml,
|  | SubscriberQos & | qos,
|  | const std::string & | profile_name ) const

Fills the SubscriberQos with the subscriber profile with `profile_name` to be found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | SubscriberQos object where the qos is returned.
  profile_name | Subscriber profile name.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_topic_qos_from_profile() [1/2]

FASTDDS_EXPORTED_API ReturnCode_t get_topic_qos_from_profile | ( | const std::string & | profile_name,
|  | TopicQos & | qos ) const

Fills the TopicQos with the values of the XML profile.

Parameters

  profile_name | Topic profile name.
  qos | TopicQos object where the qos is returned.

Returns
  RETCODE_OK if the profile exists. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_topic_qos_from_profile() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t get_topic_qos_from_profile | ( | const std::string & | profile_name,
|  | TopicQos & | qos,
|  | std::string & | topic_name,
|  | std::string & | topic_data_type ) const

Fills the TopicQos with the values of the XML profile, and also its corresponding topic and data type names (if specified).

Parameters

  profile_name | Topic profile name.
  qos | TopicQos object where the qos is returned.
  topic_name | String where the name of the topic associated to this profile is returned (if specified).
  topic_data_type | String where the name of the topic data type associated to this profile is returned (if specified).

Returns
  RETCODE_OK if the profile exists. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_topic_qos_from_xml() [1/4]

FASTDDS_EXPORTED_API ReturnCode_t get_topic_qos_from_xml | ( | const std::string & | xml,
|  | TopicQos & | qos ) const

Fills the TopicQos with the first topic profile found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | TopicQos object where the qos is returned.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_topic_qos_from_xml() [2/4]

FASTDDS_EXPORTED_API ReturnCode_t get_topic_qos_from_xml | ( | const std::string & | xml,
|  | TopicQos & | qos,
|  | const std::string & | profile_name ) const

Fills the TopicQos with the topic profile with `profile_name` to be found in the provided XML.

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | TopicQos object where the qos is returned.
  profile_name | Topic profile name.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_topic_qos_from_xml() [3/4]

FASTDDS_EXPORTED_API ReturnCode_t get_topic_qos_from_xml | ( | const std::string & | xml,
|  | TopicQos & | qos,
|  | std::string & | topic_name,
|  | std::string & | topic_data_type ) const

Fills the TopicQos with the first topic profile found in the provided XML, and also its corresponding topic and data type names (if specified).

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | TopicQos object where the qos is returned.
  topic_name | String where the name of the topic associated to this profile is returned (if specified).
  topic_data_type | String where the name of the topic data type associated to this profile is returned (if specified).

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ get_topic_qos_from_xml() [4/4]

FASTDDS_EXPORTED_API ReturnCode_t get_topic_qos_from_xml | ( | const std::string & | xml,
|  | TopicQos & | qos,
|  | std::string & | topic_name,
|  | std::string & | topic_data_type,
|  | const std::string & | profile_name ) const

Fills the TopicQos with the topic profile with `profile_name` to be found in the provided XML, and also its corresponding topic and data type names (if specified).

Parameters

  xml | Raw XML string containing the profile to be used to fill the `qos` structure.
  qos | TopicQos object where the qos is returned.
  topic_name | String where the name of the topic associated to this profile is returned (if specified).
  topic_data_type | String where the name of the topic data type associated to this profile is returned (if specified).
  profile_name | Topic profile name.

Returns
  RETCODE_OK on success. RETCODE_BAD_PARAMETER otherwise.

## ◆ guid()

FASTDDS_EXPORTED_API const fastdds::rtps::GUID_t & guid | ( |  | ) | const

Getter for the Participant GUID.

Returns
  A reference to the GUID

## ◆ has_active_entities()

FASTDDS_EXPORTED_API bool has_active_entities | ( |  | ) |

Check if the Participant has any Publisher, Subscriber or Topic.

Returns
  true if any, false otherwise.

## ◆ ignore_participant()

FASTDDS_EXPORTED_API ReturnCode_t ignore_participant | ( | const InstanceHandle_t & | handle | ) |

Locally ignore a remote domain participant.

Note
  This action is not reversible.

Parameters

  handle | Identifier of the remote participant to ignore

Returns
  RETURN_OK code if everything correct, RETCODE_BAD_PARAMENTER otherwise

## ◆ ignore_publication()

FASTDDS_EXPORTED_API ReturnCode_t ignore_publication | ( | const InstanceHandle_t & | handle | ) |

Locally ignore a remote datawriter.

Note
  This action is not reversible.

Parameters

  handle | Identifier of the datawriter to ignore

Returns
  RETURN_OK code if everything correct, error code otherwise

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ ignore_subscription()

FASTDDS_EXPORTED_API ReturnCode_t ignore_subscription | ( | const InstanceHandle_t & | handle | ) |

Locally ignore a remote datareader.

Note
  This action is not reversible.

Parameters

  handle | Identifier of the datareader to ignore

Returns
  RETURN_OK code if everything correct, error code otherwise

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ ignore_topic()

FASTDDS_EXPORTED_API ReturnCode_t ignore_topic | ( | const InstanceHandle_t & | handle | ) |

Locally ignore a topic.

Note
  This action is not reversible.

Parameters

  handle | Identifier of the topic to ignore

Returns
  RETURN_OK code if everything correct, error code otherwise

Warning
  Not supported yet. Currently returns RETCODE_UNSUPPORTED

## ◆ lookup_content_filter_factory()

FASTDDS_EXPORTED_API IContentFilterFactory * lookup_content_filter_factory | ( | const char * | filter_class_name | ) |

Lookup a custom content filter factory previously registered with register_content_filter_factory.

Parameters

  filter_class_name | Name of the filter class. Cannot be nullptr.

Returns
  nullptr if the given filter_class_name has not been previously registered on this DomainParticipant. Otherwise, the content filter factory previously registered with the given filter_class_name.

## ◆ lookup_topicdescription()

FASTDDS_EXPORTED_API TopicDescription * lookup_topicdescription | ( | const std::string & | topic_name | ) | const

Looks up an existing, locally created TopicDescription, based on its name.

May be called on a disabled participant.

Parameters

  topic_name | Name of the TopicDescription to search for.

Returns
  Pointer to the topic description, if it has been created locally. Otherwise, nullptr is returned.

Remarks
  UNSAFE. It is unsafe to lookup a topic description while another thread is creating a topic.

## ◆ new_remote_endpoint_discovered()

FASTDDS_EXPORTED_API bool new_remote_endpoint_discovered | ( | const fastdds::rtps::GUID_t & | partguid,
|  | uint16_t | userId,
|  | fastdds::rtps::EndpointKind_t | kind )

This method can be used when using a StaticEndpointDiscovery mechanism different that the one included in Fast DDS, for example when communicating with other implementations.

It indicates the Participant that an Endpoint from the XML has been discovered and should be activated.

Parameters

  partguid | Participant GUID_t.
  userId | User defined ID as shown in the XML file.
  kind | EndpointKind (WRITER or READER)

Returns
  True if correctly found and activated.

## ◆ register_content_filter_factory()

FASTDDS_EXPORTED_API ReturnCode_t register_content_filter_factory | ( | const char * | filter_class_name,
|  | IContentFilterFactory *const | filter_factory )

Register a custom content filter factory, which can be used to create a ContentFilteredTopic.

DDS specifies a SQL-like content filter to be used by content filtered topics. If this filter does not meet your filtering requirements, you can register a custom filter factory.

To use a custom filter, a factory for it must be registered in the following places:

- In any application that uses the custom filter factory to create a ContentFilteredTopic and the corresponding DataReader.
- In each application that writes the data to the applications mentioned above.

For example, suppose Application A on the subscription side creates a Topic named X and a ContentFilteredTopic named filteredX (and a corresponding DataReader), using a previously registered content filter factory, myFilterFactory. With only that, you will have filtering at the subscription side. If you also want to perform filtering in any application that publishes Topic X, then you also need to register the same definition of the ContentFilterFactory myFilterFactory in that application.

Each `filter_class_name` can only be used to register a content filter factory once per DomainParticipant.

Parameters

  filter_class_name | Name of the filter class. Cannot be nullptr, must not exceed 255 characters, and must be unique within this DomainParticipant.
  filter_factory | Factory of content filters to be registered. Cannot be nullptr.

Returns
  RETCODE_BAD_PARAMETER if any parameter is nullptr, or the filter_class_name exceeds 255 characters.
  RETCODE_PRECONDITION_NOT_MET if the filter_class_name has been already registered.
  RETCODE_PRECONDITION_NOT_MET if filter_class_name is FASTDDS_SQLFILTER_NAME.
  RETCODE_OK if the filter is correctly registered.

## ◆ register_service_type()

FASTDDS_EXPORTED_API ReturnCode_t register_service_type | ( | rpc::ServiceTypeSupport | service_type,
|  | const std::string & | service_type_name )

Register a service type in this participant.

Parameters

  service_type | ServiceTypeSupport.
  service_type_name | The name that will be used to identify the service type.

Returns
  RETCODE_OK if it is correctly registered. Error code otherwise.

## ◆ register_type() [1/2]

FASTDDS_EXPORTED_API ReturnCode_t register_type | ( | TypeSupport | type | ) |

Register a type in this participant.

Parameters

  type | TypeSupport.

Returns
  RETCODE_BAD_PARAMETER if the size of the name is 0, RERCODE_PRECONDITION_NOT_MET if there is another TypeSupport with the same name and RETCODE_OK if it is correctly registered.

## ◆ register_type() [2/2]

FASTDDS_EXPORTED_API ReturnCode_t register_type | ( | TypeSupport | type,
|  | const std::string & | type_name )

Register a type in this participant.

Parameters

  type | TypeSupport.
  type_name | The name that will be used to identify the Type.

Returns
  RETCODE_BAD_PARAMETER if the size of the name is 0, RERCODE_PRECONDITION_NOT_MET if there is another TypeSupport with the same name and RETCODE_OK if it is correctly registered.

## ◆ set_default_publisher_qos()

FASTDDS_EXPORTED_API ReturnCode_t set_default_publisher_qos | ( | const PublisherQos & | qos | ) |

This operation sets a default value of the Publisher QoS policies which will be used for newly created Publisher entities in the case where the QoS policies are defaulted in the create_publisher operation.

This operation will check that the resulting policies are self consistent; if they are not, the operation will have no effect and return false.

The special value PUBLISHER_QOS_DEFAULT may be passed to this operation to indicate that the default QoS should be reset back to the initial values the factory would use, that is the values that would be used if the set_default_publisher_qos operation had never been called.

Parameters

  qos | PublisherQos to be set

Returns
  RETCODE_INCONSISTENT_POLICY if the Qos is not self consistent and RETCODE_OK if the qos is changed correctly.

## ◆ set_default_subscriber_qos()

FASTDDS_EXPORTED_API ReturnCode_t set_default_subscriber_qos | ( | const SubscriberQos & | qos | ) |

This operation sets a default value of the Subscriber QoS policies that will be used for newly created Subscriber entities in the case where the QoS policies are defaulted in the create_subscriber operation.

This operation will check that the resulting policies are self consistent; if they are not, the operation will have no effect and return false.

The special value SUBSCRIBER_QOS_DEFAULT may be passed to this operation to indicate that the default QoS should be reset back to the initial values the factory would use, that is the values that would be used if the set_default_subscriber_qos operation had never been called.

Parameters

  qos | SubscriberQos to be set

Returns
  RETCODE_INCONSISTENT_POLICY if the Qos is not self consistent and RETCODE_OK if the qos is changed correctly.

## ◆ set_default_topic_qos()

FASTDDS_EXPORTED_API ReturnCode_t set_default_topic_qos | ( | const TopicQos & | qos | ) |

This operation sets a default value of the Topic QoS policies which will be used for newly created Topic entities in the case where the QoS policies are defaulted in the create_topic operation.

This operation will check that the resulting policies are self consistent; if they are not, the operation will have no effect and return INCONSISTENT_POLICY.

The special value TOPIC_QOS_DEFAULT may be passed to this operation to indicate that the default QoS should be reset back to the initial values the factory would use, that is the values that would be used if the set_default_topic_qos operation had never been called.

Parameters

  qos | TopicQos to be set

Returns
  RETCODE_INCONSISTENT_POLICY if the Qos is not self consistent and RETCODE_OK if the qos is changed correctly.

## ◆ set_listener() [1/4]

FASTDDS_EXPORTED_API ReturnCode_t set_listener | ( | DomainParticipantListener * | listener | ) |

Modifies the DomainParticipantListener, sets the mask to StatusMask::all().

Parameters

  listener | New value for the DomainParticipantListener

Returns
  RETCODE_OK if successful, RETCODE_ERROR otherwise.

Warning
  Do not call this method from a `DomainParticipantListener` callback.

## ◆ set_listener() [2/4]

FASTDDS_EXPORTED_API ReturnCode_t set_listener | ( | DomainParticipantListener * | listener,
|  | const StatusMask & | mask )

Modifies the DomainParticipantListener.

Parameters

  listener | New value for the DomainParticipantListener
  mask | StatusMask that holds statuses the listener responds to

Returns
  RETCODE_OK if successful, RETCODE_ERROR otherwise.

Warning
  Do not call this method from a `DomainParticipantListener` callback.

## ◆ set_listener() [3/4]

FASTDDS_EXPORTED_API ReturnCode_t set_listener | ( | DomainParticipantListener * | listener,
|  | const StatusMask & | mask,
|  | const std::chrono::seconds | timeout )

Modifies the DomainParticipantListener.

Parameters

  listener | New value for the DomainParticipantListener
  mask | StatusMask that holds statuses the listener responds to
  timeout | Maximum time to wait for executing callbacks to finish.

Returns
  RETCODE_OK if successful, RETCODE_ERROR if failed (timeout expired)

Warning
  Do not call this method from a `DomainParticipantListener` callback.

## ◆ set_listener() [4/4]

FASTDDS_EXPORTED_API ReturnCode_t set_listener | ( | DomainParticipantListener * | listener,
|  | const std::chrono::seconds | timeout )

Modifies the DomainParticipantListener, sets the mask to StatusMask::all().

Parameters

  listener | New value for the DomainParticipantListener
  timeout | Maximum time to wait for executing callbacks to finish.

Returns
  RETCODE_OK if successful, RETCODE_ERROR if failed (timeout expired).

Warning
  Do not call this method from a `DomainParticipantListener` callback.

## ◆ set_qos()

FASTDDS_EXPORTED_API ReturnCode_t set_qos | ( | const DomainParticipantQos & | qos | ) | const

This operation sets the value of the DomainParticipant QoS policies.

Parameters

  qos | DomainParticipantQos to be set

Returns
  RETCODE_IMMUTABLE_POLICY if any of the Qos cannot be changed, RETCODE_INCONSISTENT_POLICY if the Qos is not self consistent and RETCODE_OK if the qos is changed correctly.

## ◆ unregister_content_filter_factory()

FASTDDS_EXPORTED_API ReturnCode_t unregister_content_filter_factory | ( | const char * | filter_class_name | ) |

Unregister a custom content filter factory previously registered with register_content_filter_factory.

A filter_class_name can be unregistered only if it has been previously registered to the DomainParticipant with register_content_filter_factory.

The unregistration of filter is not allowed if there are any existing ContentFilteredTopic objects that are using the filter.

If there is any existing discovered DataReader with the same filter_class_name, filtering on the writer side will be stopped, but this operation will not fail.

Parameters

  filter_class_name | Name of the filter class. Cannot be nullptr.

Returns
  RETCODE_BAD_PARAMETER if the filter_class_name is nullptr.
  RERCODE_PRECONDITION_NOT_MET if the filter_class_name has not been previously registered.
  RERCODE_PRECONDITION_NOT_MET if there is any ContentFilteredTopic referencing the filter.
  RETCODE_OK if the filter is correctly unregistered.

## ◆ unregister_service_type()

FASTDDS_EXPORTED_API ReturnCode_t unregister_service_type | ( | const std::string & | service_type_name | ) |

Unregister a service type in this participant.

Parameters

  service_type_name | Name of the type

Returns
  RETCODE_OK if it is correctly unregistered. Error code otherwise.

## ◆ unregister_type()

FASTDDS_EXPORTED_API ReturnCode_t unregister_type | ( | const std::string & | typeName | ) |

Unregister a type in this participant.

Parameters

  typeName | Name of the type

Returns
  RETCODE_BAD_PARAMETER if the size of the name is 0, RERCODE_PRECONDITION_NOT_MET if there are entities using that TypeSupport and RETCODE_OK if it is correctly unregistered.

## Friends And Related Symbol Documentation

## ◆ ::dds::domain::DomainParticipant

friend class ::dds::domain::DomainParticipant

friend

## ◆ DomainParticipantFactory

friend class DomainParticipantFactory

friend

## ◆ DomainParticipantImpl

friend class DomainParticipantImpl

friend

## Member Data Documentation

## ◆ impl_

DomainParticipantImpl* impl_

protected

The documentation for this class was generated from the following file:

- include/fastdds/dds/domain/DomainParticipant.hpp