Go to the documentation of this file.
31 if ( signum_ >= 1 && signum_ < NSIG) {
35 DL((
SIGHAND,
"signum_ %d is out of range [1;%d]\n", NSIG));
119 if (new_disp_ == 0) {
135 int my_errno = errno;
151 #endif // !defined(WIN32)
int retrieve_action(int signum_)
Retrieve current disposition for the signal signum_ into this object.
static EventHandler * m_signal_handlers[NSIG]
Static array that stores one user-defined event handler pointer for every signal.
virtual int handle_signal(int signum_)
Signal handler callback.
int register_action(int signum_, SigAction *oaction_=0)
Register this object as current disposition for signal signum_, and store old disposition in oaction_...
virtual int install(int signum_, EventHandler *new_hand_, SigAction *new_disp_=0, EventHandler **old_hand_=0, SigAction *old_disp_=0)
Add new signal handler and new disposition for the signal.
EventHandler * handler(int signum_, EventHandler *new_)
Set new event handler for signal signum_ and return an existing one.
void(* C_SIG_HANDLER)(int)
void handler(C_SIG_HANDLER sha_)
Set new signal handler to function pointer sha_.
static void dispatch(int signum_)
Here is the heart of SigHandler class.
virtual int remove(int signum_, EventHandler *eh_=0, SigAction *new_disp_=0, SigAction *old_disp_=0)
Remove EventHandler associated with signum_.
int in_range(int signum_)
Check that signum_ is in valid range.
@ SIGHAND
Class SigHandler(s) messages
#define trace_with_mask(s, m)