Selector allow reading from multiple sockets without blocking. More...
#include <Selector.hpp>
Public Member Functions | |
void | Add (Type Socket) |
Add a socket to watch. More... | |
void | Remove (Type Socket) |
Remove a socket. More... | |
void | Clear () |
Remove all sockets. More... | |
unsigned int | Wait (float Timeout=0.f) |
Wait and collect sockets which are ready for reading. More... | |
Type | GetSocketReady (unsigned int Index) |
After a call to Wait(), get the Index-th socket which is ready for reading. More... | |
Private Member Functions | |
void | Add (SocketHelper::SocketType Socket) |
Add a socket to watch. More... | |
void | Remove (SocketHelper::SocketType Socket) |
Remove a socket. More... | |
Selector allow reading from multiple sockets without blocking.
It's a kind of multiplexer
Definition at line 44 of file Selector.hpp.
void Selector::Add | ( | Type | Socket | ) |
void Selector::Clear | ( | ) |
Remove all sockets.
Definition at line 59 of file Selector.inl.
Type Selector::GetSocketReady | ( | unsigned int | Index | ) |
After a call to Wait(), get the Index-th socket which is ready for reading.
The total number of sockets ready is the integer returned by the previous call to Wait()
Index | : Index of the socket to get |
The total number of sockets ready is the integer returned by the previous call to Wait()
Definition at line 88 of file Selector.inl.
void Selector::Remove | ( | Type | Socket | ) |
unsigned int Selector::Wait | ( | float | Timeout = 0.f | ) |
Wait and collect sockets which are ready for reading.
This functions will return either when at least one socket is ready, or when the given time is out
Timeout | : Timeout, in seconds (0 by default : no timeout) |
This functions will return either when at least one socket is ready, or when the given time is out
Definition at line 72 of file Selector.inl.