#pragma once #include #include #include #include "ws_server.h" namespace net = boost::asio; // namespace asio using tcp = net::ip::tcp; // from using error_code = boost::system::error_code; // from namespace habboy_hw_iface { class listener : public std::enable_shared_from_this { tcp::acceptor acceptor_; tcp::socket socket_; std::shared_ptr p_ws_server_; void fail(error_code ec, char const* what); void on_accept(error_code ec); public: listener(net::io_context& ioc, tcp::endpoint endpoint, habboy_hw_iface::WebsocketServer& ws_server); void run(); }; } //ns