#include <NetServerTCP.h>

Public Member Functions | |
| NetServerTCP (NetServerTCPProtocol *protocol) | |
| virtual | ~NetServerTCP () |
| virtual bool | started () |
| virtual bool | connect (const char *hostName, int portNo) |
| virtual bool | start (int portNo) |
| virtual void | stop () |
| virtual int | processMessages () |
| virtual void | setMessageHandler (NetMessageHandlerI *handler) |
| virtual void | disconnectAllClients () |
| virtual void | disconnectClient (unsigned int client) |
| virtual void | sendMessageServer (NetBuffer &buffer, unsigned int flags=0) |
| virtual void | sendMessageDest (NetBuffer &buffer, unsigned int destination, unsigned int flags=0) |
Protected Member Functions | |
| bool | pollIncoming () |
| bool | pollDeleted () |
| void | addClient (TCPsocket client) |
| void | sendMessage (unsigned int client, NetMessage *message) |
| unsigned int | getIpAddress (unsigned int destination) |
Static Protected Member Functions | |
| static int | threadFunc (void *) |
Protected Attributes | |
| NetServerTCPProtocol * | protocol_ |
| TCPsocket | server_ |
| unsigned int | lastId_ |
| unsigned int | firstDestination_ |
| SDLNet_SocketSet | sockSet_ |
| std::map< unsigned int, NetServerTCPRead * > | connections_ |
| SDL_mutex * | setMutex_ |
| NetMessageHandler | messageHandler_ |
| bool | checkDeleted_ |
Private Member Functions | |
| NetServerTCP (const NetServerTCP &) | |
| const NetServerTCP & | operator= (const NetServerTCP &) |
Definition at line 30 of file NetServerTCP.h.
| NetServerTCP::NetServerTCP | ( | NetServerTCPProtocol * | protocol | ) |
| NetServerTCP::~NetServerTCP | ( | ) | [virtual] |
| NetServerTCP::NetServerTCP | ( | const NetServerTCP & | ) | [private] |
| bool NetServerTCP::started | ( | ) | [virtual] |
Implements NetInterface.
Definition at line 57 of file NetServerTCP.cpp.
References firstDestination_, and server_.
| bool NetServerTCP::connect | ( | const char * | hostName, | |
| int | portNo | |||
| ) | [virtual] |
Implements NetInterface.
Definition at line 94 of file NetServerTCP.cpp.
References addClient(), and NetBufferUtil::setBlockingIO().
Referenced by ServerBrowserCollect::fetchServerList(), and ServerRegistrationEntry::registerGame().
| bool NetServerTCP::start | ( | int | portNo | ) | [virtual] |
Implements NetInterface.
Definition at line 62 of file NetServerTCP.cpp.
References NULL, server_, NetBufferUtil::setBlockingIO(), and sockSet_.
Referenced by ServerWebServer::start().
| void NetServerTCP::stop | ( | ) | [virtual] |
Implements NetInterface.
Definition at line 89 of file NetServerTCP.cpp.
References disconnectAllClients().
| int NetServerTCP::processMessages | ( | ) | [virtual] |
Implements NetInterface.
Definition at line 52 of file NetServerTCP.cpp.
References messageHandler_, and NetMessageHandler::processMessages().
Referenced by ServerRegistrationEntry::actualThreadFunc(), ServerBrowserCollect::fetchServerList(), and ServerWebServer::processMessages().
| void NetServerTCP::setMessageHandler | ( | NetMessageHandlerI * | handler | ) | [virtual] |
Implements NetInterface.
Definition at line 47 of file NetServerTCP.cpp.
References messageHandler_, and NetMessageHandler::setMessageHandler().
Referenced by ServerBrowserCollect::ServerBrowserCollect(), ServerRegistrationEntry::ServerRegistrationEntry(), and ServerWebServer::start().
| void NetServerTCP::disconnectAllClients | ( | ) | [virtual] |
Implements NetInterface.
Definition at line 224 of file NetServerTCP.cpp.
References connections_, disconnectClient(), and setMutex_.
Referenced by ServerRegistrationEntry::actualThreadFunc(), ServerBrowserCollect::fetchServerList(), and stop().
| void NetServerTCP::disconnectClient | ( | unsigned int | client | ) | [virtual] |
Implements NetInterface.
Definition at line 238 of file NetServerTCP.cpp.
References NetMessage::DisconnectMessage, getIpAddress(), NetMessagePool::instance(), and sendMessage().
Referenced by disconnectAllClients(), and ServerWebServer::processMessage().
| void NetServerTCP::sendMessageServer | ( | NetBuffer & | buffer, | |
| unsigned int | flags = 0 | |||
| ) | [virtual] |
Implements NetInterface.
Definition at line 248 of file NetServerTCP.cpp.
References firstDestination_, and sendMessageDest().
Referenced by ServerBrowserCollect::fetchServerList(), and ServerRegistrationEntry::registerGame().
| void NetServerTCP::sendMessageDest | ( | NetBuffer & | buffer, | |
| unsigned int | destination, | |||
| unsigned int | flags = 0 | |||
| ) | [virtual] |
Implements NetInterface.
Definition at line 254 of file NetServerTCP.cpp.
References NetBuffer::allocate(), NetBuffer::getBuffer(), NetMessage::getBuffer(), NetBuffer::getBufferUsed(), getIpAddress(), NetMessagePool::instance(), NetMessage::NoMessage, sendMessage(), and NetBuffer::setBufferUsed().
Referenced by ServerWebServer::processMessages(), ServerWebServer::processQueue(), ServerWebServer::processRequest(), and sendMessageServer().
| int NetServerTCP::threadFunc | ( | void * | param | ) | [static, protected] |
Definition at line 118 of file NetServerTCP.cpp.
References checkDeleted_, S3D::formatStringBuffer(), Clock::getTimeDifference(), Logger::log(), pollDeleted(), pollIncoming(), and server_.
Referenced by NetServerTCP().
| bool NetServerTCP::pollIncoming | ( | ) | [protected] |
Definition at line 150 of file NetServerTCP.cpp.
References addClient(), DIALOG_ASSERT, NetInterface::getConnects(), server_, NetBufferUtil::setBlockingIO(), and sockSet_.
Referenced by threadFunc().
| bool NetServerTCP::pollDeleted | ( | ) | [protected] |
Definition at line 171 of file NetServerTCP.cpp.
References connections_, NetServerTCPRead::getDisconnect(), and setMutex_.
Referenced by threadFunc().
| void NetServerTCP::addClient | ( | TCPsocket | client | ) | [protected] |
Definition at line 200 of file NetServerTCP.cpp.
References checkDeleted_, connections_, firstDestination_, lastId_, messageHandler_, protocol_, setMutex_, and NetServerTCPRead::start().
Referenced by connect(), and pollIncoming().
| void NetServerTCP::sendMessage | ( | unsigned int | client, | |
| NetMessage * | message | |||
| ) | [protected] |
Definition at line 273 of file NetServerTCP.cpp.
References NetServerTCPRead::addMessage(), NetMessagePool::addToPool(), connections_, S3D::formatStringBuffer(), NetMessagePool::instance(), Logger::log(), and setMutex_.
Referenced by disconnectClient(), and sendMessageDest().
| unsigned int NetServerTCP::getIpAddress | ( | unsigned int | destination | ) | [protected] |
Definition at line 294 of file NetServerTCP.cpp.
References connections_, NetServerTCPRead::getIpAddress(), and setMutex_.
Referenced by disconnectClient(), and sendMessageDest().
| const NetServerTCP& NetServerTCP::operator= | ( | const NetServerTCP & | ) | [private] |
NetServerTCPProtocol* NetServerTCP::protocol_ [protected] |
TCPsocket NetServerTCP::server_ [protected] |
Definition at line 53 of file NetServerTCP.h.
Referenced by pollIncoming(), start(), started(), and threadFunc().
unsigned int NetServerTCP::lastId_ [protected] |
unsigned int NetServerTCP::firstDestination_ [protected] |
Definition at line 55 of file NetServerTCP.h.
Referenced by addClient(), sendMessageServer(), and started().
SDLNet_SocketSet NetServerTCP::sockSet_ [protected] |
Definition at line 56 of file NetServerTCP.h.
Referenced by NetServerTCP(), pollIncoming(), start(), and ~NetServerTCP().
std::map<unsigned int, NetServerTCPRead *> NetServerTCP::connections_ [protected] |
Definition at line 57 of file NetServerTCP.h.
Referenced by addClient(), disconnectAllClients(), getIpAddress(), pollDeleted(), and sendMessage().
SDL_mutex* NetServerTCP::setMutex_ [protected] |
Definition at line 58 of file NetServerTCP.h.
Referenced by addClient(), disconnectAllClients(), getIpAddress(), NetServerTCP(), pollDeleted(), sendMessage(), and ~NetServerTCP().
NetMessageHandler NetServerTCP::messageHandler_ [protected] |
Definition at line 59 of file NetServerTCP.h.
Referenced by addClient(), processMessages(), and setMessageHandler().
bool NetServerTCP::checkDeleted_ [protected] |
1.5.3