X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Scheduler%2FTimerEvent.hh;h=493ae6ad15f6585d207075a261c19d9fd93c604e;hb=f2f5d59e83863f3b513950173baee1b6da2aee3c;hp=cbbb2302787a1cd24cb685ee53af2db34b2b94c5;hpb=03516e8371a90f908ce54dedb3c874eec7dd08ff;p=senf.git diff --git a/Scheduler/TimerEvent.hh b/Scheduler/TimerEvent.hh index cbbb230..493ae6a 100644 --- a/Scheduler/TimerEvent.hh +++ b/Scheduler/TimerEvent.hh @@ -1,6 +1,6 @@ // $Id$ // -// Copyright (C) 2008 +// Copyright (C) 2008 // Fraunhofer Institute for Open Communication Systems (FOKUS) // Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund @@ -23,8 +23,8 @@ /** \file \brief TimerDispatcher public header */ -#ifndef HH_TimerDispatcher_ -#define HH_TimerDispatcher_ 1 +#ifndef HH_SENF_Scheduler_TimerEvent_ +#define HH_SENF_Scheduler_TimerEvent_ 1 // Custom includes #include @@ -55,7 +55,7 @@ namespace scheduler { Timer events are implemented using POSIX timers. Depending on kernel features, the timer resolution will be far more precise than the linux clock tick resolution. The nominal timer resolution is 1 nanosecond. - + The timeout time is set as \e absolute time as returned by the senf::ClockService. After expiration, the timer will be disabled. It may be re-enabled by setting a new timeout time. It is also possible to change a running timer resetting the timeout time. @@ -66,7 +66,7 @@ namespace scheduler { callback is a member function it should be defined as a class member). */ class TimerEvent - : public FIFORunner::TaskInfo, + : public detail::FIFORunner::TaskInfo, public detail::TimerSetBase { public: @@ -88,6 +88,8 @@ namespace scheduler { automatically. Use enable() to do so. \param[in] name Descriptive timer name (purely informational) + \param[in] timeout timeout time after the timer + will be disabled \param[in] cb Callback to call \param[in] initiallyEnabled if set \c false, do not enable callback automatically. */ @@ -95,7 +97,7 @@ namespace scheduler { ///< Create a timer event /**< Creates a timer event for callback \a cb. The timer is initially disabled. Use the timeout() member to set the - timeout time. + timeout time. \param[in] name Descriptive timer name (purely informational) \param[in] cb Callback to call. */ @@ -106,7 +108,6 @@ namespace scheduler { void disable(); ///< Disable timer void enable(); ///< Enable timer - bool enabled(); ///< \c true, if timer enabled, \c false otherwise void action(Callback const & cb); ///< Change timer event callback void timeout(ClockService::clock_type timeout, bool initiallyEnabled=true); @@ -116,7 +117,9 @@ namespace scheduler { enable callback automatically. */ private: - virtual void run(); + virtual void v_run(); + virtual char const * v_type() const; + virtual std::string v_info() const; Callback cb_; ClockService::clock_type timeout_;