| Fast DDS Version 3.3.0 Fast DDS

Loading...
Searching...
No Matches
UDPTransportDescriptor Struct Reference
eProsima Fast DDS API Reference » RTPS » Common Module. » Transport Module.

UDP Transport configuration. More...

`#include <UDPTransportDescriptor.hpp>`

Inheritance diagram for UDPTransportDescriptor:
[legend]

## Public Member Functions

virtual | ~UDPTransportDescriptor ()=default
| Destructor.
FASTDDS_EXPORTED_API | UDPTransportDescriptor ()
| Constructor.
FASTDDS_EXPORTED_API | UDPTransportDescriptor (const UDPTransportDescriptor &t)=default
| Copy constructor.
FASTDDS_EXPORTED_API UDPTransportDescriptor & | operator= (const UDPTransportDescriptor &t)=default
| Copy assignment.
FASTDDS_EXPORTED_API bool | operator== (const UDPTransportDescriptor &t) const
| Comparison operator.
Public Member Functions inherited from SocketTransportDescriptor
FASTDDS_EXPORTED_API | SocketTransportDescriptor (uint32_t maximumMessageSize, uint32_t maximumInitialPeersRange)
| Constructor.
FASTDDS_EXPORTED_API | SocketTransportDescriptor (const SocketTransportDescriptor &t)=default
| Copy constructor.
FASTDDS_EXPORTED_API SocketTransportDescriptor & | operator= (const SocketTransportDescriptor &t)=default
| Copy assignment.
virtual FASTDDS_EXPORTED_API | ~SocketTransportDescriptor ()=default
| Destructor.
virtual FASTDDS_EXPORTED_API uint32_t | min_send_buffer_size () const override
| Returns the minimum size required for a send operation.
bool FASTDDS_EXPORTED_API | operator== (const SocketTransportDescriptor &t) const
| Comparison operator.
Public Member Functions inherited from PortBasedTransportDescriptor
FASTDDS_EXPORTED_API | PortBasedTransportDescriptor (uint32_t maximumMessageSize, uint32_t maximumInitialPeersRange)
| Constructor.
FASTDDS_EXPORTED_API | PortBasedTransportDescriptor (const PortBasedTransportDescriptor &t)=default
| Copy constructor.
FASTDDS_EXPORTED_API PortBasedTransportDescriptor & | operator= (const PortBasedTransportDescriptor &t)=default
| Copy assignment.
virtual FASTDDS_EXPORTED_API | ~PortBasedTransportDescriptor ()=default
| Destructor.
bool FASTDDS_EXPORTED_API | operator== (const PortBasedTransportDescriptor &t) const
| Comparison operator.
virtual FASTDDS_EXPORTED_API const ThreadSettings & | get_thread_config_for_port (uint32_t port) const
| Get the ThreadSettings for a specific port.
virtual FASTDDS_EXPORTED_API bool | set_thread_config_for_port (const uint32_t &port, const ThreadSettings &thread_settings)
FASTDDS_EXPORTED_API const ThreadSettings & | default_reception_threads () const
| Returns the ThreadSettings for the default reception threads.
virtual FASTDDS_EXPORTED_API void | default_reception_threads (const ThreadSettings &default_reception_threads)
| Set the ThreadSettings for the default reception threads.
FASTDDS_EXPORTED_API const ReceptionThreadsConfigMap & | reception_threads () const
| Returns the ThreadSettings for the user-configured reception threads.
virtual FASTDDS_EXPORTED_API bool | reception_threads (const ReceptionThreadsConfigMap &reception_threads)
| Set the ThreadSettings for the user-configured reception threads.
Public Member Functions inherited from TransportDescriptorInterface
FASTDDS_EXPORTED_API | TransportDescriptorInterface (uint32_t maximumMessageSize, uint32_t maximumInitialPeersRange)
| Constructor.
FASTDDS_EXPORTED_API | TransportDescriptorInterface (const TransportDescriptorInterface &t)
| Copy constructor.
FASTDDS_EXPORTED_API TransportDescriptorInterface & | operator= (const TransportDescriptorInterface &t)
| Copy assignment.
virtual FASTDDS_EXPORTED_API | ~TransportDescriptorInterface ()=default
| Destructor.
virtual FASTDDS_EXPORTED_API TransportInterface * | create_transport () const =0
| Factory method pattern.
virtual FASTDDS_EXPORTED_API uint32_t | max_message_size () const
| Returns the maximum size expected for received messages.
virtual FASTDDS_EXPORTED_API 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).
FASTDDS_EXPORTED_API bool | operator== (const TransportDescriptorInterface &t) const
| Comparison operator.
FASTDDS_EXPORTED_API void | lock ()
| Lock internal mutex (for Fast-DDS internal use).
FASTDDS_EXPORTED_API void | unlock ()
| Unlock internal mutex (for Fast-DDS internal use).

## Public Attributes

uint16_t | m_output_udp_socket
| Source port to use for outgoing datagrams.
bool | non_blocking_send = false
| Whether to use non-blocking calls to send_to().
Public Attributes inherited from SocketTransportDescriptor
uint32_t | sendBufferSize
| Length of the send buffer.
uint32_t | receiveBufferSize
| Length of the receive buffer.
std::vector< std::string > | interfaceWhiteList
| Allowed interfaces in an IP or device name string format.
NetmaskFilterKind | netmask_filter
| Transport's netmask filter configuration.
std::vector< AllowedNetworkInterface > | interface_allowlist
| Allowed interfaces in an IP or device name string format, each with a specific netmask filter configuration.
std::vector< BlockedNetworkInterface > | interface_blocklist
| Blocked interfaces in an IP or device name string format.
uint8_t | TTL
| Specified time to live (8bit - 255 max TTL).
Public Attributes inherited from TransportDescriptorInterface
uint32_t | maxMessageSize
| Maximum size of a single message in the transport.
uint32_t | maxInitialPeersRange
| Number of channels opened with each initial remote peer.

## Additional Inherited Members

Public Types inherited from PortBasedTransportDescriptor
using | ReceptionThreadsConfigMap = std::map<uint32_t, ThreadSettings>
Protected Attributes inherited from PortBasedTransportDescriptor
ThreadSettings | default_reception_threads_
| Thread settings for the default reception threads.
ReceptionThreadsConfigMap | reception_threads_
| Thread settings for the specific reception threads, indexed by port.

## Detailed Description

UDP Transport configuration.

- `m_output_udp_socket:` source port to use for outgoing datagrams.
- `non_blocking_send:` do not block on send operations. When it is set to true, send operations will return immediately if the buffer is full, but no error will be returned to the upper layer. This means that the application will behave as if the datagram is sent and lost.

## Constructor & Destructor Documentation

## ◆ ~UDPTransportDescriptor()

virtual ~UDPTransportDescriptor | ( |  | ) |

virtual default

Destructor.

## ◆ UDPTransportDescriptor() [1/2]

FASTDDS_EXPORTED_API UDPTransportDescriptor | ( |  | ) |

Constructor.

## ◆ UDPTransportDescriptor() [2/2]

FASTDDS_EXPORTED_API UDPTransportDescriptor | ( | const UDPTransportDescriptor & | t | ) |

default

Copy constructor.

## Member Function Documentation

## ◆ operator=()

FASTDDS_EXPORTED_API UDPTransportDescriptor & operator= | ( | const UDPTransportDescriptor & | t | ) |

default

Copy assignment.

## ◆ operator==()

FASTDDS_EXPORTED_API bool operator== | ( | const UDPTransportDescriptor & | t | ) | const

Comparison operator.

## Member Data Documentation

## ◆ m_output_udp_socket

uint16_t m_output_udp_socket

Source port to use for outgoing datagrams.

## ◆ non_blocking_send

bool non_blocking_send = false

Whether to use non-blocking calls to send_to().

When set to true, calls to send_to() will return immediately if the buffer is full, but no error will be returned to the upper layer. This means that the application will behave as if the datagram is sent but lost (i.e. throughput may be reduced). This value is specially useful on high-frequency best-effort writers.

When set to false, calls to send_to() will block until the network buffer has space for the datagram. This may hinder performance on high-frequency writers.

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

- include/fastdds/rtps/transport/UDPTransportDescriptor.hpp