#include <socket.h>
Public Member Functions | |
ssize_t | receive (void *buf, size_t len) |
Receive a data packet from the connected peer host. | |
bool | isInputReady (timeout_t timeout=TIMEOUT_INF) |
See if input queue has data packets available. | |
Protected Member Functions | |
UDPReceive (const IPV4Address &bind, tpport_t port) | |
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 IPV6Address &bind, tpport_t port) | |
Error | connect (const IPV4Host &host, tpport_t port) |
Associate this socket with a specified peer host. | |
Error | connect (const IPV6Host &host, tpport_t port) |
bool | isPendingReceive (timeout_t timeout) |
Check for pending data. | |
void | endReceiver (void) |
End receiver. | |
SOCKET | getReceiver (void) const |
Error | setRouting (bool enable) |
Error | setMulticast (bool enable) |
Error | join (const IPV4Multicast &ia) |
Error | join (const IPV6Multicast &ia) |
Error | drop (const IPV4Multicast &ia) |
Error | drop (const IPV6Multicast &ia) |
This class is used exclusivily to derive the UDPDuplex.
ost::UDPReceive::UDPReceive | ( | const IPV4Address & | bind, | |
tpport_t | port | |||
) | [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. | |
port | number to bind this socket to. |
ost::UDPReceive::UDPReceive | ( | const IPV6Address & | bind, | |
tpport_t | port | |||
) | [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.
Error ost::UDPReceive::drop | ( | const IPV6Multicast & | ia | ) | [inline, protected] |
Error ost::UDPReceive::drop | ( | const IPV4Multicast & | ia | ) | [inline, protected] |
void ost::UDPReceive::endReceiver | ( | void | ) | [inline, protected] |
SOCKET ost::UDPReceive::getReceiver | ( | void | ) | const [inline, protected] |
bool ost::UDPReceive::isInputReady | ( | timeout_t | timeout = TIMEOUT_INF |
) | [inline] |
See if input queue has data packets available.
timeout | in milliseconds. |
References ost::Socket::isPending(), and ost::Socket::pendingInput.
bool ost::UDPReceive::isPendingReceive | ( | timeout_t | timeout | ) | [inline, protected] |
Check for pending data.
timeout | in milliseconds. |
References ost::Socket::isPending(), and ost::Socket::pendingInput.
Error ost::UDPReceive::join | ( | const IPV6Multicast & | ia | ) | [inline, protected] |
Error ost::UDPReceive::join | ( | const IPV4Multicast & | ia | ) | [inline, protected] |
ssize_t ost::UDPReceive::receive | ( | void * | buf, | |
size_t | len | |||
) | [inline] |
Receive a data packet from the connected peer host.
buf | address of data receive buffer. | |
len | size of data receive buffer. |
Error ost::UDPReceive::setMulticast | ( | bool | enable | ) | [inline, protected] |
Error ost::UDPReceive::setRouting | ( | bool | enable | ) | [inline, protected] |