00001 #ifndef UNITTEST_TIMEHELPERS_H
00002 #define UNITTEST_TIMEHELPERS_H
00003 
00004 #include "../Config.h"
00005 
00006 
00007 #ifdef UNITTEST_MINGW
00008     #ifndef __int64
00009         #define __int64 long long
00010     #endif
00011 #endif
00012 
00013 namespace UnitTest {
00014 
00015 class Timer
00016 {
00017 public:
00018     Timer();
00019         void Start();
00020         double GetTimeInMs() const;    
00021 
00022 private:
00023     __int64 GetTime() const;
00024 
00025     void* m_threadHandle;
00026 
00027 #if defined(_WIN64)
00028     unsigned __int64 m_processAffinityMask;
00029 #else
00030     unsigned long m_processAffinityMask;
00031 #endif
00032 
00033         __int64 m_startTime;
00034         __int64 m_frequency;
00035 };
00036 
00037 
00038 namespace TimeHelpers
00039 {
00040 void SleepMs (int ms);
00041 }
00042 
00043 
00044 }
00045 
00046 
00047 
00048 #endif