VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
vtkExecutionTimer Class Reference

Time filter execution. More...

#include <vtkExecutionTimer.h>

Inheritance diagram for vtkExecutionTimer:
Inheritance graph
[legend]
Collaboration diagram for vtkExecutionTimer:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkObject Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkExecutionTimerNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
void SetFilter (vtkAlgorithm *filter)
virtual vtkAlgorithmGetFilter ()
virtual double GetElapsedCPUTime ()
virtual double GetElapsedWallClockTime ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkExecutionTimerSafeDownCast (vtkObjectBase *o)
static vtkExecutionTimerNew ()

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkExecutionTimer ()
 ~vtkExecutionTimer ()
virtual void TimerFinished ()
void StartTimer ()
void StopTimer ()

Static Protected Member Functions

static void EventRelay (vtkObject *caller, unsigned long eventId, void *clientData, void *callData)

Protected Attributes

vtkCallbackCommandCallback
vtkAlgorithmFilter
double CPUStartTime
double CPUEndTime
double WallClockStartTime
double WallClockEndTime
double ElapsedCPUTime
double ElapsedWallClockTime

Detailed Description

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.


Member Typedef Documentation

Reimplemented from vtkObject.

Definition at line 46 of file vtkExecutionTimer.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkExecutionTimer::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 vtkExecutionTimer::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.

Reimplemented from vtkObject.

virtual vtkObjectBase* vtkExecutionTimer::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkObject.

Reimplemented from vtkObject.

void vtkExecutionTimer::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkObject.

Construct a new timer with no attached filter. Use SetFilter() to specify the vtkAlgorithm whose execution you want to time.

Reimplemented from vtkObject.

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.

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.

Get the total CPU time (in seconds) that elapsed between StartEvent and EndEvent. This is undefined before the filter has finished executing.

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 ( ) [protected, virtual]

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 
) [static, protected]

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.


Member Data Documentation

Definition at line 82 of file vtkExecutionTimer.h.

Definition at line 85 of file vtkExecutionTimer.h.

Definition at line 88 of file vtkExecutionTimer.h.

Definition at line 89 of file vtkExecutionTimer.h.

Definition at line 91 of file vtkExecutionTimer.h.

Definition at line 92 of file vtkExecutionTimer.h.

Definition at line 94 of file vtkExecutionTimer.h.

Definition at line 95 of file vtkExecutionTimer.h.


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