Class RTPSParticipant
Defined in File RTPSParticipant.h
Class Documentation
-
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 registerWriter(RTPSWriter *Writer, const TopicAttributes &topicAtt, const WriterQos &wqos)
Register a RTPSWriter in the builtin Protocols.
- Parameters:
Writer – Pointer to the RTPSWriter.
topicAtt – Topic Attributes where you want to register it.
wqos – WriterQos.
- Returns:
True if correctly registered.
-
bool registerReader(RTPSReader *Reader, const TopicAttributes &topicAtt, const ReaderQos &rqos, const fastdds::rtps::ContentFilterProperty *content_filter = nullptr)
Register a RTPSReader in the builtin Protocols.
- Parameters:
Reader – Pointer to the RTPSReader.
topicAtt – Topic Attributes where you want to register it.
rqos – ReaderQos.
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 updateWriter(RTPSWriter *Writer, const TopicAttributes &topicAtt, const WriterQos &wqos)
Update writer QOS
- Parameters:
Writer – to update
topicAtt – Topic Attributes where you want to register it.
wqos – New writer QoS
- Returns:
true on success
-
bool updateReader(RTPSReader *Reader, const TopicAttributes &topicAtt, const ReaderQos &rqos, const fastdds::rtps::ContentFilterProperty *content_filter = nullptr)
Update reader QOS
- Parameters:
Reader – Pointer to the RTPSReader to update
topicAtt – Topic Attributes where you want to register it.
rqos – New reader QoS
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 &getRTPSParticipantAttributes() const
Get a copy of the actual state of the RTPSParticipantParameters
- Returns:
RTPSParticipantAttributes copy of the params.
-
ResourceEvent &get_resource_event() const
-
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.
-
fastdds::dds::builtin::TypeLookupManager *typelookup_manager() const
Retrieves the built-in typelookup service manager.
- Returns:
-
void set_listener(RTPSParticipantListener *listener)
Modifies the participant listener.
- Parameters:
listener –
-
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<fastdds::rtps::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.
Protected Attributes
-
RTPSParticipantImpl *mp_impl
Pointer to the implementation.
-
const GUID_t &getGuid() const