Class EDPStatic

Inheritance Relationships

Base Type

  • public eprosima::fastrtps::rtps::EDP (Class EDP)

Class Documentation

class EDPStatic : public eprosima::fastrtps::rtps::EDP

Class EDPStatic, implements a static endpoint discovery module.

Public Types

enum class ExchangeFormat : uint32_t

Different exchange formats supported by Static Discovery.

Values:

enumerator v1
enumerator v1_Reduced

Standard exchange format for Static Discovery.

Exchange format that reduces the used network bandwidth.

Public Functions

EDPStatic(PDP *p, RTPSParticipantImpl *part)

Constructor.

Parameters
  • p – Pointer to the PDPSimple.

  • part – Pointer to the RTPSParticipantImpl.

virtual ~EDPStatic()
virtual bool initEDP(BuiltinAttributes &attributes) override

Abstract method to initialize the EDP.

Parameters

attributes – DiscoveryAttributes structure.

Returns

True if correct.

virtual void assignRemoteEndpoints(const ParticipantProxyData &pdata) override

Abstract method that assigns remote endpoints when a new RTPSParticipantProxyData is discovered.

Parameters

pdata – Pointer to the ParticipantProxyData.

virtual bool removeLocalReader(RTPSReader *R) override

Abstract method that removes a local Reader from the discovery method

Parameters

R – Pointer to the Reader to remove.

Returns

True if correctly removed.

virtual bool removeLocalWriter(RTPSWriter *W) override

Abstract method that removes a local Writer from the discovery method

Parameters

W – Pointer to the Writer to remove.

Returns

True if correctly removed.

virtual bool processLocalReaderProxyData(RTPSReader *reader, ReaderProxyData *rdata) override

After a new local ReaderProxyData has been created some processing is needed (depends on the implementation).

Parameters
Returns

True if correct.

virtual bool processLocalWriterProxyData(RTPSWriter *writer, WriterProxyData *wdata) override

After a new local WriterProxyData has been created some processing is needed (depends on the implementation).

Parameters
  • writer – Pointer to the RTPSWriter object.

  • wdata – Pointer to the Writer ProxyData object.

Returns

True if correct.

bool newRemoteWriter(const GUID_t &participant_guid, const string_255 &participant_name, uint16_t user_id, EntityId_t ent_id = c_EntityId_Unknown, const GUID_t &persistence_guid = GUID_t::unknown())

New Remote Writer has been found and this method process it and calls the pairing methods.

Parameters
  • participant_guid – GUID of the participant.

  • participant_name – Name of the participant.

  • user_id – User Id.

  • ent_id – Entity Id.

  • persistence_guid – GUID used for persistence.

Returns

True if correct.

bool newRemoteReader(const GUID_t &participant_guid, const string_255 &participant_name, uint16_t user_id, EntityId_t ent_id = c_EntityId_Unknown)

New Remote Reader has been found and this method process it and calls the pairing methods.

Parameters
  • participant_guid – GUID of the participant.

  • participant_name – Name of the participant.

  • user_id – User Id.

  • ent_id – Entity Id.

Returns

true if correct.

bool checkEntityId(ReaderProxyData *rdata)

This method checks the provided entityId against the topic type to see if it matches

Parameters

rdata – Pointer to the readerProxyData

Returns

True if its correct.

bool checkEntityId(WriterProxyData *wdata)

This method checks the provided entityId against the topic type to see if it matches

Parameters

wdata – Pointer to the writerProxyData

Returns

True if its correct.