Open-Transactions  0.93.0-ge03d287
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Timer Class Reference

#include <Timer.hpp>

Public Member Functions

EXPORT Timer (bool bStart=false)
 
EXPORT ~Timer ()
 
EXPORT void start ()
 
void stop ()
 
void clear ()
 
double getElapsedTime ()
 
double getElapsedTimeInSec ()
 
EXPORT double getElapsedTimeInMilliSec ()
 
double getElapsedTimeInMicroSec ()
 

Detailed Description

Definition at line 31 of file Timer.hpp.

Constructor & Destructor Documentation

Timer::Timer ( bool  bStart = false)

Definition at line 21 of file Timer.cpp.

22 {
23  clear();
24 
25  // FT: Added this part:
26  //
27  if (bStart) start();
28 }
EXPORT void start()
Definition: Timer.cpp:41
void clear()
Definition: Timer.cpp:69
Timer::~Timer ( )

Definition at line 33 of file Timer.cpp.

34 {
35 }

Member Function Documentation

void Timer::clear ( )

Definition at line 69 of file Timer.cpp.

70 {
71 #ifdef WIN32
72  QueryPerformanceFrequency(&frequency);
73  startCount.QuadPart = 0;
74  endCount.QuadPart = 0;
75 #else
76  startCount.tv_sec = startCount.tv_usec = 0;
77  endCount.tv_sec = endCount.tv_usec = 0;
78 #endif
79 
80  stopped = 0;
81  startTimeInMicroSec = 0;
82  endTimeInMicroSec = 0;
83 }
double Timer::getElapsedTime ( )

Definition at line 127 of file Timer.cpp.

128 {
129  return getElapsedTimeInSec();
130 }
double getElapsedTimeInSec()
Definition: Timer.cpp:119
double Timer::getElapsedTimeInMicroSec ( )

Definition at line 90 of file Timer.cpp.

91 {
92 #ifdef WIN32
93  if (!stopped) QueryPerformanceCounter(&endCount);
94 
95  startTimeInMicroSec =
96  startCount.QuadPart * (1000000.0 / frequency.QuadPart);
97  endTimeInMicroSec = endCount.QuadPart * (1000000.0 / frequency.QuadPart);
98 #else
99  if (!stopped) gettimeofday(&endCount, nullptr);
100 
101  startTimeInMicroSec = (startCount.tv_sec * 1000000.0) + startCount.tv_usec;
102  endTimeInMicroSec = (endCount.tv_sec * 1000000.0) + endCount.tv_usec;
103 #endif
104 
105  return endTimeInMicroSec - startTimeInMicroSec;
106 }
double Timer::getElapsedTimeInMilliSec ( )

Definition at line 111 of file Timer.cpp.

112 {
113  return getElapsedTimeInMicroSec() * 0.001;
114 }
double getElapsedTimeInMicroSec()
Definition: Timer.cpp:90
double Timer::getElapsedTimeInSec ( )

Definition at line 119 of file Timer.cpp.

120 {
121  return getElapsedTimeInMicroSec() * 0.000001;
122 }
double getElapsedTimeInMicroSec()
Definition: Timer.cpp:90
void Timer::start ( )

Definition at line 41 of file Timer.cpp.

42 {
43  stopped = 0; // reset stop flag
44 #ifdef WIN32
45  QueryPerformanceCounter(&startCount);
46 #else
47  gettimeofday(&startCount, nullptr);
48 #endif
49 }
void Timer::stop ( )

Definition at line 55 of file Timer.cpp.

56 {
57  stopped = 1; // set timer stopped flag
58 
59 #ifdef WIN32
60  QueryPerformanceCounter(&endCount);
61 #else
62  gettimeofday(&endCount, nullptr);
63 #endif
64 }

The documentation for this class was generated from the following files: