Polygon Crucher SDK - Documentation
Documentation
Loading...
Searching...
No Matches
CXSocket Class Reference
Inheritance diagram for CXSocket:
CDynExchangeSocket CDynClientSocket CDynServerSocket

Classes

struct  DataBlockInfo
 

Public Types

enum  SocketMessageID { SOCKET_IDLE_MESSAGE = 0 }
 
enum  SocketError {
  SOCKET_ERROR_NONE = 0 , SOCKET_ERROR_NO_SERVICE , SOCKET_ERROR_CANT_GET_HOST_ADDRESS , SOCKET_ERROR_NOT_CREATED ,
  SOCKET_ERROR_CANT_CREATE , SOCKET_ERROR_CANT_CLOSE , SOCKET_ERROR_CANT_CONNECT , SOCKET_ERROR_CANT_LISTEN ,
  SOCKET_ERROR_CANT_BIND , SOCKET_ERROR_INIT_FAILS_FIRST = SOCKET_ERROR_NO_SERVICE , SOCKET_ERROR_INIT_FAILS_LAST = SOCKET_ERROR_CANT_BIND , SOCKET_ERROR_CANT_SEND ,
  SOCKET_ERROR_CANT_SELECT , SOCKET_ERROR_CANCEL , SOCKET_ERROR_NO_DATA_AVAILABLE , SOCKET_ERROR_CONNECTION_CLOSED ,
  SOCKET_ERROR_CANT_RECEIVE
}
 
enum  SocketFlags { SOCKET_FLAGS_NONE = 0x00 , SOCKET_FLAGS_CLIENT = 0x01 , SOCKET_FLAGS_SERVER = 0x02 , SOCKET_FLAGS_KEEP_OPEN_ON_DESTROY = 0x10000 }
 
enum  ReadDataMode { READ_WAITING_DATA = 0 , ONLY_IF_AVAILABLE_DATA , WAIT_FOR_AVAILABLE_DATA }
 
typedef enum CXSocket::SocketError SocketError
 
typedef enum CXSocket::SocketFlags SocketFlags
 
typedef enum CXSocket::ReadDataMode ReadDataMode
 
typedef CXArray< DataBlockInfoCDataBlockArray
 
typedef bool(* SocketReceiveDataCallback) (CXSocket &clientSocket, unsigned int messageID, const void *memory, fileuint dataSize, const CDataBlockArray &blocks, void *callbackData)
 
typedef bool(* SocketUserCancelCallback) (void *callbackData)
 

Public Member Functions

xSocket GetHandle ()
 
const xSocket GetHandle () const
 
bool Attach (xSocket handle, bool clientSocket, bool closeOnDestroy)
 
bool Attach (const xSocket handle)
 
bool CloseSocket ()
 
void SetCallbackData (void *callbackUserData)
 
virtual bool UserCancel () const
 
void SetUserCancelCallback (SocketUserCancelCallback callback)
 
virtual bool ReceiveData (CXSocket &clientSocket, unsigned int messageID, const void *memory, fileuint dataSize, const CDataBlockArray &blocks)
 
void SetReceiveDataCallback (SocketReceiveDataCallback callback)
 
SocketError GetErrorCode () const
 
void SetErrorCode (CXSocket::SocketError error)
 
bool SendCustomData (unsigned int messageID, const CCustomData &data) const
 
bool SendDatas (unsigned int messageID, const void *data, fileuint size,...) const
 
bool ReadCustomData (unsigned int &messageID, CCustomData &data, ReadDataMode mode=ONLY_IF_AVAILABLE_DATA) const
 
voidReadDatas (unsigned int &messageID, fileuint &datasize, CDataBlockArray &blocks, ReadDataMode mode) const
 
SocketError HasDataAvailable (bool waitForData) const
 
bool CreateClient (unsigned short socketPort, bool nonBlockingConnection=false, const CXString &address=_T("localhost"))
 
bool CreateServer (unsigned short socketPort, unsigned int maxClientCount, bool startListening=true)
 
bool StartListening ()
 
bool StopListening (bool wait)
 
unsigned int GetMaxClient () const
 
const xSocketGetClients (unsigned int &clientNbr) const
 

Static Public Member Functions

static void Free (void *data)
 

The documentation for this class was generated from the following file: