X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Ftimer.h;h=a116d456c4e7a78cc499ba53862c9e8e76ebc76b;hb=62dc1769c952a7211878181ff595d4328e182f6b;hp=2887e2b52f1a473af4167a3f7e32d4a262480d28;hpb=4ab593d2a3f849579cc9ac389e42097aef6e9236;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/timer.h b/include/timer.h index 2887e2b52..a116d456c 100644 --- a/include/timer.h +++ b/include/timer.h @@ -50,15 +50,9 @@ class CoreExport Timer public: /** Default constructor, initializes the triggering time * @param secs_from_now The number of seconds from now to trigger the timer - * @param now The time now * @param repeating Repeat this timer every secs_from_now seconds if set to true */ - Timer(unsigned int secs_from_now, time_t now, bool repeating = false) - { - trigger = now + secs_from_now; - secs = secs_from_now; - repeat = repeating; - } + Timer(unsigned int secs_from_now, bool repeating = false); /** Default destructor, removes the timer from the timer manager */ @@ -82,11 +76,13 @@ class CoreExport Timer /** Sets the interval between two ticks. */ - void SetInterval(time_t interval); + void SetInterval(unsigned int interval); /** Called when the timer ticks. * You should override this method with some useful code to * handle the tick event. + * @param TIME The current time. + * @return True if the Timer object is still valid, false if it was destructed. */ virtual bool Tick(time_t TIME) = 0; @@ -115,14 +111,14 @@ class CoreExport Timer } }; -typedef std::multimap TimerMap; - /** This class manages sets of Timers, and triggers them at their defined times. * This will ensure timers are not missed, as well as removing timers that have * expired and allowing the addition of new ones. */ class CoreExport TimerManager { + typedef std::multimap TimerMap; + /** A list of all pending timers */ TimerMap Timers;