TrinityCore
Loading...
Searching...
No Matches
Trinity::Net::AsyncAcceptor Class Reference

#include <AsyncAcceptor.h>

Public Member Functions

 AsyncAcceptor (Asio::IoContext &ioContext, std::string const &bindIp, uint16 port)
 
template<SelectIoContextForNewSocketFn SelectIoContextForNewSocket, AcceptCallback Callback>
void AsyncAccept (SelectIoContextForNewSocket &&selectIoContext, Callback &&acceptCallback)
 
bool Bind ()
 
void Close ()
 

Private Attributes

boost::asio::basic_socket_acceptor< boost::asio::ip::tcp, IoContextTcpSocket::executor_type > _acceptor
 
boost::asio::ip::tcp::endpoint _endpoint
 
std::atomic< bool > _closed
 

Detailed Description

Definition at line 40 of file AsyncAcceptor.h.

Constructor & Destructor Documentation

◆ AsyncAcceptor()

Trinity::Net::AsyncAcceptor::AsyncAcceptor ( Asio::IoContext ioContext,
std::string const &  bindIp,
uint16  port 
)
inline

Definition at line 43 of file AsyncAcceptor.h.

Member Function Documentation

◆ AsyncAccept()

template<SelectIoContextForNewSocketFn SelectIoContextForNewSocket, AcceptCallback Callback>
void Trinity::Net::AsyncAcceptor::AsyncAccept ( SelectIoContextForNewSocket &&  selectIoContext,
Callback &&  acceptCallback 
)
inline

Definition at line 49 of file AsyncAcceptor.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Bind()

bool Trinity::Net::AsyncAcceptor::Bind ( )
inline

Definition at line 75 of file AsyncAcceptor.h.

◆ Close()

void Trinity::Net::AsyncAcceptor::Close ( )
inline

Definition at line 123 of file AsyncAcceptor.h.

Member Data Documentation

◆ _acceptor

boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, IoContextTcpSocket::executor_type> Trinity::Net::AsyncAcceptor::_acceptor
private

Definition at line 133 of file AsyncAcceptor.h.

◆ _closed

std::atomic<bool> Trinity::Net::AsyncAcceptor::_closed
private

Definition at line 135 of file AsyncAcceptor.h.

◆ _endpoint

boost::asio::ip::tcp::endpoint Trinity::Net::AsyncAcceptor::_endpoint
private

Definition at line 134 of file AsyncAcceptor.h.


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