summaryrefslogtreecommitdiffstats
path: root/ml/dlib/dlib/timer/timer_abstract.h
diff options
context:
space:
mode:
Diffstat (limited to 'ml/dlib/dlib/timer/timer_abstract.h')
-rw-r--r--ml/dlib/dlib/timer/timer_abstract.h190
1 files changed, 0 insertions, 190 deletions
diff --git a/ml/dlib/dlib/timer/timer_abstract.h b/ml/dlib/dlib/timer/timer_abstract.h
deleted file mode 100644
index 180cd490d..000000000
--- a/ml/dlib/dlib/timer/timer_abstract.h
+++ /dev/null
@@ -1,190 +0,0 @@
-// Copyright (C) 2005 Davis E. King (davis@dlib.net)
-// License: Boost Software License See LICENSE.txt for the full license.
-#undef DLIB_TIMER_KERNEl_ABSTRACT_
-#ifdef DLIB_TIMER_KERNEl_ABSTRACT_
-
-#include "../threads.h"
-
-namespace dlib
-{
-
- template <
- typename T
- >
- class timer
- {
- /*!
- INITIAL VALUE
- is_running() == false
- delay_time() == 1000
- action_object() == The object that is passed into the constructor
- action_function() == The member function pointer that is passed to
- the constructor.
-
- WHAT THIS OBJECT REPRESENTS
- This object represents a timer that will call a given member function
- (the action function) repeatedly at regular intervals and in its own
- thread.
-
- Note that the delay_time() is measured in milliseconds but you are not
- guaranteed to have that level of resolution. The actual resolution
- is implementation dependent.
-
- THREAD SAFETY
- All methods of this class are thread safe.
- !*/
-
- public:
-
- typedef void (T::*af_type)();
-
- timer (
- T& ao,
- af_type af
- );
- /*!
- requires
- - af does not throw
- ensures
- - does not block.
- - #*this is properly initialized
- - #action_object() == ao
- - #action_function() == af
- (af is a member function pointer to a member in the class T)
- throws
- - std::bad_alloc
- - dlib::thread_error
- !*/
-
- virtual ~timer (
- );
- /*!
- requires
- - is not called from inside the action_function()
- ensures
- - any resources associated with *this have been released
- - will not call the action_function() anymore.
- - if (the action function is currently executing) then
- - blocks until it finishes
- !*/
-
- void clear(
- );
- /*!
- ensures
- - #*this has its initial value
- - does not block
- throws
- - std::bad_alloc or dlib::thread_error
- If either of these exceptions are thrown then #*this is unusable
- until clear() is called and succeeds.
- !*/
-
- af_type action_function (
- ) const;
- /*!
- ensures
- - does not block.
- - returns a pointer to the member function of action_object() that is
- called by *this.
- !*/
-
- const T& action_object (
- ) const;
- /*!
- ensures
- - does not block.
- - returns a const reference to the object used to call the member
- function pointer action_function()
- !*/
-
- T& action_object (
- );
- /*!
- ensures
- - does not block.
- - returns a non-const reference to the object used to call the member
- function pointer action_function()
- !*/
-
- bool is_running (
- ) const;
- /*!
- ensures
- - does not block.
- - if (*this is currently scheduled to call the action_function()) then
- - returns true
- - else
- - returns false
- !*/
-
- unsigned long delay_time (
- ) const;
- /*!
- ensures
- - does not block.
- - returns the amount of time, in milliseconds, that *this will wait between
- the return of one call to the action_function() and the beginning of the
- next call to the action_function().
- !*/
-
- void set_delay_time (
- unsigned long milliseconds
- );
- /*!
- ensures
- - does not block.
- - #delay_time() == milliseconds
- throws
- - std::bad_alloc or dlib::thread_error
- If either of these exceptions are thrown then #is_running() == false
- but otherwise this function succeeds
- !*/
-
- void start (
- );
- /*!
- ensures
- - does not block.
- - if (is_running() == false) then
- - #is_running() == true
- - The action_function() will run in another thread.
- - The first call to the action_function() will occur in roughly
- delay_time() milliseconds.
- - else
- - this call to start() has no effect
- throws
- - dlib::thread_error or std::bad_alloc
- If this exception is thrown then #is_running() == false but
- otherwise this call to start() has no effect.
- !*/
-
- void stop (
- );
- /*!
- ensures
- - #is_running() == false
- - does not block.
- !*/
-
- void stop_and_wait (
- );
- /*!
- ensures
- - #is_running() == false
- - if (the action function is currently executing) then
- - blocks until it finishes
- !*/
-
- private:
-
- // restricted functions
- timer(const timer<T>&); // copy constructor
- timer<T>& operator=(const timer<T>&); // assignment operator
-
- };
-
-}
-
-#endif // DLIB_TIMER_KERNEl_ABSTRACT_
-