class ProfileTimer



Create a ProfileTimer and hold onto it. Call init() whenever you like (the timer doesn’t

start yet).

Call on() to start the timer. While the timer is on, call mark() at each point of interest,

in the code you are timing.

You can turn the timer off() and on() to skip things you

don’t want to time.

When your timing is finished, call printTo() to see the

results (e.g. myTimer.printTo(cerr)).


You should be able to time things down to the millisecond well enough, but if you call on() and off() within micro- seconds of each other, I don’t think you’ll get very good results.


Inheritance diagram

Inheritance diagram of ProfileTimer

__init__(other: ProfileTimer) → None
__init__(name: str, maxEntries: int) → None
static consolidateAllTo(out: ostream) → None
consolidateTo(out: ostream) → None
getTotalTime() → float

Don’t call any of the following during timing: (Because they are slow, not because anything will break).

init(name: str, maxEntries: int) → None
mark(tag: str) → None
off() → None
off(tag: str) → None
on() → None
static printAllTo(out: ostream) → None
printTo(out: ostream) → None