/** \file
\brief SignalDispatcher public header */
-#ifndef HH_SignalDispatcher_
-#define HH_SignalDispatcher_ 1
+#ifndef HH_SENF_Scheduler_SignalEvent_
+#define HH_SENF_Scheduler_SignalEvent_ 1
// Custom includes
#include <signal.h>
callback is a member function it should be defined as a class member).
*/
class SignalEvent
- : public FIFORunner::TaskInfo,
+ : public detail::FIFORunner::TaskInfo,
public detail::SignalSetBase
{
public:
///\name Structors and default members
///@{
- SignalEvent(int signal, Callback cb, bool initiallyEnabled=true);
+ SignalEvent(int signal, Callback const & cb, bool initiallyEnabled=true);
///< Register a signal event
/**< Registers \a cb as callback for the UNIX signal \a
signal. If \a initiallyEnabled is set \c false, the
void disable(); ///< Enable signal event registration
void enable(); ///< Disable the signal event registration
- bool enabled() const; ///< \c true, if event enabled, \c false otherwise
- void action(Callback cb); ///< Change signal event callback
+
+ void action(Callback const & cb); ///< Change signal event callback
private:
- virtual void run();
+ virtual void v_run();
+ virtual char const * v_type() const;
+ virtual std::string v_info() const;
int signal_;
- bool enabled_;
Callback cb_;
siginfo_t siginfo_;
friend class detail::SignalSetCompare;
friend class detail::FindNumericSignal;
friend class detail::SignalDispatcher;
- friend class senf::Scheduler;
};