Class BuiltinProtocols
Defined in File BuiltinProtocols.h
Class Documentation
-
class BuiltinProtocols
Class BuiltinProtocols that contains builtin endpoints implementing the discovery and liveliness protocols.
Public Functions
-
bool initBuiltinProtocols(RTPSParticipantImpl *p_part, BuiltinAttributes &attributes)
Initialize the builtin protocols.
- Parameters
attributes – Discovery configuration attributes
p_part – Pointer to the Participant implementation
- Returns
True if correct.
-
void enable()
Enable the builtin protocols
-
bool updateMetatrafficLocators(LocatorList_t &loclist)
Update the metatraffic locatorlist after it was created. Because when you create the EDP readers you are not sure the selected endpoints can be used.
- Parameters
loclist – LocatorList to update
- Returns
True on success
-
void transform_server_remote_locators(NetworkFactory &nf)
Traverses the list of discover servers translating from remote to local locators if possible
- Parameters
nf – NetworkFactory used to make the translation
-
bool addLocalWriter(RTPSWriter *w, const TopicAttributes &topicAtt, const fastdds::dds::WriterQos &wqos)
Add a local Writer to the BuiltinProtocols.
- Parameters
w – Pointer to the RTPSWriter
topicAtt – Attributes of the associated topic
wqos – QoS policies dictated by the publisher
- Returns
True if correct.
-
bool addLocalReader(RTPSReader *R, const TopicAttributes &topicAtt, const fastdds::dds::ReaderQos &rqos, const fastdds::rtps::ContentFilterProperty *content_filter = nullptr)
Add a local Reader to the BuiltinProtocols.
- Parameters
R – Pointer to the RTPSReader.
topicAtt – Attributes of the associated topic
rqos – QoS policies dictated by the subscriber
content_filter – Optional content filtering information.
- Returns
True if correct.
-
bool updateLocalWriter(RTPSWriter *W, const TopicAttributes &topicAtt, const fastdds::dds::WriterQos &wqos)
Update a local Writer QOS
- Parameters
W – Writer to update
topicAtt – Attributes of the associated topic
wqos – New Writer QoS
- Returns
-
bool updateLocalReader(RTPSReader *R, const TopicAttributes &topicAtt, const fastdds::dds::ReaderQos &qos, const fastdds::rtps::ContentFilterProperty *content_filter = nullptr)
Update a local Reader QOS
- Parameters
R – Reader to update
topicAtt – Attributes of the associated topic
qos – New Reader QoS
content_filter – Optional content filtering information.
- Returns
-
bool removeLocalWriter(RTPSWriter *W)
Remove a local Writer from the builtinProtocols.
- Parameters
W – Pointer to the writer.
- Returns
True if correctly removed.
-
bool removeLocalReader(RTPSReader *R)
Remove a local Reader from the builtinProtocols.
- Parameters
R – Pointer to the reader.
- Returns
True if correctly removed.
-
void announceRTPSParticipantState()
Announce RTPSParticipantState (force the sending of a DPD message.)
-
void stopRTPSParticipantAnnouncement()
Stop the RTPSParticipant Announcement (used in tests to avoid multiple packets being send)
-
void resetRTPSParticipantAnnouncement()
Reset to timer to make periodic RTPSParticipant Announcements.
-
inline eprosima::shared_mutex &getDiscoveryMutex() const
Get Discovery mutex
- Returns
Associated Mutex
Public Members
-
BuiltinAttributes m_att
BuiltinAttributes of the builtin protocols.
-
RTPSParticipantImpl *mp_participantImpl
Pointer to the RTPSParticipantImpl.
-
fastdds::dds::builtin::TypeLookupManager *tlm_
Pointer to the TypeLookupManager.
-
LocatorList_t m_metatrafficMulticastLocatorList
Locator list for metatraffic.
-
LocatorList_t m_metatrafficUnicastLocatorList
Locator List for metatraffic unicast.
-
LocatorList_t m_initialPeersList
Initial peers.
-
std::list<eprosima::fastdds::rtps::RemoteServerAttributes> m_DiscoveryServers
Known discovery and backup server container.
-
bool initBuiltinProtocols(RTPSParticipantImpl *p_part, BuiltinAttributes &attributes)