DyLP
1.10.4
|
This class implements a timer that also implements a tracing functionality. More...
#include <CoinTime.hpp>
Public Member Functions | |
CoinTimer () | |
Default constructor creates a timer with no time limit and no tracing. More... | |
CoinTimer (double lim) | |
Create a timer with the given time limit and with no tracing. More... | |
void | restart () |
Restart the timer (keeping the same time limit) More... | |
void | reset () |
An alternate name for restart() More... | |
void | reset (double lim) |
Reset (and restart) the timer and change its time limit. More... | |
bool | isPastPercent (double pct) const |
Return whether the given percentage of the time limit has elapsed since the timer was started. More... | |
bool | isPast (double lim) const |
Return whether the given amount of time has elapsed since the timer was started. More... | |
bool | isExpired () const |
Return whether the originally specified time limit has passed since the timer was started. More... | |
double | timeLeft () const |
Return how much time is left on the timer. More... | |
double | timeElapsed () const |
Return how much time has elapsed. More... | |
void | setLimit (double l) |
Private Member Functions | |
bool | evaluate (const bool b_tmp) const |
double | evaluate (const double d_tmp) const |
Private Attributes | |
double | start |
When the timer was initialized/reset/restarted. More... | |
double | limit |
double | end |
This class implements a timer that also implements a tracing functionality.
The timer stores the start time of the timer, for how much time it was set to and when does it expire (start + limit = end). Queries can be made that tell whether the timer is expired, is past an absolute time, is past a percentage of the length of the timer. All times are given in seconds, but as double numbers, so there can be fractional values.
The timer can also be initialized with a stream and a specification whether to write to or read from the stream. In the former case the result of every query is written into the stream, in the latter case timing is not tested at all, rather the supposed result is read out from the stream. This makes it possible to exactly retrace time sensitive program execution.
Definition at line 199 of file CoinTime.hpp.
|
inline |
Default constructor creates a timer with no time limit and no tracing.
Definition at line 247 of file CoinTime.hpp.
|
inline |
Create a timer with the given time limit and with no tracing.
Definition at line 259 of file CoinTime.hpp.
Definition at line 235 of file CoinTime.hpp.
|
inlineprivate |
Definition at line 239 of file CoinTime.hpp.
|
inline |
Restart the timer (keeping the same time limit)
Definition at line 295 of file CoinTime.hpp.
|
inline |
An alternate name for restart()
Definition at line 301 of file CoinTime.hpp.
|
inline |
Reset (and restart) the timer and change its time limit.
Definition at line 303 of file CoinTime.hpp.
|
inline |
Return whether the given percentage of the time limit has elapsed since the timer was started.
Definition at line 311 of file CoinTime.hpp.
|
inline |
Return whether the given amount of time has elapsed since the timer was started.
Definition at line 317 of file CoinTime.hpp.
|
inline |
Return whether the originally specified time limit has passed since the timer was started.
Definition at line 323 of file CoinTime.hpp.
|
inline |
Return how much time is left on the timer.
Definition at line 329 of file CoinTime.hpp.
|
inline |
Return how much time has elapsed.
Definition at line 335 of file CoinTime.hpp.
|
inline |
Definition at line 340 of file CoinTime.hpp.
|
private |
When the timer was initialized/reset/restarted.
Definition at line 202 of file CoinTime.hpp.
|
private |
Definition at line 204 of file CoinTime.hpp.
|
private |
Definition at line 205 of file CoinTime.hpp.