#include <XPSocketUrgentClass.h>
Inheritance diagram for RNReplicaNet::XPSocketUrgent:
Public Member Functions | |
int | Create (const int port=XPSOCK_PORT_ANY) |
int | SetRawMode (const bool RawMode=true) |
int | MakeBroadcast (void) |
int | ProcessACKS (void) |
int | SendWithACK (const char *data, const int len, const XPAddress &addr) |
int | Send (const char *data, const XPAddress &addr) |
int | Send (const char *data, const int len, const XPAddress &addr) |
int | Recv (char *const data, const int maxlen, XPAddress *const addr) |
Static Public Member Functions | |
static int | GetMaxPacketSize (void) |
|
Creates an urgent socket. Communication through this socket is faster but less reliable. A mechanism is supplied to enable data to be sent in a reliable manner but at the expense of CPU time and network bandwidth Returns XPSOCK_EERROR if an error occurred If port is zero (0) or XPSOCK_PORT_ANY then the network layer will pick a port number to be bound to Using a value of zero for the port when operating a client is advised since the any chosen port might already be in use
|
|
Returns the maximum size for a packet
Reimplemented from RNReplicaNet::XPSocket. |
|
Makes an urgent socket broadcast capable
|
|
Processes the socket ACK queue. Returns the number of pending ACKs left to be received for outbound data. This should be called once a frame if urgent sockets with ACKs are used
|
|
Receives data from an urgent socket
|
|
Send an urgent packet from the socket to the specified address. The data sent is not guaranteed to arrive at the destination. This will return XPSOCK_EUDPSENDFAILED if this method doesn't exist. If so use a non-urgent socket
|
|
Sends a NULL terminated string to the peer (the connected machine) for this socket
|
|
Sends data via the urgent socket to the supplied address and requests that the data is ACK'd and guaranteed to be received This will return XPSOCK_EUDPSENDFAILED if this method doesn't exist. If so use a non-urgent socket
|
|
Sets the raw mode for urgent sockets to be true or false. If true then the ACK layer will not add sequence data.
|