37 #define __TACOPIE_CONNECTION_QUEUE_SIZE 1024 96 void stop(
bool wait_for_removal =
false,
bool recursive_wait_for_removal =
true);
118 const std::shared_ptr<tacopie::io_service>&
get_io_service(
void)
const;
124 const std::list<std::shared_ptr<tacopie::tcp_client>>&
get_clients(
void)
const;
162 std::list<std::shared_ptr<tacopie::tcp_client>>
m_clients;
std::mutex m_clients_mtx
Definition: tcp_server.hpp:167
tcp_server & operator=(const tcp_server &)=delete
assignment operator
void stop(bool wait_for_removal=false, bool recursive_wait_for_removal=true)
Definition: tcp_socket.hpp:38
std::list< std::shared_ptr< tacopie::tcp_client > > m_clients
Definition: tcp_server.hpp:162
Definition: tcp_server.hpp:45
tcp_socket & get_socket(void)
void on_client_disconnected(const std::shared_ptr< tcp_client > &client)
on_new_connection_callback_t m_on_new_connection_callback
Definition: tcp_server.hpp:172
Definition: io_service.hpp:48
std::function< bool(const std::shared_ptr< tcp_client > &)> on_new_connection_callback_t
Definition: tcp_server.hpp:79
std::shared_ptr< io_service > m_io_service
Definition: tcp_server.hpp:147
std::atomic< bool > m_is_running
Definition: tcp_server.hpp:157
bool operator==(const tcp_server &rhs) const
tacopie::tcp_socket m_socket
Definition: tcp_server.hpp:152
const std::list< std::shared_ptr< tacopie::tcp_client > > & get_clients(void) const
const std::shared_ptr< tacopie::io_service > & get_io_service(void) const
int fd_t
file descriptor platform type
Definition: typedefs.hpp:36
void on_read_available(fd_t fd)
bool operator!=(const tcp_server &rhs) const
void start(const std::string &host, std::uint32_t port, const on_new_connection_callback_t &callback=nullptr)
bool is_running(void) const