The Gaudi Framework
v30r3 (a5ef0a68)
|
Interface for the service that monitors the occurrences of system signals. More...
#include <GaudiUtils/ISignalMonitor.h>
Public Member Functions | |
DeclareInterfaceID (ISignalMonitor, 1, 0) | |
InterfaceID. More... | |
virtual void | monitorSignal (int signum, bool propagate=true)=0 |
Add a signal (number) to the list of signals to be monitored. More... | |
virtual void | ignoreSignal (int signum)=0 |
Ignore future occurrences of the given signal number. More... | |
virtual bool | gotSignal (int signum) const =0 |
Tell if the given signal has been received or not. More... | |
virtual void | setSignal (int signum)=0 |
Set the flag for the given signal, as if the signal was received. More... | |
virtual void | clearSignal (int signum)=0 |
Clear the flag for the given signal, so that a new occurrence can be identified. More... | |
Public Member Functions inherited from IInterface | |
virtual void * | i_cast (const InterfaceID &) const =0 |
main cast function More... | |
virtual std::vector< std::string > | getInterfaceNames () const =0 |
Returns a vector of strings containing the names of all the implemented interfaces. More... | |
virtual unsigned long | addRef ()=0 |
Increment the reference count of Interface instance. More... | |
virtual unsigned long | release ()=0 |
Release Interface instance. More... | |
virtual unsigned long | refCount () const =0 |
Current reference count. More... | |
virtual StatusCode | queryInterface (const InterfaceID &ti, void **pp)=0 |
Set the void** to the pointer to the requested interface of the instance. More... | |
virtual | ~IInterface ()=default |
Virtual destructor. More... | |
Additional Inherited Members | |
Public Types inherited from IInterface | |
enum | Status : StatusCode::code_t { Status::FAILURE = 0, Status::SUCCESS = 1, Status::NO_INTERFACE, Status::VERSMISMATCH, Status::LAST_ERROR } |
Return status. More... | |
using | iid = Gaudi::InterfaceId< IInterface, 0, 0 > |
Interface ID. More... | |
using | ext_iids = Gaudi::interface_list< iid > |
Extra interfaces. More... | |
Static Public Member Functions inherited from IInterface | |
static const InterfaceID & | interfaceID () |
Return an instance of InterfaceID identifying the interface. More... | |
Interface for the service that monitors the occurrences of system signals.
The signal to be monitored have to be declared via the method monitorSignal(). The method gotSignal() can used to check if a signal has been received.
Note that the service is passive, in the sense that it simply keeps track of received signals without performing any action. So it is responsibility of the users to add a check if the signal has been received or not.
Definition at line 20 of file ISignalMonitor.h.
|
pure virtual |
Clear the flag for the given signal, so that a new occurrence can be identified.
signum | signal number |
Gaudi::ISignalMonitor::DeclareInterfaceID | ( | ISignalMonitor | , |
1 | , | ||
0 | |||
) |
|
pure virtual |
Tell if the given signal has been received or not.
signum | signal number |
|
pure virtual |
Ignore future occurrences of the given signal number.
signum | signal number |
|
pure virtual |
Add a signal (number) to the list of signals to be monitored.
It possible to choose if a previously installed signal handler should be called or not.
signum | signal number |
propagate | if true (default) an already present signal handler is called, otherwise the signal is stopped in the service. |
|
pure virtual |
Set the flag for the given signal, as if the signal was received.
signum | signal number |