00001
00002
00003 #ifndef BASE_TIMER_H
00004 #define BASE_TIMER_H
00005
00006 #include "portable.h"
00007
00008 namespace base {
00010
00014 class PPBASE_EXPORT Timer {
00015 public:
00017 Timer();
00018
00020
00024 static double getMilliSecondsFromTicks(u_longlong_t ticks);
00025
00027
00031 static double getSecondsFromTicks(u_longlong_t ticks);
00032
00034
00037 static u_longlong_t getGlobalTicks();
00038
00040
00044 double getMilliSeconds(bool reset = false);
00045
00047
00051 double getSeconds(bool reset = false);
00052
00054
00058 u_longlong_t getTicks(bool reset = false);
00059
00061
00065 static void init();
00066
00068 void reset();
00069
00070 private:
00071 u_longlong_t _ticks;
00072 };
00073 }
00074
00075 #endif