Agora  1.2.0
Agora project
signal_handler.h
Go to the documentation of this file.
1 // http://www.yolinux.com/TUTORIALS/C++Signals.html
2 
3 #ifndef SIGNALHANDLER_H_
4 #define SIGNALHANDLER_H_
5 #include <stdexcept>
6 using std::runtime_error;
7 
8 class SignalException : public runtime_error {
9  public:
10  explicit SignalException(const std::string& _message)
11  : std::runtime_error(_message) {}
12 };
13 
15  protected:
16  static bool mb_got_exit_signal;
17 
18  public:
19  SignalHandler();
20  ~SignalHandler() = default;
21 
22  static bool GotExitSignal();
23  static void SetExitSignal(bool _bExitSignal);
24 
25  void SetupSignalHandlers();
26  static void ExitSignalHandler(int _ignored);
27 };
28 #endif // SIGNALHANDLER_H_
SignalHandler
Definition: signal_handler.h:14
SignalHandler::GotExitSignal
static bool GotExitSignal()
Definition: signal_handler.cc:23
signal_handler.h
SignalHandler::SignalHandler
SignalHandler()
SignalException::SignalException
SignalException(const std::string &_message)
Definition: signal_handler.h:10
SignalHandler::~SignalHandler
~SignalHandler()=default
SignalHandler::mb_got_exit_signal
static bool mb_got_exit_signal
Definition: signal_handler.h:16
SignalHandler::ExitSignalHandler
static void ExitSignalHandler(int _ignored)
Definition: signal_handler.cc:37
SignalHandler::SetExitSignal
static void SetExitSignal(bool _bExitSignal)
Definition: signal_handler.cc:28
std
Definition: json.hpp:5213
SignalHandler::SetupSignalHandlers
void SetupSignalHandlers()
Definition: signal_handler.cc:44
SignalException
Definition: signal_handler.h:8