helics  3.0.1
Public Types | Public Member Functions | Static Public Member Functions | List of all members
helics::tcp::TcpServer Class Reference

#include <TcpHelperClasses.h>

+ Inheritance diagram for helics::tcp::TcpServer:

Public Types

using pointer = std::shared_ptr< TcpServer >
 

Public Member Functions

void setPortReuse (bool reuse)
 
bool start ()
 
void close ()
 
bool isReady () const
 
bool reConnect (std::chrono::milliseconds timeOut)
 
void setDataCall (std::function< size_t(TcpConnection::pointer, const char *, size_t)> dataFunc)
 
void setErrorCall (std::function< bool(TcpConnection::pointer, const std::error_code &)> errorFunc)
 
void handle_accept (TcpAcceptor::pointer acc, TcpConnection::pointer new_connection)
 
TcpConnection::pointer findSocket (int connectorID) const
 

Static Public Member Functions

static pointer create (asio::io_context &io_context, const std::string &address, const std::string &port, bool reuse_port=false, int nominalBufferSize=10192)
 
static pointer create (asio::io_context &io_context, const std::string &address, uint16_t PortNum, bool reuse_port=false, int nominalBufferSize=10192)
 
static pointer create (asio::io_context &io_context, uint16_t PortNum, int nominalBufferSize=10192)
 

Detailed Description

helper class for a server

Member Function Documentation

◆ close()

void helics::tcp::TcpServer::close ( )

close the server

◆ findSocket()

TcpConnection::pointer helics::tcp::TcpServer::findSocket ( int  connectorID) const

get a socket by it identification code

◆ isReady()

bool helics::tcp::TcpServer::isReady ( ) const
inline

check if the server is ready to start

◆ reConnect()

bool helics::tcp::TcpServer::reConnect ( std::chrono::milliseconds  timeOut)

reConnect the server with the same address

Referenced by start().

◆ setDataCall()

void helics::tcp::TcpServer::setDataCall ( std::function< size_t(TcpConnection::pointer, const char *, size_t)>  dataFunc)
inline

set the data callback

◆ setErrorCall()

void helics::tcp::TcpServer::setErrorCall ( std::function< bool(TcpConnection::pointer, const std::error_code &)>  errorFunc)
inline

set the error path callback

◆ setPortReuse()

void helics::tcp::TcpServer::setPortReuse ( bool  reuse)
inline

set the port reuse flag

◆ start()

bool helics::tcp::TcpServer::start ( )

start accepting new connections

Returns
true if the start up was successful

References reConnect().


The documentation for this class was generated from the following files: