Provided by: libserial-doc_0.6.0~rc1-0ubuntu4_all bug

NAME

       PosixSignalDispatcher -

SYNOPSIS

       #include <PosixSignalDispatcher.h>

   Classes
       class CannotAttachHandler
           Exception thrown when AttachHandler() fails due to a runtime error.
       class CannotDetachHandler
           Exception thrown when DetachHandler() fails due to a runtime error.

   Public Member Functions
       void AttachHandler (const int posixSignalNumber, PosixSignalHandler &signalHandler)  throw
           ( CannotAttachHandler )
           Attach a signal handler to the signal dispatcher.
       void DetachHandler (const int posixSignalNumber, const PosixSignalHandler &signalHandler)
           throw ( CannotDetachHandler,               std::logic_error )
           Detach the specified signal handler from the signal dispatcher.

   Static Public Member Functions
       static PosixSignalDispatcher & Instance ()
           This is a singleton class and there is only one instance of this class per process.

   Private Member Functions
       PosixSignalDispatcher ()
           This is a singleton class and the only instances of this class can only be accessed
           using the Instance() method.
       ~PosixSignalDispatcher ()
           This class cannot be subclassed.
       PosixSignalDispatcher (const PosixSignalDispatcher &otherInstance)
           Copying of an instance of this class is not allowed.
       const PosixSignalDispatcher & operator= (const PosixSignalDispatcher &otherInstance)
           Copying of an instance of this class is not allowed.

Detailed Description

       Note:
           The signal dispatcher will not interfere with any signals for which there are no
           signal handlers attached. Similarly, if a signal handler function is already attached
           to a signal that the dispatcher is asked to administer, that signal handler will be
           called after all the attached PosixSignalHandlers.

       Todo
           Make this a singleton class.

       Definition at line 33 of file PosixSignalDispatcher.h.

Constructor & Destructor Documentation

   PosixSignalDispatcher::PosixSignalDispatcher () [private]
       This is a singleton class and the only instances of this class can only be accessed using
       the Instance() method. This is enforced by making the default constructor a private member
       disalloweing construction of new instances of this class

   PosixSignalDispatcher::~PosixSignalDispatcher () [private]
       This class cannot be subclassed. We enforce this by making the destructor a private
       member.

   PosixSignalDispatcher::PosixSignalDispatcher (const PosixSignalDispatcher &otherInstance)
       [private]
       Copying of an instance of this class is not allowed. We enforce this by making the copy
       constructor and the assignment operator private members.

Member Function Documentation

   void PosixSignalDispatcher::AttachHandler (const intposixSignalNumber, PosixSignalHandler
       &signalHandler)CannotAttachHandler
       Attach a signal handler to the signal dispatcher. The signal handler's HandlePosixSignal()
       method will be called every time the specified signal is received. The signal handler
       should not be destroyed while it attached to the signal dispatcher. Otherwise, weird
       things are bound to happen (i.e. 'undefined behavior' shall ensue). Make sure you call
       DetachHandler() from the destructor of the signal handler.

       If a PosixSignalHandler is attached to the same signal number multiple times, it will be
       called multiple times. Furthermore, it should also be detached as many times as it was
       attached before it is destroyed. Otherwise, undefined behavior may result.

       Parameters:
           posixSignalNumber The signal number that will result in call to the
           HandlePosixSignal() method of the signal handler.
           signalHandler The signal handler to be invoked on receiving a posixSignalNumber
           signal.

   void PosixSignalDispatcher::DetachHandler (const intposixSignalNumber, const
       PosixSignalHandler &signalHandler) CannotDetachHandler,std::logic_error
       Detach the specified signal handler from the signal dispatcher. The signal handler will
       stop being called on receiving the corresponding POSIX signal. If the signal handler is
       not attached to the signal dispatcher when this method is called then this method has no
       effect.

       Parameters:
           posixSignalNumber The signal number corresponding to the signal handler.
           signalHandler The signal handler to be detached.

   static PosixSignalDispatcher& PosixSignalDispatcher::Instance () [static]
       This is a singleton class and there is only one instance of this class per process. This
       instance can be obtained using the GetInstance() method.

   const PosixSignalDispatcher& PosixSignalDispatcher::operator= (const PosixSignalDispatcher
       &otherInstance) [private]
       Copying of an instance of this class is not allowed. We enforce this by making the copy
       constructor and the assignment operator private members.

Author

       Generated automatically by Doxygen for libserial from the source code.