|
GClasses
|
This is a helper class used by GPackageServer. If you implement a custom connection object for a sub-class of GPackageServer, then it should inherrit from this class.
#include <GSocket.h>
Public Member Functions | |
| GPackageConnection (SOCKET sock) | |
| virtual | ~GPackageConnection () |
| char * | next (size_t *pOutSize) |
| Returns the next ready package. Returns NULL if no complete package is ready. More... | |
| int | receive (unsigned int maxBufSize, unsigned int maxPackageSize) |
| Receives any available incoming data and adds it to the queue when a complete package is received. Returns 0 if no errors occur (whether or not a full package was received). Returns 1 if the other end disconnected. Returns 2 if the other end tried to send a package that was too big. Returns 3 if the other end breached protocol by sending a bad header. More... | |
Public Member Functions inherited from GClasses::GTCPConnection | |
| GTCPConnection (SOCKET sock) | |
| virtual | ~GTCPConnection () |
| in_addr | ipAddr () |
| Returns the client's IP address for this connection. (You can use inet_ntoa to convert the value this returns to a string.) More... | |
| void | setSocket (SOCKET sock) |
| Sets the socket for this connection. More... | |
| SOCKET | socket () |
| Returns the socket associated with this connection. More... | |
Public Attributes | |
| unsigned int | m_bufSize |
| unsigned int | m_header [2] |
| unsigned int | m_headerBytes |
| unsigned int | m_payloadBytes |
| char * | m_pBuf |
| char * | m_pCondemned |
| std::queue< GPackageConnectionBuf > | m_q |
Additional Inherited Members | |
Protected Attributes inherited from GClasses::GTCPConnection | |
| SOCKET | m_sock |
|
inline |
|
inlinevirtual |
| char* GClasses::GPackageConnection::next | ( | size_t * | pOutSize | ) |
Returns the next ready package. Returns NULL if no complete package is ready.
| int GClasses::GPackageConnection::receive | ( | unsigned int | maxBufSize, |
| unsigned int | maxPackageSize | ||
| ) |
Receives any available incoming data and adds it to the queue when a complete package is received. Returns 0 if no errors occur (whether or not a full package was received). Returns 1 if the other end disconnected. Returns 2 if the other end tried to send a package that was too big. Returns 3 if the other end breached protocol by sending a bad header.
| unsigned int GClasses::GPackageConnection::m_bufSize |
| unsigned int GClasses::GPackageConnection::m_header[2] |
| unsigned int GClasses::GPackageConnection::m_headerBytes |
| unsigned int GClasses::GPackageConnection::m_payloadBytes |
| char* GClasses::GPackageConnection::m_pBuf |
| char* GClasses::GPackageConnection::m_pCondemned |
| std::queue<GPackageConnectionBuf> GClasses::GPackageConnection::m_q |