19.2.7.2. RTPSParticipant
-
class RTPSParticipant
Class RTPSParticipant, contains the public API for a RTPSParticipant.
Public Functions
-
const GUID_t &getGuid() const
Get the GUID_t of the RTPSParticipant.
-
void announceRTPSParticipantState()
Force the announcement of the RTPSParticipant state.
-
void stopRTPSParticipantAnnouncement()
Stop the RTPSParticipant announcement period. //TODO remove this method because is only for testing.
-
void resetRTPSParticipantAnnouncement()
Reset the RTPSParticipant announcement period. //TODO remove this method because is only for testing.
-
bool newRemoteWriterDiscovered(const GUID_t &pguid, int16_t userDefinedId)
Indicate the Participant that you have discovered a new Remote Writer. This method can be used by the user to implements its own Static Endpoint Discovery Protocol
- Parameters:
pguid – GUID_t of the discovered Writer.
userDefinedId – ID of the discovered Writer.
- Returns:
True if correctly added.
-
bool newRemoteReaderDiscovered(const GUID_t &pguid, int16_t userDefinedId)
Indicate the Participant that you have discovered a new Remote Reader. This method can be used by the user to implements its own Static Endpoint Discovery Protocol
- Parameters:
pguid – GUID_t of the discovered Reader.
userDefinedId – ID of the discovered Reader.
- Returns:
True if correctly added.
-
uint32_t getRTPSParticipantID() const
Get the Participant ID.
- Returns:
Participant ID.
-
bool register_writer(RTPSWriter *rtps_writer, const TopicDescription &topic, const fastdds::dds::WriterQos &qos)
Register a Writer in the BuiltinProtocols.
- Parameters:
rtps_writer – Pointer to the RTPSWriter.
topic – Information regarding the topic where the writer is registering.
qos – Qos policies of the writer.
- Returns:
True if correctly registered.
-
bool register_reader(RTPSReader *rtps_reader, const TopicDescription &topic, const fastdds::dds::ReaderQos &qos, const ContentFilterProperty *content_filter = nullptr)
Register a Reader in the BuiltinProtocols.
- Parameters:
rtps_reader – Pointer to the RTPSReader.
topic – Information regarding the topic where the reader is registering.
qos – Qos policies of the reader.
content_filter – Optional content filtering information.
- Returns:
True if correctly registered.
-
void update_attributes(const RTPSParticipantAttributes &patt)
Update participant attributes.
- Parameters:
patt – New participant attributes.
-
bool update_writer(RTPSWriter *rtps_writer, const fastdds::dds::WriterQos &wqos)
Update local writer QoS
- Parameters:
rtps_writer – Writer to update.
wqos – New QoS for the writer.
- Returns:
True on success
-
bool update_reader(RTPSReader *rtps_reader, const fastdds::dds::ReaderQos &rqos, const ContentFilterProperty *content_filter = nullptr)
Update local reader QoS
- Parameters:
rtps_reader – Reader to update.
rqos – New QoS for the reader.
content_filter – Optional content filtering information.
- Returns:
True on success
-
std::vector<std::string> getParticipantNames() const
Returns a list with the participant names.
- Returns:
list of participant names.
-
const RTPSParticipantAttributes &get_attributes() const
Get a reference of the current state of the RTPSParticipantParameters.
- Returns:
RTPSParticipantAttributes reference.
-
uint32_t getMaxMessageSize() const
Retrieves the maximum message size.
-
uint32_t getMaxDataSize() const
Retrieves the maximum data size.
-
WLP *wlp() const
A method to retrieve the built-in writer liveliness protocol.
- Returns:
Writer liveliness protocol
-
bool get_new_entity_id(EntityId_t &entityId)
Fills a new entityId if set to unknown, or checks if a entity already exists with that entityId in other case.
- Parameters:
entityId – to check of fill. If filled, EntityKind will be “vendor-specific” (0x01)
- Returns:
True if filled or the entityId is available.
-
void set_check_type_function(std::function<bool(const std::string&)> &&check_type)
Allows setting a function to check if a type is already known by the top level API participant.
-
void set_listener(RTPSParticipantListener *listener)
Modifies the participant listener.
- Parameters:
listener –
-
uint32_t get_domain_id() const
Retrieves the DomainId.
-
void enable()
This operation enables the RTPSParticipantImpl.
-
bool ignore_participant(const GuidPrefix_t &participant_guid)
Ignore all messages coming from the RTPSParticipant.
- Parameters:
participant_guid – [in] RTPSParticipant GUID to be ignored
- Returns:
True if correctly included into the ignore collection. False otherwise.
-
bool ignore_writer(const GUID_t &writer_guid)
Ignore all messages coming from the RTPSWriter.
- Parameters:
writer_guid – [in] RTPSWriter GUID to be ignored
- Returns:
True if correctly included into the ignore collection. False otherwise.
-
bool ignore_reader(const GUID_t &reader_guid)
Ignore all messages coming from the RTPSReader.
- Parameters:
reader_guid – [in] RTPSReader GUID to be ignored
- Returns:
True if correctly included into the ignore collection. False otherwise.
-
std::vector<TransportNetmaskFilterInfo> get_netmask_filter_info() const
Returns registered transports’ netmask filter information (transport’s netmask filter kind and allowlist).
- Returns:
A vector with all registered transports’ netmask filter information.
-
bool get_publication_info(fastdds::rtps::PublicationBuiltinTopicData &data, const GUID_t &writer_guid) const
Fills the provided publication discovery data with the information of the writer identified by writer_guid.
- Parameters:
data – [out] publication discovery data to fill.
writer_guid – [in] GUID of the writer to get the information from.
- Returns:
True if the writer was found and the data was filled.
-
bool get_subscription_info(fastdds::rtps::SubscriptionBuiltinTopicData &data, const GUID_t &reader_guid) const
Fills the provided subscription discovery data with the information of the reader identified by reader_guid.
- Parameters:
data – [out] subscription discovery data to fill.
reader_guid – [in] GUID of the reader to get the information from.
- Returns:
True if the reader was found and the data was filled.
-
bool is_security_enabled_for_writer(const WriterAttributes &writer_attributes)
Checks whether the writer has security attributes enabled.
- Parameters:
writer_attributes – Attributes of the writer as given to the RTPSParticipantImpl::create_writer
-
bool is_security_enabled_for_reader(const ReaderAttributes &reader_attributes)
Checks whether the reader has security attributes enabled.
- Parameters:
reader_attributes – Attributes of the reader as given to the RTPSParticipantImpl::create_reader
-
const GUID_t &getGuid() const