Time filter execution.
More...
#include <vtkExecutionTimer.h>
Inherits vtkObject.
|
static void | EventRelay (vtkObject *caller, unsigned long eventId, void *clientData, void *callData) |
|
Time filter execution.
This object monitors a single filter for StartEvent and EndEvent. Each time it hears StartEvent it records the time. Each time it hears EndEvent it measures the elapsed time (both CPU and wall-clock) since the most recent StartEvent. Internally we use vtkTimerLog for measurements.
By default we simply store the elapsed time. You are welcome to subclass and override TimerFinished() to do anything you want.
- Tests:
- vtkExecutionTimer (Tests)
Definition at line 43 of file vtkExecutionTimer.h.
vtkExecutionTimer::vtkExecutionTimer |
( |
| ) |
|
|
protected |
vtkExecutionTimer::~vtkExecutionTimer |
( |
| ) |
|
|
protected |
static int vtkExecutionTimer::IsTypeOf |
( |
const char * |
type | ) |
|
|
static |
virtual int vtkExecutionTimer::IsA |
( |
const char * |
type | ) |
|
|
virtual |
virtual vtkObjectBase* vtkExecutionTimer::NewInstanceInternal |
( |
| ) |
const |
|
protectedvirtual |
void vtkExecutionTimer::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
| |
Construct a new timer with no attached filter. Use SetFilter() to specify the vtkAlgorithm whose execution you want to time.
void vtkExecutionTimer::SetFilter |
( |
vtkAlgorithm * |
filter | ) |
|
Set/get the filter to be monitored. The only real constraint here is that the vtkExecutive associated with the filter must fire StartEvent and EndEvent before and after the filter is executed. All VTK executives should do this.
virtual vtkAlgorithm* vtkExecutionTimer::GetFilter |
( |
| ) |
|
|
virtual |
Set/get the filter to be monitored. The only real constraint here is that the vtkExecutive associated with the filter must fire StartEvent and EndEvent before and after the filter is executed. All VTK executives should do this.
virtual double vtkExecutionTimer::GetElapsedCPUTime |
( |
| ) |
|
|
virtual |
Get the total CPU time (in seconds) that elapsed between StartEvent and EndEvent. This is undefined before the filter has finished executing.
virtual double vtkExecutionTimer::GetElapsedWallClockTime |
( |
| ) |
|
|
virtual |
Get the total wall clock time (in seconds) that elapsed between StartEvent and EndEvent. This is undefined before the filter has finished executing.
void vtkExecutionTimer::StartTimer |
( |
| ) |
|
|
protected |
Convenience functions – StartTimer clears out the elapsed times and records start times; StopTimer records end times and computes the elapsed time
void vtkExecutionTimer::StopTimer |
( |
| ) |
|
|
protected |
Convenience functions – StartTimer clears out the elapsed times and records start times; StopTimer records end times and computes the elapsed time
virtual void vtkExecutionTimer::TimerFinished |
( |
| ) |
|
|
protectedvirtual |
This is where you can do anything you want with the progress event. By default this does nothing.
static void vtkExecutionTimer::EventRelay |
( |
vtkObject * |
caller, |
|
|
unsigned long |
eventId, |
|
|
void * |
clientData, |
|
|
void * |
callData |
|
) |
| |
|
staticprotected |
This is the callback that VTK will invoke when it sees StartEvent and EndEvent. Its responsibility is to pass the event on to an instance of this observer class.
vtkCallbackCommand* vtkExecutionTimer::Callback |
|
protected |
vtkAlgorithm* vtkExecutionTimer::Filter |
|
protected |
double vtkExecutionTimer::CPUStartTime |
|
protected |
double vtkExecutionTimer::CPUEndTime |
|
protected |
double vtkExecutionTimer::WallClockStartTime |
|
protected |
double vtkExecutionTimer::WallClockEndTime |
|
protected |
double vtkExecutionTimer::ElapsedCPUTime |
|
protected |
double vtkExecutionTimer::ElapsedWallClockTime |
|
protected |
The documentation for this class was generated from the following file: