11 #include "RNPlatform/Inc/MemoryTracking.h"
13 #ifndef __XPSOCKETCLASS_H__
14 #define __XPSOCKETCLASS_H__
18 namespace RNReplicaNet
69 int Send(
const char *data);
77 int Send(
const char *data,
const int len);
85 int Recv(
char *
const data,
const int maxlen);
98 int Listen(
const int port = XPSOCK_PORT_ANY);
177 SocketState mSocketState;
181 #define SOCKET_ASSERT_TYPE(x) \
182 if (mSocketState == (x)) \
184 assert(0 && "XPSOCK_ILLEGALOPERATION"); \
185 asocket_lasterror = XPSOCK_ILLEGALOPERATION; \
186 return XPSOCK_EERROR; \
188 if ((x) == TypeUDP) \
190 mSocketState = TypeTCP; \
194 mSocketState = TypeUDP; \
197 #define SOCKET_ASSERT_TYPEP(x) \
198 if (mSocketState == (x)) \
200 assert(0 && "XPSOCK_ILLEGALOPERATION"); \
201 asocket_lasterror = XPSOCK_ILLEGALOPERATION; \
202 return pcXPSOCK_EERROR; \
204 if ((x) == TypeUDP) \
206 mSocketState = TypeTCP; \
210 mSocketState = TypeUDP; \
213 #define pcXPSOCK_EERROR ((RNReplicaNet::XPSocket *) XPSOCK_EERROR)
215 } // namespace RNXPSockets
virtual int Create(void)
Definition: XPSocketClass.cpp:43
int MutateSocket(XPSocket *socket)
Definition: XPSocketClass.cpp:163
int SetSendBuffer(const int size)
Definition: XPSocketClass.cpp:142
int Connect(const XPAddress &addr)
Definition: XPSocketClass.cpp:58
Definition: XPSocket.h:91
static int GetMaxPacketSize(void)
Definition: XPSocketClass.h:145
bool IsAlive(void)
Definition: XPSocketClass.cpp:177
int Send(const char *data)
Definition: XPSocketClass.cpp:65
int SetRecvBuffer(const int size)
Definition: XPSocketClass.cpp:147
int GetAddress(XPAddress *const addr)
Definition: XPSocketClass.cpp:152
t_XPSocket * GetSocketPointer(void)
Definition: XPSocketClass.cpp:182
static int GetLastError(void)
Definition: XPSocketClass.cpp:38
virtual ~XPSocket()
Definition: XPSocketClass.cpp:30
XPSocket * Accept(void)
Definition: XPSocketClass.cpp:114
int GetPeerAddress(XPAddress *const addr)
Definition: XPSocketClass.cpp:157
int Recv(char *const data, const int maxlen)
Definition: XPSocketClass.cpp:79
int Close(void)
Definition: XPSocketClass.cpp:88
Definition: XPSocket.h:167
Definition: XPSocketClass.h:28
int Listen(const int port=XPSOCK_PORT_ANY)
Definition: XPSocketClass.cpp:100
XPSocket()
Definition: XPSocketClass.cpp:21
Definition: XPSocketUrgentClass.h:26