43 #ifndef __CSTATTIMER_H__ 44 #define __CSTATTIMER_H__ 60 #define GET_CLOCK_COUNT(x) QueryPerformanceCounter((LARGE_INTEGER *)x) 62 #define GET_CLOCK_COUNT(x) gettimeofday(x, NULL) 65 #define MILLISECONDS_CONVERSION 1000 66 #define MICROSECONDS_CONVERSION 1000000 82 memset(&m_startTime, 0,
sizeof(
struct timeval));
83 memset(&m_endTime, 0,
sizeof(
struct timeval));
86 struct timeval GetStartTime() {
return m_startTime; };
87 void SetStartTime() { GET_CLOCK_COUNT(&m_startTime); };
89 struct timeval GetEndTime() {
return m_endTime; };
90 void SetEndTime() { GET_CLOCK_COUNT(&m_endTime); };
92 uint32_t GetMilliSeconds() {
return (CalcTotalUSec() / MILLISECONDS_CONVERSION); };
93 uint64_t GetMicroSeconds() {
return (CalcTotalUSec()); };
94 uint32_t GetSeconds() {
return (CalcTotalUSec() / MICROSECONDS_CONVERSION); };
96 static uint64_t GetCurrentTime()
98 struct timeval tmpTime;
99 GET_CLOCK_COUNT(&tmpTime);
100 return ((tmpTime.tv_sec * MICROSECONDS_CONVERSION) + tmpTime.tv_usec);
104 uint32_t CalcTotalUSec() {
return (((m_endTime.tv_sec - m_startTime.tv_sec) * MICROSECONDS_CONVERSION) +
105 (m_endTime.tv_usec - m_startTime.tv_usec)); };
109 struct timeval m_startTime;
110 struct timeval m_endTime;
113 #endif // __CSTATTIMER_H__ Definition: StatTimer.h:70