Computer Assited Medical Intervention Tool Kit  version 5.0
Chrono Class Reference

Elapsed real-time timer. Allows one to measure elapsed real time. You can start, stop, reset and of course get and print the current values of this chronometer. More...

#include <Chrono.h>

+ Collaboration diagram for Chrono:

Public Member Functions

 Chrono ()
 default constructor More...
 
 Chrono (double)
 new chrono that starts directly at the given time More...
 
double get () const
 if running, get the value (start time - now) without stopping the chrono, else get (start time - stop time) value this method is declared to be const, because we need to call it in << (and of course, no data member is modified More...
 
void hold (bool)
 pause the chrono if the parameter is true More...
 
void reset ()
 reset to zero More...
 
void start ()
 start at zero More...
 
void start (double)
 start at a given value More...
 
double stop ()
 stop chrono More...
 
 ~Chrono ()=default
 

Private Member Functions

double getTimeInMilliseconds () const
 in milliseconds More...
 

Private Attributes

double accumulatedTime
 
bool running
 
double startValue
 
double stopValue
 

Friends

std::ostream & operator<< (std::ostream &, const Chrono)
 print the value of the chrono on the stream More...
 

Detailed Description

Elapsed real-time timer. Allows one to measure elapsed real time. You can start, stop, reset and of course get and print the current values of this chronometer.

Constructor & Destructor Documentation

◆ Chrono() [1/2]

Chrono::Chrono ( )

default constructor

References accumulatedTime, running, startValue, and stopValue.

◆ Chrono() [2/2]

Chrono::Chrono ( double  init)

new chrono that starts directly at the given time

References accumulatedTime, running, startValue, and stopValue.

◆ ~Chrono()

Chrono::~Chrono ( )
default

Member Function Documentation

◆ get()

double Chrono::get ( ) const

if running, get the value (start time - now) without stopping the chrono, else get (start time - stop time) value this method is declared to be const, because we need to call it in << (and of course, no data member is modified

References accumulatedTime, getTimeInMilliseconds(), running, startValue, and stopValue.

Referenced by operator<<().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getTimeInMilliseconds()

double Chrono::getTimeInMilliseconds ( ) const
private

in milliseconds

Referenced by get(), start(), and stop().

+ Here is the caller graph for this function:

◆ hold()

void Chrono::hold ( bool  pause)

pause the chrono if the parameter is true

References accumulatedTime, start(), and stop().

+ Here is the call graph for this function:

◆ reset()

void Chrono::reset ( )

reset to zero

References accumulatedTime, running, startValue, and stopValue.

◆ start() [1/2]

void Chrono::start ( )

start at zero

References accumulatedTime, getTimeInMilliseconds(), running, startValue, and stopValue.

Referenced by InteractiveMonitoringManager::doMove(), hold(), and start().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ start() [2/2]

void Chrono::start ( double  init)

start at a given value

References running, start(), startValue, and stopValue.

+ Here is the call graph for this function:

◆ stop()

double Chrono::stop ( )

stop chrono

References accumulatedTime, getTimeInMilliseconds(), running, startValue, and stopValue.

Referenced by InteractiveMonitoringManager::doMove(), and hold().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  o,
const Chrono  c 
)
friend

print the value of the chrono on the stream

Member Data Documentation

◆ accumulatedTime

double Chrono::accumulatedTime
private

Referenced by Chrono(), get(), hold(), reset(), start(), and stop().

◆ running

bool Chrono::running
private

Referenced by Chrono(), get(), reset(), start(), and stop().

◆ startValue

double Chrono::startValue
private

Referenced by Chrono(), get(), reset(), start(), and stop().

◆ stopValue

double Chrono::stopValue
private

Referenced by Chrono(), get(), reset(), start(), and stop().


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