00001
#ifndef TIMER_H
00002
#define TIMER_H
00003
00004
#include "Singleton.h"
00005
00007
00010 class CTimer
00011 {
00012
00013
public:
00018
void Reset();
00023
double GetTime();
00028
double GetAbsoluteTime();
00033
virtual void Pause();
00038
virtual void Unpause();
00039
00040
public:
00041
00042
CTimer();
00043
virtual ~
CTimer();
00044
00045
private:
00046
00047 __int64 m_dwFrequency;
00048 __int64 m_dwTimerStart;
00050
unsigned int m_uiTimerStart;
00051
int m_iPauseCount;
00053
bool m_bUsePerformanceCounter;
00055
double m_fPauseTime;
00056
float m_fResolution;
00057 };
00058
00060
00063 class CGlobalTimer :
public CTimer,
public CSingleton<CGlobalTimer>
00064 {
00065
public:
00066
CGlobalTimer() {};
00067
virtual ~
CGlobalTimer() {};
00068 };
00069
00070
#endif // ndef TIMER_H