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, bool assign_secure_endpoints) override

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

Parameters:
  • pdata – Pointer to the ParticipantProxyData.

  • assign_secure_endpoints – Whether to try assigning secure endpoints

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.