Webserv
Loading...
Searching...
No Matches
EpollManager.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <stdint.h>
4#include <sys/epoll.h>
5#include <signal.h>
6
7namespace network {
8
18public:
21
22 void addFd(int fd, uint32_t events);
23 void removeFd(int fd);
24 void modifyFd(int fd, uint32_t events);
25
26 int waitForEvents(struct epoll_event *events, int max_events, int timeout = -1);
27
28 void requestShutdown();
29 bool getisShuttingDown() const;
30
31private:
33 volatile sig_atomic_t isShuttingDown;
34
37};
38
39} // namespace network
void addFd(int fd, uint32_t events)
Definition EpollManager.cpp:26
void requestShutdown()
Definition EpollManager.cpp:57
EpollManager()
Definition EpollManager.cpp:12
void modifyFd(int fd, uint32_t events)
Definition EpollManager.cpp:42
volatile sig_atomic_t isShuttingDown
Definition EpollManager.hpp:33
int epollFd_
Definition EpollManager.hpp:32
EpollManager(const EpollManager &other)
void removeFd(int fd)
Definition EpollManager.cpp:36
int waitForEvents(struct epoll_event *events, int max_events, int timeout=-1)
Definition EpollManager.cpp:53
~EpollManager()
Definition EpollManager.cpp:20
EpollManager & operator=(const EpollManager &other)
bool getisShuttingDown() const
Definition EpollManager.cpp:61
Definition Acceptor.hpp:8