X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Scheduler%2FTimerEvent.cci;h=bbdae19540285ee6fe8b2432ddeadcd5b47a4824;hb=f2f5d59e83863f3b513950173baee1b6da2aee3c;hp=0dffcd903a346764fa9ab2f9e4066c8943e02d7a;hpb=db007c39287e3c666dd6b53edc8c3404617c7dd5;p=senf.git diff --git a/Scheduler/TimerEvent.cci b/Scheduler/TimerEvent.cci index 0dffcd9..bbdae19 100644 --- a/Scheduler/TimerEvent.cci +++ b/Scheduler/TimerEvent.cci @@ -37,14 +37,14 @@ prefix_ senf::scheduler::TimerEvent::TimerEvent(std::string const & name, Callback const & cb, ClockService::clock_type timeout, bool initiallyEnabled) - : FIFORunner::TaskInfo (name), cb_ (cb), timeout_ (timeout) + : detail::FIFORunner::TaskInfo (name), cb_ (cb), timeout_ (timeout) { if (initiallyEnabled) enable(); } prefix_ senf::scheduler::TimerEvent::TimerEvent(std::string const & name, Callback const & cb) - : FIFORunner::TaskInfo (name), cb_ (cb), timeout_ (0) + : detail::FIFORunner::TaskInfo (name), cb_ (cb), timeout_ (0) {} prefix_ senf::scheduler::TimerEvent::~TimerEvent() @@ -65,11 +65,6 @@ prefix_ void senf::scheduler::TimerEvent::disable() senf::scheduler::detail::TimerDispatcher::instance().remove(*this); } -prefix_ bool senf::scheduler::TimerEvent::enabled() -{ - return detail::TimerSetBase::linked(); -} - prefix_ void senf::scheduler::TimerEvent::action(Callback const & cb) { cb_ = cb; @@ -87,12 +82,34 @@ prefix_ void senf::scheduler::TimerEvent::timeout(ClockService::clock_type timeo /////////////////////////////////////////////////////////////////////////// // senf::scheduler::detail::TimerDispatcher +prefix_ void senf::scheduler::detail::TimerDispatcher::enable() +{ + source_->enable(); +} + +prefix_ void senf::scheduler::detail::TimerDispatcher::disable() +{ + source_->disable(); +} + prefix_ bool senf::scheduler::detail::TimerDispatcher::empty() const { return timers_.empty(); } +prefix_ void senf::scheduler::detail::TimerDispatcher:: +timerSource(std::auto_ptr timerSource) +{ + source_.reset(timerSource.release()); +} + +prefix_ senf::scheduler::detail::TimerSource * +senf::scheduler::detail::TimerDispatcher::timerSource() +{ + return source_.get(); +} + ///////////////////////////////cci.e/////////////////////////////////////// #undef prefix_