/* sys/timer.h This file is part of the Osirion project and is distributed under the terms and conditions of the GNU General Public License version 2 */ #ifndef __INCLUDED_SYS_TIMER_H__ #define __INCLUDED_SYS_TIMER_H__ namespace sys { /// a timer measures intervals in seconds /*! A timer class measures the time elapsed * between the last two calls to its mark() function. */ class Timer { public: /** * @brief constructor * The constructor autmaticly calls reset() * */ Timer(); /** * @brief destructor * */ ~Timer(); /** * @brief reset the timer to 0 */ void reset(); /** * @brief return the time elapsed since the last reset() call, in milliseconds * * */ unsigned long timestamp() const; private: unsigned long timer_start; }; // class Timer } // namespace sys #endif // __INCLUDED_SYS_TIMER_H__