SignalHandler Class Reference
Register callbacks that get triggered on SIGINT and SIGTERM. More...
#include <SignalHandler.hh>
| Public Member Functions | |
| SignalHandler () | |
| Constructor. | |
| virtual | ~SignalHandler () | 
| Destructor. | |
| bool | AddCallback (std::function< void(int)> _cb) | 
| Add a callback to execute when a signal is received. | |
| bool | Initialized () const | 
| Get whether the signal handlers were successfully initialized. | |
| Protected Member Functions | |
| virtual void | SetInitialized (const bool _init) | 
| Set whether the signal handler was successfully initialized. This function is here for testing purposes, and if for some reason a person needs to create a subclass to control the initialization value. | |
Detailed Description
Register callbacks that get triggered on SIGINT and SIGTERM.
This class is a thread-safe interface to system signals (SIGINT and SIGTERM). Use the AddCallback(std::function<void(int)>) function to register callbacks that should be called when a SIGINT or SIGTERM is triggered.
Example using a lambda callback:
SignalHandler handler;
handler.AddCallback([] (int _sig)
{
  printf("Signal[%d] received\n", _sig);
});
Constructor & Destructor Documentation
◆ SignalHandler()
| SignalHandler | ( | ) | 
Constructor.
◆ ~SignalHandler()
| 
 | virtual | 
Destructor.
Member Function Documentation
◆ AddCallback()
| bool AddCallback | ( | std::function< void(int)> | _cb | ) | 
Add a callback to execute when a signal is received.
- Parameters
- 
  [in] _cb Callback to execute. 
- Returns
- True if the callback was added. A callback may not be added if the SignalHandler was not successfully initialized.
- See also
- bool Initialized() const
◆ Initialized()
| bool Initialized | ( | ) | const | 
Get whether the signal handlers were successfully initialized.
- Returns
- True if the signal handlers were successfully created.
◆ SetInitialized()
| 
 | protectedvirtual | 
Set whether the signal handler was successfully initialized. This function is here for testing purposes, and if for some reason a person needs to create a subclass to control the initialization value.
- Parameters
- 
  [in] _init New value of the initialized member variabl.e 
The documentation for this class was generated from the following file: