Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/sys/timer.h')
-rw-r--r--src/sys/timer.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/sys/timer.h b/src/sys/timer.h
new file mode 100644
index 0000000..125363d
--- /dev/null
+++ b/src/sys/timer.h
@@ -0,0 +1,50 @@
+/*
+ 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__
+