ldas-tools-al 2.6.4
Classes | Public Types | Static Public Member Functions | Static Public Attributes | Private Types | Private Member Functions | Private Attributes | List of all members
LDASTools::AL::SignalHandler Class Reference

#include <SignalHandler.hh>

Inheritance diagram for LDASTools::AL::SignalHandler:
Inheritance graph
[legend]
Collaboration diagram for LDASTools::AL::SignalHandler:
Collaboration graph
[legend]

Classes

class  Callback
 
class  IgnoreCallback
 

Public Types

enum  signal_type {
  SIGNAL_ABORT , SIGNAL_ALARM , SIGNAL_HANGUP , SIGNAL_ISALIVE ,
  SIGNAL_TERMINATE , SIGNAL_USER_1 , SIGNAL_USER_2 , SIGNAL_UNKNOWN
}
 

Static Public Member Functions

static void Register (Callback *CB, signal_type Signal)
 
static void Unregister (Callback *CB, signal_type Signal)
 
static void Callbacks (signal_type Signal)
 
static int OSSignal (signal_type Signal)
 
static void ThreadCaptureSignal (signal_type Signal)
 
static void ThreadIgnoreSignal (signal_type Signal)
 
static SignalHandlerInstance ()
 

Static Public Attributes

static IgnoreCallback IgnoreCB
 

Private Types

typedef std::list< Callback * > callbacks_type
 
typedef LDASTools::AL::unordered_map< int, callbacks_typesignal_queue_type
 

Private Member Functions

void callbacks (signal_type Signal)
 
void reg (Callback *CB, signal_type Signal)
 Register a callback. More...
 
void unreg (Callback *CB, signal_type Signal)
 Unregister a callback. More...
 

Private Attributes

signal_queue_type signal_queue
 

Member Typedef Documentation

◆ callbacks_type

◆ signal_queue_type

Member Enumeration Documentation

◆ signal_type

Enumerator
SIGNAL_ABORT 
SIGNAL_ALARM 
SIGNAL_HANGUP 
SIGNAL_ISALIVE 
SIGNAL_TERMINATE 
SIGNAL_USER_1 
SIGNAL_USER_2 
SIGNAL_UNKNOWN 

Member Function Documentation

◆ Callbacks()

void LDASTools::AL::SignalHandler::Callbacks ( signal_type  Signal)
static

◆ callbacks()

void LDASTools::AL::SignalHandler::callbacks ( signal_type  Signal)
private

◆ Instance()

static SignalHandler & LDASTools::AL::Singleton< SignalHandler >::Instance ( )
staticinherited

◆ OSSignal()

int LDASTools::AL::SignalHandler::OSSignal ( signal_type  Signal)
static

◆ reg()

void LDASTools::AL::SignalHandler::reg ( Callback CB,
signal_type  Signal 
)
private

Register a callback.

Todo:
Need to be able to store the handler retrieved in sa_old so when this signal handler is unloaded, the previous handler can be restored.

◆ Register()

void LDASTools::AL::SignalHandler::Register ( Callback CB,
signal_type  Signal 
)
static

◆ ThreadCaptureSignal()

void LDASTools::AL::SignalHandler::ThreadCaptureSignal ( signal_type  Signal)
static

◆ ThreadIgnoreSignal()

void LDASTools::AL::SignalHandler::ThreadIgnoreSignal ( signal_type  Signal)
static

◆ unreg()

void LDASTools::AL::SignalHandler::unreg ( Callback CB,
signal_type  Signal 
)
private

Unregister a callback.

◆ Unregister()

void LDASTools::AL::SignalHandler::Unregister ( Callback CB,
signal_type  Signal 
)
static

Member Data Documentation

◆ IgnoreCB

SignalHandler::IgnoreCallback LDASTools::AL::SignalHandler::IgnoreCB
static

◆ signal_queue

signal_queue_type LDASTools::AL::SignalHandler::signal_queue
private

The documentation for this class was generated from the following files: