User Manual, Developers Guide and API Documentation

wns::simulator::SignalHandler Class Reference

An special signal handler for openWNS. More...

#include <simulator/SignalHandler.hpp>

Inheritance diagram for wns::simulator::SignalHandler:

Inheritance graph
[legend]
Collaboration diagram for wns::simulator::SignalHandler:

Collaboration graph
[legend]

List of all members.

Public Member Functions

template<typename HANDLER>
void addSignalHandler (int signum, HANDLER handler)
 Add a signal handler.
void removeAllSignalHandlers ()
 Remove all registered handlers and restore default handler.
void removeSignalHandler (int signum)
 Remove signal according signal number, installs default signal handler again.

Private Types

typedef boost::signal0< void > Handler
typedef
wns::container::Registry< int,
Handler
*, wns::container::registry::DeleteOnErase
Map

Private Member Functions

 SignalHandler ()
 Default c'tor.
virtual ~SignalHandler ()
 Remove all registered handlers and restore default handler.

Static Private Member Functions

static void catchSignal (int signum)
 Adapter - Dispatch the C-style signals to the respective handler in C++.

Private Attributes

Map map_
 Map the signals to the signal handlers.

Friends

class wns::DefaultCreation< wns::simulator::SignalHandler >


Detailed Description

Author:
Marc Schinnenburg <marc@schinnenburg.com>

Definition at line 47 of file SignalHandler.hpp.


Member Typedef Documentation

typedef boost::signal0<void> wns::simulator::SignalHandler::Handler [private]

Definition at line 51 of file SignalHandler.hpp.

Definition at line 52 of file SignalHandler.hpp.


Constructor & Destructor Documentation

SignalHandler::SignalHandler (  )  [private]

Definition at line 34 of file SignalHandler.cpp.

SignalHandler::~SignalHandler (  )  [private, virtual]

Definition at line 39 of file SignalHandler.cpp.


Member Function Documentation

template<typename HANDLER>
void wns::simulator::SignalHandler::addSignalHandler ( int  signum,
HANDLER  handler 
) [inline]

Precondition:
A signal with this name may not be registered before!

Definition at line 62 of file SignalHandler.hpp.

void SignalHandler::catchSignal ( int  signum  )  [static, private]

Definition at line 92 of file SignalHandler.cpp.

void SignalHandler::removeAllSignalHandlers (  ) 

Definition at line 71 of file SignalHandler.cpp.

void SignalHandler::removeSignalHandler ( int  signum  ) 

Definition at line 45 of file SignalHandler.cpp.


Friends And Related Function Documentation

Definition at line 50 of file SignalHandler.hpp.


Member Data Documentation

Definition at line 125 of file SignalHandler.hpp.


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

Generated on Sun May 27 03:33:06 2012 for openWNS by  doxygen 1.5.5