libjmmcg
build_2783
A C++ library containing an eclectic mix of useful, advanced components.
|
A simple TCP/IP socket wrapper using boost::asio for loop-back servers. More...
#include <socket_server_manager_asio.hpp>
Classes | |
class | send_heartbeats |
Public Types | |
using | base_t = manager< LkT > |
using | heartbeats_t = SvrHBs |
Start sending heartbeats upon a connection. More... | |
using | socket_t = typename base_t::socket_t |
using | server_to_client_flow_t = typename base_t::server_to_client_flow_t |
Public Types inherited from jmmcg::socket::server_manager::asio::manager< LkT > | |
using | acceptor_t = boost::asio::ip::tcp::acceptor |
using | socket_t = socket::asio::socket_wrapper< LkT > |
using | server_to_client_flow_t = std::function< void(socket_t &)> |
Public Member Functions | |
loopback (boost::asio::ip::address const &addr, unsigned short port_num, std::size_t, std::size_t max_message_size, unsigned short timeout, typename socket_t::socket_priority priority, std::size_t incoming_cpu, server_to_client_flow_t &&server_to_client_flow) | |
template<class RecvProcMsgs > | |
void | start_accept (RecvProcMsgs const &proc_fn) noexcept(false) |
Non-blocking call to wait for new connections from a client. More... | |
Public Member Functions inherited from jmmcg::socket::server_manager::asio::manager< LkT > | |
manager (boost::asio::ip::address const &addr, unsigned short port_num, std::size_t min_message_size, std::size_t max_message_size, unsigned short timeout, typename socket_t::socket_priority priority, std::size_t incoming_cpu, server_to_client_flow_t &&server_to_client_flow) | |
Create a new connection to the specified TCP socket using the TCP/IP protocol. More... | |
void | run () |
Blocking wait for a new connection from a client. More... | |
void | stop () |
std::string | to_string () const noexcept(false) |
Additional Inherited Members | |
Static Public Member Functions inherited from jmmcg::socket::server_manager::asio::manager< LkT > | |
static void | set_options (acceptor_t &acceptor, socket_t &skt) |
Protected Member Functions inherited from jmmcg::socket::server_manager::asio::manager< LkT > | |
~manager ()=default | |
void | set_options (socket_t &skt) |
Protected Attributes inherited from jmmcg::socket::server_manager::asio::manager< LkT > | |
boost::asio::io_context | io_context {} |
acceptor_t | acceptor |
server_to_client_flow_t | server_to_client_flow_ |
A simple TCP/IP socket wrapper using boost::asio for loop-back servers.
Definition at line 189 of file socket_server_manager_asio.hpp.
using jmmcg::socket::server_manager::asio::loopback< SvrHBs, LkT >::base_t = manager<LkT> |
Definition at line 191 of file socket_server_manager_asio.hpp.
using jmmcg::socket::server_manager::asio::loopback< SvrHBs, LkT >::heartbeats_t = SvrHBs |
Start sending heartbeats upon a connection.
Definition at line 193 of file socket_server_manager_asio.hpp.
using jmmcg::socket::server_manager::asio::loopback< SvrHBs, LkT >::server_to_client_flow_t = typename base_t::server_to_client_flow_t |
Definition at line 195 of file socket_server_manager_asio.hpp.
using jmmcg::socket::server_manager::asio::loopback< SvrHBs, LkT >::socket_t = typename base_t::socket_t |
Definition at line 194 of file socket_server_manager_asio.hpp.
|
inline |
dest | The socket to which the received messages should be forwarded after suitable processing. |
Definition at line 205 of file socket_server_manager_asio_impl.hpp.
|
inlinenoexcept |
Non-blocking call to wait for new connections from a client.
proc_fn | The operations to perform upon receiving a connection request from a client. |
Definition at line 211 of file socket_server_manager_asio_impl.hpp.