ucommon
|
Representing half of a two-way UDP connection, the UDP receiver can receive data from another peer host or subnet. More...
#include <udp.h>
Public Member Functions | |
bool | isInputReady (timeout_t timeout=ucommon::Timer::inf) |
See if input queue has data packets available. | |
ssize_t | receive (void *buf, size_t len) |
Receive a data packet from the connected peer host. | |
Protected Member Functions | |
Error | connect (const ucommon::Socket::address &host) |
Associate this socket with a specified peer host. | |
Error | connect (const IPV4Host &host, tpport_t port) |
Error | connect (const IPV6Host &host, tpport_t port) |
Error | drop (const IPV4Multicast &ia) |
Error | drop (const IPV6Multicast &ia) |
void | endReceiver (void) |
End receiver. | |
SOCKET | getReceiver (void) const |
bool | isPendingReceive (timeout_t timeout) |
Check for pending data. | |
Error | join (const ucommon::Socket::address &ia) |
Error | join (const IPV4Multicast &ia) |
Error | join (const IPV6Multicast &ia) |
Error | setMulticast (bool enable) |
Set the multicast. | |
Error | setRouting (bool enable) |
UDPReceive (const ucommon::Socket::address &bind) | |
Create a UDP receiver, bind it to a specific interface and port address so that other UDP sockets on remote machines (or the same host) may find and send UDP messages to it, and associate it with a given port on a peer host. | |
UDPReceive (const IPV4Address &bind, tpport_t port) | |
UDPReceive (const IPV6Address &bind, tpport_t port) |
Representing half of a two-way UDP connection, the UDP receiver can receive data from another peer host or subnet.
This class is used exclusivily to derive the UDPDuplex.
ost::UDPReceive::UDPReceive | ( | const ucommon::Socket::address & | bind | ) | [protected] |
Create a UDP receiver, bind it to a specific interface and port address so that other UDP sockets on remote machines (or the same host) may find and send UDP messages to it, and associate it with a given port on a peer host.
On failure to bind, an exception is thrown.
bind | address to bind this socket to. |
Error ost::UDPReceive::connect | ( | const ucommon::Socket::address & | host | ) | [protected] |
Associate this socket with a specified peer host.
The port number from the constructor will be used. All UDP packets will be sent received from the specified host.
host | host network address to connect socket to. |
port | host transport port to connect socket to. |
Reimplemented from ost::UDPSocket.
Reimplemented in ost::UDPDuplex.
bool ost::UDPReceive::isInputReady | ( | timeout_t | timeout = ucommon::Timer::inf | ) | [inline] |
bool ost::UDPReceive::isPendingReceive | ( | timeout_t | timeout | ) | [inline, protected] |
ssize_t ost::UDPReceive::receive | ( | void * | buf, |
size_t | len | ||
) | [inline] |