Orbit Framework
An ultra-modern, asynchronous, cross-platform C++ Web Framework.
Loading...
Searching...
No Matches
Listener.hpp
Go to the documentation of this file.
1#pragma once
3#include <cstdint>
4#include <optional>
5
6namespace server {
7
11class Listener {
12public:
17 explicit Listener(uint16_t port);
18
22 void start();
23
28 std::optional<network::Socket> accept_connection();
29
34 int fd() const;
35
36private:
37 uint16_t port_;
38 network::Socket socket_;
39};
40
41} // namespace server
Definition Socket.hpp:6
Listens for incoming network connections.
Definition Listener.hpp:11
int fd() const
Gets the underlying file descriptor for epoll registration.
Definition Listener.cpp:68
void start()
Starts the listener to accept connections.
Definition Listener.cpp:33
std::optional< network::Socket > accept_connection()
Accepts a new incoming connection.
Definition Listener.cpp:50
Definition Http2Session.hpp:17