Selector allow reading from multiple sockets without blocking. More...
#include <Selector.hpp>
Public Member Functions | |
| void | Add (Type Socket) |
| Add a socket to watch. | |
| void | Remove (Type Socket) |
| Remove a socket. | |
| void | Clear () |
| Remove all sockets. | |
| unsigned int | Wait (float Timeout=0.f) |
| Wait and collect sockets which are ready for reading. | |
| Type | GetSocketReady (unsigned int Index) |
| After a call to Wait(), get the Index-th socket which is ready for reading. | |
Private Member Functions | |
| void | Add (SocketHelper::SocketType Socket) |
| Add a socket to watch. | |
| void | Remove (SocketHelper::SocketType Socket) |
| Remove a socket. | |
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 60 of file Selector.hpp.
| 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 89 of file Selector.hpp.
| 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 73 of file Selector.hpp.