Class ReaderProxyData

Class Documentation

class ReaderProxyData

Class ReaderProxyData, used to represent all the information on a Reader (both local and remote) with the purpose of implementing the discovery.

Public Functions

RTPS_DllAPI ReaderProxyData(const size_t max_unicast_locators, const size_t max_multicast_locators, const fastdds::rtps::ContentFilterProperty::AllocationConfiguration &content_filter_limits = {})
RTPS_DllAPI ReaderProxyData(const size_t max_unicast_locators, const size_t max_multicast_locators, const VariableLengthDataLimits &data_limits, const fastdds::rtps::ContentFilterProperty::AllocationConfiguration &content_filter_limits = {})
virtual RTPS_DllAPI ~ReaderProxyData()
RTPS_DllAPI ReaderProxyData(const ReaderProxyData &readerInfo)
RTPS_DllAPI ReaderProxyData & operator= (const ReaderProxyData &readerInfo)
inline RTPS_DllAPI void guid (const GUID_t &guid)
inline RTPS_DllAPI void guid (GUID_t &&guid)
inline RTPS_DllAPI const GUID_t & guid () const
inline RTPS_DllAPI GUID_t & guid ()
inline RTPS_DllAPI void networkConfiguration (const NetworkConfigSet_t &networkConfiguration)
inline RTPS_DllAPI void networkConfiguration (NetworkConfigSet_t &&networkConfiguration)
inline RTPS_DllAPI const NetworkConfigSet_t & networkConfiguration () const
inline RTPS_DllAPI NetworkConfigSet_t & networkConfiguration ()
inline RTPS_DllAPI bool has_locators () const
inline RTPS_DllAPI const RemoteLocatorList & remote_locators () const
RTPS_DllAPI void add_unicast_locator (const Locator_t &locator)
void set_announced_unicast_locators(const LocatorList_t &locators)
void set_remote_unicast_locators(const LocatorList_t &locators, const NetworkFactory &network)
RTPS_DllAPI void add_multicast_locator (const Locator_t &locator)
void set_multicast_locators(const LocatorList_t &locators, const NetworkFactory &network)
void set_locators(const RemoteLocatorList &locators)
void set_remote_locators(const RemoteLocatorList &locators, const NetworkFactory &network, bool use_multicast_locators)
inline RTPS_DllAPI void key (const InstanceHandle_t &key)
inline RTPS_DllAPI void key (InstanceHandle_t &&key)
inline RTPS_DllAPI InstanceHandle_t key () const
inline RTPS_DllAPI InstanceHandle_t & key ()
inline RTPS_DllAPI void RTPSParticipantKey (const InstanceHandle_t &RTPSParticipantKey)
inline RTPS_DllAPI void RTPSParticipantKey (InstanceHandle_t &&RTPSParticipantKey)
inline RTPS_DllAPI InstanceHandle_t RTPSParticipantKey () const
inline RTPS_DllAPI InstanceHandle_t & RTPSParticipantKey ()
inline RTPS_DllAPI void typeName (const string_255 &typeName)
inline RTPS_DllAPI void typeName (string_255 &&typeName)
inline RTPS_DllAPI const string_255 & typeName () const
inline RTPS_DllAPI string_255 & typeName ()
inline RTPS_DllAPI void topicName (const string_255 &topicName)
inline RTPS_DllAPI void topicName (string_255 &&topicName)
inline RTPS_DllAPI const string_255 & topicName () const
inline RTPS_DllAPI string_255 & topicName ()
inline RTPS_DllAPI void userDefinedId (uint16_t userDefinedId)
inline RTPS_DllAPI uint16_t userDefinedId () const
inline RTPS_DllAPI uint16_t & userDefinedId ()
inline RTPS_DllAPI void content_filter (const fastdds::rtps::ContentFilterProperty &filter)
inline RTPS_DllAPI void content_filter (fastdds::rtps::ContentFilterProperty &&filter)
inline RTPS_DllAPI const fastdds::rtps::ContentFilterProperty & content_filter () const
inline RTPS_DllAPI fastdds::rtps::ContentFilterProperty & content_filter ()
inline RTPS_DllAPI void isAlive (bool isAlive)
inline RTPS_DllAPI bool isAlive () const
inline RTPS_DllAPI bool & isAlive ()
inline RTPS_DllAPI void topicKind (TopicKind_t topicKind)
inline RTPS_DllAPI TopicKind_t topicKind () const
inline RTPS_DllAPI TopicKind_t & topicKind ()
inline RTPS_DllAPI void type_id (const TypeIdV1 &other_type_id)
inline RTPS_DllAPI const TypeIdV1 & type_id () const
inline RTPS_DllAPI TypeIdV1 & type_id ()
inline RTPS_DllAPI bool has_type_id () const
inline RTPS_DllAPI void type (const TypeObjectV1 &other_type)
inline RTPS_DllAPI const TypeObjectV1 & type () const
inline RTPS_DllAPI TypeObjectV1 & type ()
inline RTPS_DllAPI bool has_type () const
inline RTPS_DllAPI void type_information (const xtypes::TypeInformation &other_type_information)
inline RTPS_DllAPI const xtypes::TypeInformation & type_information () const
inline RTPS_DllAPI xtypes::TypeInformation & type_information ()
inline RTPS_DllAPI bool has_type_information () const
inline bool disable_positive_acks() const
inline void set_sample_identity(const SampleIdentity &sid)

Set participant client server sample identity

Parameters:

sid – valid SampleIdentity

inline SampleIdentity get_sample_identity() const

Retrieve participant SampleIdentity

Returns:

SampleIdentity

uint32_t get_serialized_size(bool include_encapsulation) const

Get the size in bytes of the CDR serialization of this object.

Parameters:

include_encapsulation – Whether to include the size of the encapsulation info.

Returns:

size in bytes of the CDR serialization.

bool writeToCDRMessage(CDRMessage_t *msg, bool write_encapsulation) const

Write as a parameter list on a CDRMessage_t

Returns:

True on success

bool readFromCDRMessage(CDRMessage_t *msg, const NetworkFactory &network, bool is_shm_transport_available, bool should_filter_locators, fastdds::rtps::VendorId_t source_vendor_id = c_VendorId_eProsima)

Read the information from a CDRMessage_t. The position of the message must be in the beginning on the parameter list.

Parameters:
  • msg – Pointer to the message.

  • network – Reference to network factory for locator validation and transformation

  • is_shm_transport_available – Indicates whether the Reader is reachable by SHM.

  • should_filter_locators – Whether to retrieve the locators before the external locators filtering

  • source_vendor_id – VendorId of the source participant from which the message was received

Returns:

true on success

void clear()

Clear (put to default) the information.

bool is_update_allowed(const ReaderProxyData &rdata) const

Check if this object can be updated with the information on another object.

Parameters:

rdataReaderProxyData object to be checked.

Returns:

true if this object can be updated with the information on rdata.

void update(ReaderProxyData *rdata)

Update the information (only certain fields will be updated).

Parameters:

rdata – Pointer to the object from which we are going to update.

void copy(ReaderProxyData *rdata)

Copy ALL the information from another object.

Parameters:

rdata – Pointer to the object from where the information must be copied.

Public Members

bool m_expectsInlineQos
ReaderQos m_qos

Reader Qos.