hce-node application  1.4.3
HCE Hierarchical Cluster Engine node application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Signals.h
Go to the documentation of this file.
1 #ifndef SIGNALS_H
2 #define SIGNALS_H
3 #include <signal.h>
4 #include <string.h>
5 #include <stdio.h>
6 #include <new>
7 typedef void (*sig_function) (int);
8 
9 typedef struct _func_list
10 {
11  int sig_num;
13  struct _func_list *next;
14 } func_list;
15 
16 typedef struct _sig_list
17 {
18  struct sigaction sa;
19  int sig_num;
20  struct _sig_list *next;
21 } sig_list;
22 
23 class Signal
24 {
25 public:
26  Signal();
27  ~Signal();
28  int Attach(int sig_num, sig_function func);
29  void Detach(int sig_num, sig_function func);
30  static void sig_func(int);
31  static void setNull();
32 private:
33  static func_list *functions;
34  static sig_list *old_handlers;
35  static int used_signals[255];
36 };
37 #endif