18.3.1.1. TransportDescriptorInterface

struct TransportDescriptorInterface

Virtual base class for the data type used to define transport configuration. It acts as a builder for a given transport meaning that it allows to configure the transport, and then a new Transport can be built according to this configuration using its create_transport() factory member function.

  • maxMessageSize: maximum size of a single message in the transport.

  • maxInitialPeersRange: number of channels opened with each initial remote peer.

Subclassed by eprosima::fastdds::rtps::ChainingTransportDescriptor, eprosima::fastdds::rtps::PortBasedTransportDescriptor

Public Functions

inline TransportDescriptorInterface(uint32_t maximumMessageSize, uint32_t maximumInitialPeersRange)

Constructor.

inline TransportDescriptorInterface(const TransportDescriptorInterface &t)

Copy constructor.

inline TransportDescriptorInterface &operator=(const TransportDescriptorInterface &t)

Copy assignment.

virtual ~TransportDescriptorInterface() = default

Destructor.

virtual TransportInterface *create_transport() const = 0

Factory method pattern. It will create and return a TransportInterface corresponding to this descriptor. This provides an interface to the NetworkFactory to create the transports without the need to know about their type

virtual uint32_t min_send_buffer_size() const = 0

Returns the minimum size required for a send operation.

inline virtual uint32_t max_message_size() const

Returns the maximum size expected for received messages.

inline virtual uint32_t max_initial_peers_range() const

Returns the maximum number of opened channels for each initial remote peer (maximum number of guessed initial peers to try to connect)

inline bool operator==(const TransportDescriptorInterface &t) const

Comparison operator.

inline void lock()

Lock internal mutex (for Fast-DDS internal use)

inline void unlock()

Unlock internal mutex (for Fast-DDS internal use)

Public Members

uint32_t maxMessageSize

Maximum size of a single message in the transport.

uint32_t maxInitialPeersRange

Number of channels opened with each initial remote peer.