SNode.C
|
#include <EventMultiplexer.h>
Classes | |
struct | PollFdIndex |
class | VarSizeTypeAllocator |
Public Types | |
using | pollfd_vector = std::vector< pollfd, VarSizeTypeAllocator< pollfd, nfds_t > > |
using | pollfdindex_map = std::unordered_map< int, PollFdIndex, std::hash< int >, std::equal_to<>, VarSizeTypeAllocator< std::pair< const int, PollFdIndex >, nfds_t > > |
Public Member Functions | |
PollFdsManager () | |
void | muxAdd (core::DescriptorEventReceiver *eventReceiver, short event) |
void | muxDel (int fd, short event) |
void | muxOn (const core::DescriptorEventReceiver *eventReceiver, short event) |
void | muxOff (const DescriptorEventReceiver *eventReceiver, short event) |
pollfd * | getEvents () |
const pollfdindex_map & | getPollFdIndices () const |
nfds_t | getCurrentSize () const |
Private Member Functions | |
void | compress () |
Private Attributes | |
nfds_t | nextIndex = 0 |
pollfd_vector | pollfds |
pollfdindex_map | pollFdIndices |
Definition at line 68 of file EventMultiplexer.h.
using core::multiplexer::poll::PollFdsManager::pollfd_vector = std::vector<pollfd, VarSizeTypeAllocator<pollfd, nfds_t> > |
Definition at line 145 of file EventMultiplexer.h.
using core::multiplexer::poll::PollFdsManager::pollfdindex_map = std::unordered_map<int, PollFdIndex, std::hash<int>, std::equal_to<>, VarSizeTypeAllocator<std::pair<const int, PollFdIndex>, nfds_t> > |
Definition at line 152 of file EventMultiplexer.h.
|
explicit |
Definition at line 68 of file EventMultiplexer.cpp.
|
private |
Definition at line 124 of file EventMultiplexer.cpp.
Referenced by muxDel().
nfds_t core::multiplexer::poll::PollFdsManager::getCurrentSize | ( | ) | const |
Definition at line 148 of file EventMultiplexer.cpp.
pollfd * core::multiplexer::poll::PollFdsManager::getEvents | ( | ) |
Definition at line 140 of file EventMultiplexer.cpp.
const PollFdsManager::pollfdindex_map & core::multiplexer::poll::PollFdsManager::getPollFdIndices | ( | ) | const |
Definition at line 144 of file EventMultiplexer.cpp.
void core::multiplexer::poll::PollFdsManager::muxAdd | ( | core::DescriptorEventReceiver * | eventReceiver, |
short | event | ||
) |
Definition at line 73 of file EventMultiplexer.cpp.
References core::multiplexer::poll::PollFdsManager::PollFdIndex::events, and core::DescriptorEventReceiver::getRegisteredFd().
Referenced by core::multiplexer::poll::DescriptorEventPublisher::muxAdd().
void core::multiplexer::poll::PollFdsManager::muxDel | ( | int | fd, |
short | event | ||
) |
Definition at line 97 of file EventMultiplexer.cpp.
References compress(), and core::multiplexer::poll::PollFdsManager::PollFdIndex::events.
Referenced by core::multiplexer::poll::DescriptorEventPublisher::muxDel().
void core::multiplexer::poll::PollFdsManager::muxOff | ( | const DescriptorEventReceiver * | eventReceiver, |
short | event | ||
) |
Definition at line 119 of file EventMultiplexer.cpp.
Referenced by core::multiplexer::poll::DescriptorEventPublisher::muxOff().
void core::multiplexer::poll::PollFdsManager::muxOn | ( | const core::DescriptorEventReceiver * | eventReceiver, |
short | event | ||
) |
Definition at line 115 of file EventMultiplexer.cpp.
Referenced by core::multiplexer::poll::DescriptorEventPublisher::muxOn().
|
private |
Definition at line 172 of file EventMultiplexer.h.
|
private |
Definition at line 176 of file EventMultiplexer.h.
|
private |
Definition at line 175 of file EventMultiplexer.h.