]> git.tdb.fi Git - libs/core.git/blobdiff - source/time/timer.h
Split Timer::tick into two overloads
[libs/core.git] / source / time / timer.h
index 90d870ca9a3afbd44b155f5ccfb5b85747c02442..21aeb2b4b5b02ea0b41932f4a3311028f35c7e55 100644 (file)
@@ -66,13 +66,21 @@ public:
        /** Cancels a previously added timer. */
        void cancel(Slot &);
 
-       /** Checks all timers, executing any that have timed out.  If block is true,
-       waits until one times out.
+       /** Deprecated.  Use one of the other overloads. */
+       void tick(bool block);
 
-       Note: If there are no active timers when a blocking tick is executed, it
-       won't return until a timer is added from another thread. */
-       void tick(bool block = true);
+       /** Waits until a timer expires, then executes it.  If no timers have been
+       set, blocks until one is added from another thread. */
+       void tick();
 
+       /** Waits until a timer expires but at most the specified amount of time.
+       If a timer did expire before the timeout, it is executed. */
+       void tick(const TimeDelta &);
+
+private:
+       void do_tick(const TimeDelta &);
+
+public:
        TimeStamp get_next_timeout() const;
 };