80 size_t maxAllowedUnsentAsyncMessages = MAX_UNSENT_ASYNC_MSG_COUNT);
97 TcpServer(uint16_t listenPort,
size_t minAmountToRead,
101 size_t maxAllowedUnsentAsyncMessages = MAX_UNSENT_ASYNC_MSG_COUNT);
126 uint16_t ListenPort()
const;
131 size_t NumberOfClients()
const;
136 void CloseAcceptor();
177 void AcceptConnection();
185 void ProcessCloseAcceptor();
189 std::unique_ptr<IoContextThreadGroup> m_ioThreadGroup{};
195 std::unique_ptr<boost_tcp_acceptor_t> m_acceptor{};
197 uint16_t m_listenPort{0};
199 size_t m_minAmountToRead{0};
207 size_t m_maxAllowedUnsentAsyncMessages{MAX_UNSENT_ASYNC_MSG_COUNT};
boost_iocontext_t & m_ioContext
I/O context reference.
Definition: TcpServer.h:191
std::function< size_t(const char_buffer_t &)> check_bytes_left_to_read_t
Typedef to bytes left to reading checking utility function object.
Definition: AsioDefines.h:288
File containing declarations relating the IoContextThreadGroup class.
std::function< void(const char_buffer_t &)> message_received_handler_t
Typedef to message received handler function object.
Definition: AsioDefines.h:290
Class defining a thread synchronisation event.
Definition: SyncEvent.h:70
File containing TCP connections class declaration.
The core_lib namespace.
Definition: AsioDefines.h:59
TCP connections class to manage the TcpConnection objects.
Definition: TcpConnections.h:52
eSendOption
Enumeration to control nagle algorithm.
Definition: AsioDefines.h:82
nagleOn - Send when possible.
std::pair< std::string, uint16_t > connection_t
Typedef describing a network connection as (address, port).
Definition: AsioDefines.h:152
A bi-directional TCP server.
Definition: TcpServer.h:53
boost_asio::io_context boost_iocontext_t
Boost IO context convenience typedef.
Definition: AsioDefines.h:46
File containing declaration of SyncEvent class.
std::vector< char > char_buffer_t
Typedef to generic char buffer based on s std::vector<char>.
Definition: AsioDefines.h:239
boost_iocontext_t::strand m_strand
I/O context strand.
Definition: TcpServer.h:193
std::shared_ptr< tcp::TcpConnection > tcp_conn_ptr_t
Typedef describing shared_ptr to a TcpConnection object.
Definition: AsioDefines.h:156