VTK
|
Timer support and logging. More...
#include <vtkTimerLog.h>
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkTimerLog * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | StartTimer () |
void | StopTimer () |
double | GetElapsedTime () |
Static Public Member Functions | |
static vtkTimerLog * | New () |
static int | IsTypeOf (const char *type) |
static vtkTimerLog * | SafeDownCast (vtkObjectBase *o) |
static void | DumpLog (const char *filename) |
static void | MarkEvent (const char *EventString) |
static void | ResetLog () |
static void | AllocateLog () |
static void | CleanupLog () |
static double | GetUniversalTime () |
static double | GetCPUTime () |
static void | SetLogging (int v) |
static int | GetLogging () |
static void | LoggingOn () |
static void | LoggingOff () |
static void | SetMaxEntries (int a) |
static int | GetMaxEntries () |
static void | FormatAndMarkEvent (const char *EventString,...) |
static void | MarkStartEvent (const char *EventString) |
static void | MarkEndEvent (const char *EventString) |
static void | DumpLogWithIndents (ostream *os, double threshold) |
static int | GetNumberOfEvents () |
static int | GetEventIndent (int i) |
static double | GetEventWallTime (int i) |
static const char * | GetEventString (int i) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkTimerLog () | |
virtual | ~vtkTimerLog () |
Static Protected Member Functions | |
static vtkTimerLogEntry * | GetEvent (int i) |
static void | DumpEntry (ostream &os, int index, double time, double deltatime, int tick, int deltatick, const char *event) |
Protected Attributes | |
double | StartTime |
double | EndTime |
Static Protected Attributes | |
static int | Logging |
static int | Indent |
static int | MaxEntries |
static int | NextEntry |
static int | WrapFlag |
static int | TicksPerSecond |
static vtkTimerLogEntry * | TimerLog |
static timeval | FirstWallTime |
static timeval | CurrentWallTime |
static tms | FirstCpuTicks |
static tms | CurrentCpuTicks |
Timer support and logging.
vtkTimerLog contains walltime and cputime measurements associated with a given event. These results can be later analyzed when "dumping out" the table.
In addition, vtkTimerLog allows the user to simply get the current time, and to start/stop a simple timer separate from the timing table logging.
Definition at line 81 of file vtkTimerLog.h.
typedef vtkObject vtkTimerLog::Superclass |
Reimplemented from vtkObject.
Definition at line 86 of file vtkTimerLog.h.
vtkTimerLog::vtkTimerLog | ( | ) | [inline, protected] |
Definition at line 167 of file vtkTimerLog.h.
virtual vtkTimerLog::~vtkTimerLog | ( | ) | [inline, protected, virtual] |
Definition at line 168 of file vtkTimerLog.h.
static vtkTimerLog* vtkTimerLog::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
static int vtkTimerLog::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
virtual int vtkTimerLog::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
static vtkTimerLog* vtkTimerLog::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
virtual vtkObjectBase* vtkTimerLog::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
vtkTimerLog* vtkTimerLog::NewInstance | ( | ) | const |
Reimplemented from vtkObject.
void vtkTimerLog::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
static void vtkTimerLog::SetLogging | ( | int | v | ) | [inline, static] |
This flag will turn loging of events off or on. By default, logging is on.
Definition at line 92 of file vtkTimerLog.h.
static int vtkTimerLog::GetLogging | ( | ) | [inline, static] |
This flag will turn loging of events off or on. By default, logging is on.
Definition at line 93 of file vtkTimerLog.h.
static void vtkTimerLog::LoggingOn | ( | ) | [inline, static] |
This flag will turn loging of events off or on. By default, logging is on.
Definition at line 94 of file vtkTimerLog.h.
static void vtkTimerLog::LoggingOff | ( | ) | [inline, static] |
This flag will turn loging of events off or on. By default, logging is on.
Definition at line 95 of file vtkTimerLog.h.
static void vtkTimerLog::SetMaxEntries | ( | int | a | ) | [static] |
Set/Get the maximum number of entries allowed in the timer log
static int vtkTimerLog::GetMaxEntries | ( | ) | [static] |
Set/Get the maximum number of entries allowed in the timer log
static void vtkTimerLog::FormatAndMarkEvent | ( | const char * | EventString, |
... | |||
) | [static] |
Record a timing event. The event is represented by a formatted string.
static void vtkTimerLog::DumpLog | ( | const char * | filename | ) | [static] |
Write the timing table out to a file. Calculate some helpful statistics (deltas and percentages) in the process.
static void vtkTimerLog::MarkStartEvent | ( | const char * | EventString | ) | [static] |
I want to time events, so I am creating this interface to mark events that have a start and an end. These events can be, nested. The standard Dumplog ignores the indents.
static void vtkTimerLog::MarkEndEvent | ( | const char * | EventString | ) | [static] |
I want to time events, so I am creating this interface to mark events that have a start and an end. These events can be, nested. The standard Dumplog ignores the indents.
static void vtkTimerLog::DumpLogWithIndents | ( | ostream * | os, |
double | threshold | ||
) | [static] |
I want to time events, so I am creating this interface to mark events that have a start and an end. These events can be, nested. The standard Dumplog ignores the indents.
static int vtkTimerLog::GetNumberOfEvents | ( | ) | [static] |
Programatic access to events. Indexed from 0 to num-1.
static int vtkTimerLog::GetEventIndent | ( | int | i | ) | [static] |
Programatic access to events. Indexed from 0 to num-1.
static double vtkTimerLog::GetEventWallTime | ( | int | i | ) | [static] |
Programatic access to events. Indexed from 0 to num-1.
static const char* vtkTimerLog::GetEventString | ( | int | i | ) | [static] |
Programatic access to events. Indexed from 0 to num-1.
static void vtkTimerLog::MarkEvent | ( | const char * | EventString | ) | [static] |
Record a timing event and capture wall time and cpu ticks.
static void vtkTimerLog::ResetLog | ( | ) | [static] |
Clear the timing table. walltime and cputime will also be set to zero when the first new event is recorded.
static void vtkTimerLog::AllocateLog | ( | ) | [static] |
Allocate timing table with MaxEntries elements.
static void vtkTimerLog::CleanupLog | ( | ) | [static] |
Remove timer log.
static double vtkTimerLog::GetUniversalTime | ( | ) | [static] |
Returns the elapsed number of seconds since January 1, 1970. This is also called Universal Coordinated Time.
static double vtkTimerLog::GetCPUTime | ( | ) | [static] |
Returns the CPU time for this process On Win32 platforms this actually returns wall time.
void vtkTimerLog::StartTimer | ( | ) |
Set the StartTime to the current time. Used with GetElapsedTime().
void vtkTimerLog::StopTimer | ( | ) |
Sets EndTime to the current time. Used with GetElapsedTime().
Returns the difference between StartTime and EndTime as a doubleing point value indicating the elapsed time in seconds.
static vtkTimerLogEntry* vtkTimerLog::GetEvent | ( | int | i | ) | [static, protected] |
static void vtkTimerLog::DumpEntry | ( | ostream & | os, |
int | index, | ||
double | time, | ||
double | deltatime, | ||
int | tick, | ||
int | deltatick, | ||
const char * | event | ||
) | [static, protected] |
int vtkTimerLog::Logging [static, protected] |
Definition at line 172 of file vtkTimerLog.h.
int vtkTimerLog::Indent [static, protected] |
Definition at line 173 of file vtkTimerLog.h.
int vtkTimerLog::MaxEntries [static, protected] |
Definition at line 174 of file vtkTimerLog.h.
int vtkTimerLog::NextEntry [static, protected] |
Definition at line 175 of file vtkTimerLog.h.
int vtkTimerLog::WrapFlag [static, protected] |
Definition at line 176 of file vtkTimerLog.h.
int vtkTimerLog::TicksPerSecond [static, protected] |
Definition at line 177 of file vtkTimerLog.h.
vtkTimerLogEntry* vtkTimerLog::TimerLog [static, protected] |
Definition at line 178 of file vtkTimerLog.h.
timeval vtkTimerLog::FirstWallTime [static, protected] |
Definition at line 189 of file vtkTimerLog.h.
timeval vtkTimerLog::CurrentWallTime [static, protected] |
Definition at line 190 of file vtkTimerLog.h.
tms vtkTimerLog::FirstCpuTicks [static, protected] |
Definition at line 191 of file vtkTimerLog.h.
tms vtkTimerLog::CurrentCpuTicks [static, protected] |
Definition at line 192 of file vtkTimerLog.h.
double vtkTimerLog::StartTime [protected] |
Definition at line 197 of file vtkTimerLog.h.
double vtkTimerLog::EndTime [protected] |
Definition at line 198 of file vtkTimerLog.h.