Safe DDS
eprosima::safedds::transport::ITransport Interface Referenceabstract

ITransport interface. More...

#include <ITransport.hpp>

Public Member Functions

virtual void set_message_observer (IMessageObserver &observer) noexcept=0
 Set the message observer. More...
 
virtual ReturnCode set_origin_configuration (const protocol::GUID &guid, const transport::Locator &locator, int32_t priority) noexcept=0
 Specify custom configuration for an origin GUID. More...
 
virtual transport::Locator get_default_multicast_locator (uint32_t logical_port) noexcept=0
 Get the default multicast locator for a given logical port. More...
 
- Public Member Functions inherited from eprosima::safedds::discovery::ILocatorObserver
virtual void on_locator_discovered (const protocol::GUID &guid, bool is_metatraffic, const transport::Locator &locator, const protocol::GUIDPrefix &discoverer) noexcept=0
 callback on new locator discovered. More...
 
virtual void on_group_discovered (const protocol::EndpointGroup &group, bool is_metatraffic, const transport::Locator &locator, const protocol::GUIDPrefix &discoverer) noexcept=0
 callback on new group discovered. More...
 
virtual void on_locators_unregistered (const protocol::GUID &guid, const protocol::GUIDPrefix &discoverer) noexcept=0
 callback on locator not required anymore. More...
 
virtual void on_group_unregistered (const protocol::EndpointGroup &group, const protocol::GUIDPrefix &discoverer) noexcept=0
 callback on group not required anymore. More...
 
- Public Member Functions inherited from eprosima::safedds::transport::IMessageListener
virtual ReturnCode listen_message (memory::IMutableByteArrayView &message, transport::Locator &reception_locator, const execution::TimePoint &timepoint) noexcept=0
 Receive message. More...
 
virtual ReturnCode listen_on_locator (const transport::Locator &reception_locator) noexcept=0
 Prepare transport to listen on a locator. More...
 
virtual transport::Locator listen_on_first_available_locator (const transport::Locator &hint) noexcept=0
 Prepare transport to listen on the first available locator. More...
 
virtual bool wait_until_message_available (const execution::TimePoint &timepoint) const noexcept=0
 Wait until the transport has a message available for processing. More...
 
- Public Member Functions inherited from eprosima::safedds::execution::ISpinnable
virtual void spin (const TimePoint &timepoint) noexcept=0
 Secuential synchronization interface. More...
 
virtual bool has_pending_work () const noexcept=0
 Check if the entity has pending work. More...
 
virtual TimePoint get_next_work_timepoint () const noexcept=0
 Get next work timepoint. More...
 
- Public Member Functions inherited from eprosima::safedds::protocol::IMessageSink
virtual void commit_message (memory::IList< MessageElement > &view_list, const GUID &origin_guid, const GUID &receiver_guid, const execution::TimePoint &timepoint) noexcept=0
 Commit message to the wire protocol message sink. More...
 
virtual void commit_message_to_group (memory::IList< MessageElement > &view_list, const GUID &origin_guid, const protocol::EndpointGroup &group, const execution::TimePoint &timepoint) noexcept=0
 Commit message to a group of wire protocol message sinks. More...
 
virtual uint32_t get_message_max_size () const noexcept=0
 Returns the maximum transfer unit of the wire protocol message sink. More...
 

Static Public Attributes

static constexpr int32_t DEFAULT_TRANSPORT_PRIORITY = 0
 Default transport priority value. More...
 

Protected Member Functions

 ~ITransport () noexcept=default
 Protected destructor ownership defined on creation. More...
 
 ITransport () noexcept=default
 Default creation. More...
 
 ITransport (const ITransport &) noexcept=delete
 Copy deleted. More...
 
 ITransport (ITransport &&) noexcept=delete
 Movement deleted. More...
 
ITransportoperator= (const ITransport &) noexcept=delete
 Copy operator deleted. More...
 
ITransportoperator= (ITransport &&) noexcept=delete
 Movement operator deleted. More...
 
- Protected Member Functions inherited from eprosima::safedds::discovery::ILocatorObserver
 ~ILocatorObserver () noexcept=default
 Protected destructor ownership defined on creation. More...
 
 ILocatorObserver () noexcept=default
 Default creation. More...
 
 ILocatorObserver (const ILocatorObserver &) noexcept=delete
 Copy deleted. More...
 
 ILocatorObserver (ILocatorObserver &&) noexcept=delete
 Movement deleted. More...
 
ILocatorObserveroperator= (const ILocatorObserver &) noexcept=delete
 Copy operator deleted. More...
 
ILocatorObserveroperator= (ILocatorObserver &&) noexcept=delete
 Movement operator deleted. More...
 
- Protected Member Functions inherited from eprosima::safedds::transport::IMessageListener
 ~IMessageListener () noexcept=default
 Protected destructor ownership defined on creation. More...
 
 IMessageListener () noexcept=default
 Default creation. More...
 
 IMessageListener (const IMessageListener &) noexcept=default
 Copy allowed. More...
 
 IMessageListener (IMessageListener &&) noexcept=default
 Movement allowed. More...
 
IMessageListeneroperator= (const IMessageListener &) noexcept=default
 Copy operator allowed. More...
 
IMessageListeneroperator= (IMessageListener &&) noexcept=default
 Movement operator allowed. More...
 
- Protected Member Functions inherited from eprosima::safedds::execution::ISpinnable
 ~ISpinnable () noexcept=default
 Protected destructor ownership defined on creation. More...
 
 ISpinnable () noexcept=default
 Default creation. More...
 
 ISpinnable (const ISpinnable &) noexcept=default
 Copy allowed. More...
 
 ISpinnable (ISpinnable &&) noexcept=default
 Movement allowed. More...
 
ISpinnableoperator= (const ISpinnable &) noexcept=default
 Copy operator allowed. More...
 
ISpinnableoperator= (ISpinnable &&) noexcept=default
 Movement operator allowed. More...
 
- Protected Member Functions inherited from eprosima::safedds::protocol::IMessageSink
 ~IMessageSink () noexcept=default
 Protected destructor ownership defined on creation. More...
 
 IMessageSink () noexcept=default
 Default creation. More...
 
 IMessageSink (const IMessageSink &) noexcept=delete
 Copy deleted. More...
 
 IMessageSink (IMessageSink &&) noexcept=delete
 Movement deleted. More...
 
IMessageSinkoperator= (const IMessageSink &) noexcept=delete
 Copy operator deleted. More...
 
IMessageSinkoperator= (IMessageSink &&) noexcept=delete
 Movement operator deleted. More...
 

Detailed Description

ITransport interface.

Constructor & Destructor Documentation

◆ ~ITransport()

eprosima::safedds::transport::ITransport::~ITransport ( )
protecteddefaultnoexcept

Protected destructor ownership defined on creation.

◆ ITransport() [1/3]

eprosima::safedds::transport::ITransport::ITransport ( )
protecteddefaultnoexcept

Default creation.

◆ ITransport() [2/3]

eprosima::safedds::transport::ITransport::ITransport ( const ITransport )
protecteddeletenoexcept

Copy deleted.

◆ ITransport() [3/3]

eprosima::safedds::transport::ITransport::ITransport ( ITransport &&  )
protecteddeletenoexcept

Movement deleted.

Member Function Documentation

◆ get_default_multicast_locator()

virtual transport::Locator eprosima::safedds::transport::ITransport::get_default_multicast_locator ( uint32_t  logical_port)
pure virtualnoexcept

Get the default multicast locator for a given logical port.

Parameters
logical_portLogical port to be used.
Returns
Multicast locator.

Implemented in eprosima::safedds::transport::posix::UDPv4.

◆ operator=() [1/2]

ITransport& eprosima::safedds::transport::ITransport::operator= ( const ITransport )
protecteddeletenoexcept

Copy operator deleted.

◆ operator=() [2/2]

ITransport& eprosima::safedds::transport::ITransport::operator= ( ITransport &&  )
protecteddeletenoexcept

Movement operator deleted.

◆ set_message_observer()

virtual void eprosima::safedds::transport::ITransport::set_message_observer ( IMessageObserver &  observer)
pure virtualnoexcept

Set the message observer.

Parameters
observerThe message observer.

Implemented in eprosima::safedds::transport::posix::UDPv4.

◆ set_origin_configuration()

virtual ReturnCode eprosima::safedds::transport::ITransport::set_origin_configuration ( const protocol::GUID guid,
const transport::Locator locator,
int32_t  priority 
)
pure virtualnoexcept

Specify custom configuration for an origin GUID.

Parameters
guidGUID of the entity for which a custom sending configuration is required.
locatorLocator specifying the source address and port for datagrams sent by the specified GUID. An invalid locator means that no specific binding is required.
priorityTransport priority to use for datagrams sent by the specified GUID.
Returns
ReturnCode

Implemented in eprosima::safedds::transport::posix::UDPv4.

Member Data Documentation

◆ DEFAULT_TRANSPORT_PRIORITY

constexpr int32_t eprosima::safedds::transport::ITransport::DEFAULT_TRANSPORT_PRIORITY = 0
staticconstexpr

Default transport priority value.


The documentation for this interface was generated from the following file: