Equalizer
1.4.1
|
Handles events on a set of connections. More...
#include <connectionSet.h>
Public Member Functions | |
CO_API void | addConnection (ConnectionPtr connection) |
CO_API bool | removeConnection (ConnectionPtr connection) |
CO_API void | clear () |
CO_API size_t | getSize () const |
CO_API bool | isEmpty () const |
CO_API const Connections & | getConnections () const |
CO_API Event | select (const uint32_t timeout=LB_TIMEOUT_INDEFINITE) |
Selects a Connection which is ready for I/O. | |
CO_API void | interrupt () |
Interrupt the current or next select call. | |
void | setDirty () |
CO_API int | getError () const |
CO_API ConnectionPtr | getConnection () |
Public Types | |
enum | Event { EVENT_NONE = 0, EVENT_CONNECT, EVENT_DISCONNECT, EVENT_DATA, EVENT_TIMEOUT, EVENT_INTERRUPT, EVENT_ERROR, EVENT_SELECT_ERROR, EVENT_INVALID_HANDLE, EVENT_ALL } |
Handles events on a set of connections.
Definition at line 29 of file connectionSet.h.
EVENT_NONE |
No event has occurred. |
EVENT_CONNECT |
A new connection. |
EVENT_DISCONNECT |
A disconnect. |
EVENT_DATA |
Data can be read. |
EVENT_TIMEOUT |
The selection request timed out. |
EVENT_INTERRUPT |
ConnectionSet::interrupt was called. |
EVENT_ERROR |
A connection signaled an error. |
EVENT_SELECT_ERROR |
An error occurred during select() |
EVENT_INVALID_HANDLE |
A connection is not select'able. |
Definition at line 32 of file connectionSet.h.
CO_API Event co::ConnectionSet::select | ( | const uint32_t | timeout = LB_TIMEOUT_INDEFINITE | ) |
Selects a Connection which is ready for I/O.
Depending on the event, the error number and connection are set.
timeout | the timeout to wait for an event in milliseconds, or LB_TIMEOUT_INDEFINITE if the call should block forever. |