#include <senf/Scheduler/SignalEvent.hh>
The SignalEvent class registers a callback for UNIX signals. The callback will be called synchronously (not from within the UNIX signal handler) by the scheduler.
The SignalEvent class is an implementation of the RAII idiom: The event will be automatically unregistered in the SignalEvent destructor. The SignalEvent instance should be created within the same scope or on a scope below where the callback is defined (e.g. if the callback is a member function it should be defined as a class member).
Definition at line 62 of file SignalEvent.hh.
Public Types |
|
typedef boost::function< void(siginfo_t const &)> |
Callback |
Callback type. |
|
Public Member Functions |
|
void | disable () |
Enable signal event registration. |
|
void | enable () |
Disable the signal event registration. |
|
void | action (Callback const &cb) |
Change signal event callback. |
|
Structors and default members |
|
SignalEvent (int signal, Callback const &cb, bool initiallyEnabled=true) | |
Register a signal event. |
|
~SignalEvent () |
typedef boost::function<void (siginfo_t const &)> senf::scheduler::SignalEvent:: | ||||
Callback | ||||
Callback type.
Definition at line 71 of file SignalEvent.hh.
senf::scheduler::SignalEvent:: | ||||
SignalEvent | ( | int | signal, | |
Callback const & | cb, | |||
bool |
initiallyEnabled = true
|
) | ||
Register a signal event.
Registers cb as callback for the UNIX signal signal. If initiallyEnabled is set false
, the callback will not be enabled automatically. Use enable() to do so.
[in] | signal | UNIX signal to register callback for |
[in] | cb | Callback to call |
[in] | initiallyEnabled | if set false , do not enable callback automatically. |
Definition at line 58 of file SignalEvent.cci.
senf::scheduler::SignalEvent:: | ||||
~SignalEvent | () | |||
Definition at line 66 of file SignalEvent.cci.
void senf::scheduler::SignalEvent:: | ||||
action | ( | Callback const & | cb | ) |
Change signal event callback.
Definition at line 84 of file SignalEvent.cci.
void senf::scheduler::SignalEvent:: | ||||
disable | () | |||
Enable signal event registration.
Definition at line 72 of file SignalEvent.cci.
void senf::scheduler::SignalEvent:: | ||||
enable | () | |||
Disable the signal event registration.
Definition at line 78 of file SignalEvent.cci.