![]() |
Libftpp
A modern C++ library
|
Basic TCP server class using POSIX sockets and select() for multi-client communication. More...
#include <server.hpp>
Public Member Functions | |
| Server () | |
| ~Server () | |
| Server (const std::string &address, size_t port) | |
| void | start (const size_t &port=0) |
| void | defineAction (const Message::Type &messageType, const std::function< void(long long &clientID, const Message &msg)> &action) |
| void | sendTo (const Message &message, long long clientID) |
| void | sendToArray (const Message &message, std::vector< long long > clientIDs) |
| void | sendToAll (const Message &message) |
| void | update () |
| void | stop () |
Basic TCP server class using POSIX sockets and select() for multi-client communication.
This class provides a robust TCP server implementation that can handle multiple simultaneous client connections using select() for non-blocking I/O operations. It supports message-based communication with callback functions for different message types.
| std::runtime_error | on network errors (bind, listen, accept failures) |
Definition at line 61 of file server.hpp.
| Server::Server | ( | ) |
Definition at line 3 of file server.cpp.
| Server::~Server | ( | ) |
Definition at line 5 of file server.cpp.
References stop().
| Server::Server | ( | const std::string & | address, |
| size_t | port | ||
| ) |
Definition at line 10 of file server.cpp.
| void Server::defineAction | ( | const Message::Type & | messageType, |
| const std::function< void(long long &clientID, const Message &msg)> & | action | ||
| ) |
Definition at line 163 of file server.cpp.
| void Server::sendTo | ( | const Message & | message, |
| long long | clientID | ||
| ) |
Definition at line 125 of file server.cpp.
References Message::getSerializedData().
Referenced by sendToAll(), and sendToArray().
| void Server::sendToAll | ( | const Message & | message | ) |
Definition at line 154 of file server.cpp.
References sendTo().
| void Server::sendToArray | ( | const Message & | message, |
| std::vector< long long > | clientIDs | ||
| ) |
Definition at line 146 of file server.cpp.
References sendTo().
| void Server::start | ( | const size_t & | port = 0 | ) |
Definition at line 12 of file server.cpp.
References NB_CONNECTION, and stop().
| void Server::stop | ( | ) |
Definition at line 259 of file server.cpp.
| void Server::update | ( | ) |
Definition at line 170 of file server.cpp.