Timer class, measures execution times.
More...
#include <SurgSim/Framework/Timer.h>
Timer class, measures execution times.
Multiple times can be stored as "frames" to provide an average rate or period.
The Clock used by the Timer class.
Durations used by the Timer class.
Time points used by the Timer class.
SurgSim::Framework::Timer::Timer |
( |
| ) |
|
Instantiate a TimerClock and start a timing run.
void SurgSim::Framework::Timer::beginFrame |
( |
| ) |
|
Begin a frame (storing the current time).
void SurgSim::Framework::Timer::endFrame |
( |
| ) |
|
End this frame by storing the duration since the current frame was begun.
- Note
endFrame
does not start a new frame, call beginFrame
to do so.
- See also
- Timer::markFrame
double SurgSim::Framework::Timer::getAverageFramePeriod |
( |
| ) |
const |
Return the average duration across all stored frames.
Asserts if there are no frames.
- Returns
- Average period in seconds.
double SurgSim::Framework::Timer::getAverageFrameRate |
( |
| ) |
const |
Return the inverse of the average duration across all stored frames.
Asserts if there are no frames.
- Returns
- The average frequency in Hz.
double SurgSim::Framework::Timer::getCumulativeTime |
( |
| ) |
const |
Return the sum of the durations over all the stored frames.
Asserts if there are no frames.
- Returns
- Sum of stored frame durations in seconds.
size_t SurgSim::Framework::Timer::getCurrentNumberOfFrames |
( |
| ) |
const |
- Returns
- Number of frames currently stored (not the maximum number of frames).
double SurgSim::Framework::Timer::getLastFramePeriod |
( |
| ) |
const |
Return the duration of the most-recent frame (time between last endFrame
and the previous start
, beginFrame
, or endFrame
).
Asserts if there are no frames.
- Returns
- Most-recent period in seconds.
double SurgSim::Framework::Timer::getLastFrameRate |
( |
| ) |
const |
Return the inverse of the duration of the most-recent frame.
Asserts if there are no frames.
- Returns
- Most-recent frequency in Hz.
double SurgSim::Framework::Timer::getMaxFramePeriod |
( |
| ) |
const |
- Returns
- The maximum duration across all the stored frames. Asserts if there are no frames.
double SurgSim::Framework::Timer::getMinFramePeriod |
( |
| ) |
const |
- Returns
- The minimum duration across all the stored frames. Asserts if there are no frames.
size_t SurgSim::Framework::Timer::getNumberOfClockFails |
( |
| ) |
const |
- Returns
- Number of times the clock returned an error code since
start
. If this is non-zero, the frame durations may be incorrect.
void SurgSim::Framework::Timer::markFrame |
( |
| ) |
|
End the current frame and begin a new frame.
Get the current time.
Checks for any error code from the clock.
- Returns
- Current time.
void SurgSim::Framework::Timer::setMaxNumberOfFrames |
( |
size_t |
numberOfFrames | ) |
|
Set the maximum number of frames to store.
void SurgSim::Framework::Timer::start |
( |
| ) |
|
Begin a timing run by clearing out any stored frames and beginning a frame.
const TimerClock SurgSim::Framework::Timer::m_clock |
|
staticprivate |
The clock used to get the time.
size_t SurgSim::Framework::Timer::m_clockFails |
|
private |
Number of clock errors since last start
.
std::deque<TimerDuration> SurgSim::Framework::Timer::m_frameDurations |
|
private |
Durations of the frames, i.e., the "stored frames".
The time at last start
, beginFrame
, or markFrame
.
size_t SurgSim::Framework::Timer::m_maxNumberOfFrames |
|
private |
Maximum number of frames to store.
The documentation for this class was generated from the following files: