UHD 003.002.003
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes
uhd::transport::udp_simple Class Reference

#include <udp_simple.hpp>

List of all members.

Public Types

typedef boost::shared_ptr
< udp_simple
sptr

Public Member Functions

virtual size_t send (const boost::asio::const_buffer &buff)=0
virtual size_t recv (const boost::asio::mutable_buffer &buff, double timeout=0.1)=0

Static Public Member Functions

static sptr make_connected (const std::string &addr, const std::string &port)
static sptr make_broadcast (const std::string &addr, const std::string &port)

Static Public Attributes

static const size_t mtu = 1500 - 20 - 8
 The maximum number of bytes per udp packet.

Member Typedef Documentation

typedef boost::shared_ptr<udp_simple> uhd::transport::udp_simple::sptr

Member Function Documentation

static sptr uhd::transport::udp_simple::make_broadcast ( const std::string &  addr,
const std::string &  port 
) [static]

Make a new broadcasting udp transport: This transport can send udp broadcast datagrams and receive datagrams from multiple sources. The primary usage for this transport will be to discover devices.

The address will be resolved, it can be a host name or ipv4. The port will be resolved, it can be a port type or number.

Parameters:
addra string representing the destination address
porta string representing the destination port
static sptr uhd::transport::udp_simple::make_connected ( const std::string &  addr,
const std::string &  port 
) [static]

Make a new connected udp transport: This transport is for sending and receiving between this host and a single endpoint. The primary usage for this transport will be control transactions. The underlying implementation is simple and portable (not fast).

The address will be resolved, it can be a host name or ipv4. The port will be resolved, it can be a port type or number.

Parameters:
addra string representing the destination address
porta string representing the destination port
virtual size_t uhd::transport::udp_simple::recv ( const boost::asio::mutable_buffer &  buff,
double  timeout = 0.1 
) [pure virtual]

Receive into the provided buffer. Blocks until data is received or a timeout occurs.

Parameters:
buffa mutable buffer to receive into
timeoutthe timeout in seconds
Returns:
the number of bytes received or zero on timeout
virtual size_t uhd::transport::udp_simple::send ( const boost::asio::const_buffer &  buff) [pure virtual]

Send a single buffer. Blocks until the data is sent.

Parameters:
buffsingle asio buffer
Returns:
the number of bytes sent

Member Data Documentation

const size_t uhd::transport::udp_simple::mtu = 1500 - 20 - 8 [static]

The maximum number of bytes per udp packet.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines