X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=PPI%2FIntervalTimer.hh;h=959c48c220c0c816ca6d60c6353f3331483e21ec;hb=5443435c4c2b6e4386c5334b5b8358273f2bae93;hp=798729a60fcbd86cd2e9e6d86788df8889610c97;hpb=7231c220a7332754de3d16e4e8aacd5dbd31c501;p=senf.git diff --git a/PPI/IntervalTimer.hh b/PPI/IntervalTimer.hh index 798729a..959c48c 100644 --- a/PPI/IntervalTimer.hh +++ b/PPI/IntervalTimer.hh @@ -1,8 +1,8 @@ // $Id$ // -// Copyright (C) 2007 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) +// Copyright (C) 2007 +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund // // This program is free software; you can redistribute it and/or modify @@ -23,11 +23,11 @@ /** \file \brief IntervalTimer public header */ -#ifndef HH_IntervalTimer_ -#define HH_IntervalTimer_ 1 +#ifndef HH_SENF_PPI_IntervalTimer_ +#define HH_SENF_PPI_IntervalTimer_ 1 // Custom includes -#include "Scheduler/ClockService.hh" +#include "../Scheduler/ClockService.hh" #include "Events.hh" //#include "IntervalTimer.mpp" @@ -51,6 +51,10 @@ namespace ppi { An IntervalTimer signals an event \a eventsPerInterval times each \a interval nanoseconds. The event counter and timer are reset, whenever the event is disabled. + + \see IntervalTimerEventInfo + + \ingroup event_group */ class IntervalTimer : public EventImplementation @@ -60,12 +64,16 @@ namespace ppi { ///\name Structors and default members ///@{ - explicit IntervalTimer(ClockService::clock_type interval, + explicit IntervalTimer(ClockService::clock_type interval, unsigned eventsPerInterval=1); - + IntervalTimer(); + ///@} /////////////////////////////////////////////////////////////////////////// + void interval(ClockService::clock_type interval, unsigned eventsPerInterval=1); + std::pair interval() const; + protected: private: @@ -78,7 +86,7 @@ namespace ppi { ClockService::clock_type interval_; unsigned eventsPerInterval_; IntervalTimerEventInfo info_; - unsigned id_; + scheduler::TimerEvent timer_; }; }}