Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
WorldSocketAcceptor.h
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
10
11
#ifndef SF_WORLDSOCKETACCEPTOR_H
12
#define SF_WORLDSOCKETACCEPTOR_H
13
14
#include "
Common.h
"
15
#include "
Threading/BoostAsioThreadGroup.h
"
16
#include "
WorldSocket.h
"
17
#include <boost/asio/ip/tcp.hpp>
18
#include <atomic>
19
#include <memory>
20
21
class
ReactorRunnable
;
22
23
class
WorldSocketAcceptor
24
{
25
public
:
26
WorldSocketAcceptor
();
27
~WorldSocketAcceptor
();
28
29
bool
Open
(
uint16
port,
const
char
* address);
30
void
Close
();
31
void
Update
();
32
33
private
:
34
void
AsyncAccept
();
35
void
HandleAccept
(
ReactorRunnable
* reactor,
WorldSocketHandle
socket, boost::asio::ip::tcp::endpoint
const
& remoteEndpoint,
36
boost::system::error_code
const
& error);
37
38
Skyfire::Asio::IoContextThreadGroup
m_ThreadGroup
;
39
boost::asio::ip::tcp::acceptor
m_Acceptor
;
40
std::atomic<bool>
m_Closed
;
41
};
42
43
#endif
/* __WORLDSOCKETACCEPTOR_H_ */
BoostAsioThreadGroup.h
Common.h
uint16
std::uint16_t uint16
Definition
Define.h:78
WorldSocket.h
ReactorRunnable
Definition
WorldSocketMgr.cpp:35
Skyfire::Asio::IoContextThreadGroup
Definition
BoostAsioThreadGroup.h:23
WorldSocketAcceptor::Open
bool Open(uint16 port, const char *address)
Definition
WorldSocketAcceptor.cpp:27
WorldSocketAcceptor::m_Acceptor
boost::asio::ip::tcp::acceptor m_Acceptor
Definition
WorldSocketAcceptor.h:39
WorldSocketAcceptor::Update
void Update()
Definition
WorldSocketAcceptor.cpp:54
WorldSocketAcceptor::WorldSocketAcceptor
WorldSocketAcceptor()
Definition
WorldSocketAcceptor.cpp:15
WorldSocketAcceptor::m_ThreadGroup
Skyfire::Asio::IoContextThreadGroup m_ThreadGroup
Definition
WorldSocketAcceptor.h:38
WorldSocketAcceptor::m_Closed
std::atomic< bool > m_Closed
Definition
WorldSocketAcceptor.h:40
WorldSocketAcceptor::Close
void Close()
Definition
WorldSocketAcceptor.cpp:44
WorldSocketAcceptor::~WorldSocketAcceptor
~WorldSocketAcceptor()
Definition
WorldSocketAcceptor.cpp:22
WorldSocketAcceptor::AsyncAccept
void AsyncAccept()
Definition
WorldSocketAcceptor.cpp:58
WorldSocketAcceptor::HandleAccept
void HandleAccept(ReactorRunnable *reactor, WorldSocketHandle socket, boost::asio::ip::tcp::endpoint const &remoteEndpoint, boost::system::error_code const &error)
Definition
WorldSocketAcceptor.cpp:73
WorldSocketHandle
boost::asio::ip::tcp::socket WorldSocketHandle
Definition
WorldSocket.h:31
src
server
game
Server
WorldSocketAcceptor.h
Generated on
for Project SkyFire Core by
1.17.0