14.1.2.2. DomainParticipantFactory

class eprosima::fastdds::dds::DomainParticipantFactory

Class DomainParticipantFactory

Public Functions

DomainParticipant *create_participant(DomainId_t domain_id, const DomainParticipantQos &qos, DomainParticipantListener *listener = nullptr, const StatusMask &mask = StatusMask::all())

Create a Participant.

Return

DomainParticipant pointer. (nullptr if not created.)

Parameters

DomainParticipant *create_participant_with_profile(DomainId_t domain_id, const std::string &profile_name, DomainParticipantListener *listener = nullptr, const StatusMask &mask = StatusMask::all())

Create a Participant.

Return

DomainParticipant pointer. (nullptr if not created.)

Parameters

DomainParticipant *create_participant_with_profile(const std::string &profile_name, DomainParticipantListener *listener = nullptr, const StatusMask &mask = StatusMask::all())

Create a Participant.

Return

DomainParticipant pointer. (nullptr if not created.)

Parameters

DomainParticipant *lookup_participant(DomainId_t domain_id) const

This operation retrieves a previously created DomainParticipant belonging to specified domain_id. If no such DomainParticipant exists, the operation will return ‘nullptr’. If multiple DomainParticipant entities belonging to that domain_id exist, then the operation will return one of them. It is not specified which one.

Return

previously created DomainParticipant within the specified domain

Parameters
  • domain_id:

std::vector<DomainParticipant*> lookup_participants(DomainId_t domain_id) const

Returns all participants that belongs to the specified domain_id.

Return

previously created DomainParticipants within the specified domain

Parameters
  • domain_id:

ReturnCode_t get_default_participant_qos(DomainParticipantQos &qos) const

This operation retrieves the default value of the DomainParticipant QoS, that is, the QoS policies which will be used for newly created DomainParticipant entities in the case where the QoS policies are defaulted in the create_participant operation. The values retrieved get_default_participant_qos will match the set of values specified on the last successful call to set_default_participant_qos, or else, if the call was never made, the default values.

Return

RETCODE_OK

Parameters

const DomainParticipantQos &get_default_participant_qos() const

This operation retrieves the default value of the DomainParticipant QoS, that is, the QoS policies which will be used for newly created DomainParticipant entities in the case where the QoS policies are defaulted in the create_participant operation. The values retrieved get_default_participant_qos will match the set of values specified on the last successful call to set_default_participant_qos, or else, if the call was never made, the default values.

Return

A reference to the default DomainParticipantQos

ReturnCode_t set_default_participant_qos(const DomainParticipantQos &qos)

This operation sets a default value of the DomainParticipant QoS policies which will be used for newly created DomainParticipant entities in the case where the QoS policies are defaulted in the create_participant 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 PARTICIPANT_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_participant_qos operation had never been called.

Return

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

Parameters

ReturnCode_t delete_participant(DomainParticipant *part)

Remove a Participant and all associated publishers and subscribers.

Return

RETCODE_PRECONDITION_NOT_MET if the participant has active entities, RETCODE_OK if the participant is correctly deleted and RETCODE_ERROR otherwise.

Parameters
  • part: Pointer to the participant.

ReturnCode_t load_profiles()

Load profiles from default XML file.

Return

RETCODE_OK

ReturnCode_t load_XML_profiles_file(const std::string &xml_profile_file)

Load profiles from XML file.

Return

RETCODE_OK if it is correctly loaded, RETCODE_ERROR otherwise.

Parameters
  • xml_profile_file: XML profile file.

ReturnCode_t get_qos(DomainParticipantFactoryQos &qos) const

This operation returns the value of the DomainParticipantFactory QoS policies.

Return

RETCODE_OK

Parameters
  • qos: DomaParticipantFactoryQos reference where the qos is returned

ReturnCode_t set_qos(const DomainParticipantFactoryQos &qos)

This operation sets the value of the DomainParticipantFactory QoS policies. These policies control the behavior of the object a factory for entities.

Note that despite having QoS, the DomainParticipantFactory is not an Entity.

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.

Return

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.

Parameters

Public Static Functions

DomainParticipantFactory *get_instance()

Returns the DomainParticipantFactory singleton.

Return

The DomainParticipantFactory singleton.