k3d::ipipeline_profiler Class Reference

Abstract interface for an object that collects and distributes profiling data for the K-3D visualization pipeline. More...

#include <ipipeline_profiler.h>

Inheritance diagram for k3d::ipipeline_profiler:
Inheritance graph
[legend]

List of all members.

Classes

class  profile
 RAII helper class that records profile information for the current scope with return- and exception-safety. More...

Public Member Functions

virtual void start_execution (inode &Node, const string_t &Task)=0
 Called by a node to indicate that it has begun processing the given task. Note: it is critical that every call to start_execution() is balanced with a call to finish_execution().
virtual void finish_execution (inode &Node, const string_t &Task)=0
 Called by a node to indicate that it has finished processing the given task. Note: it is critical that every call to finish_execution() matches a call to start_execution().
virtual void add_timing_entry (inode &Node, const string_t &Task, const double TimingValue)=0
 Called by a node to manually add a profiling entry.
virtual sigc::connection connect_node_execution_signal (const sigc::slot< void, inode &, const string_t &, double > &Slot)=0
 Connects a slot that will be called to report the time in seconds that a node spent processing a given task.

Protected Member Functions

 ipipeline_profiler ()
 ipipeline_profiler (const ipipeline_profiler &Other)
ipipeline_profileroperator= (const ipipeline_profiler &)
virtual ~ipipeline_profiler ()

Detailed Description

Abstract interface for an object that collects and distributes profiling data for the K-3D visualization pipeline.


Constructor & Destructor Documentation

k3d::ipipeline_profiler::ipipeline_profiler (  )  [inline, protected]
k3d::ipipeline_profiler::ipipeline_profiler ( const ipipeline_profiler Other  )  [inline, protected]
virtual k3d::ipipeline_profiler::~ipipeline_profiler (  )  [inline, protected, virtual]

Member Function Documentation

virtual void k3d::ipipeline_profiler::add_timing_entry ( inode Node,
const string_t Task,
const double  TimingValue 
) [pure virtual]

Called by a node to manually add a profiling entry.

Implemented in k3d::pipeline_profiler.

virtual sigc::connection k3d::ipipeline_profiler::connect_node_execution_signal ( const sigc::slot< void, inode &, const string_t &, double > &  Slot  )  [pure virtual]

Connects a slot that will be called to report the time in seconds that a node spent processing a given task.

Implemented in k3d::pipeline_profiler.

virtual void k3d::ipipeline_profiler::finish_execution ( inode Node,
const string_t Task 
) [pure virtual]

Called by a node to indicate that it has finished processing the given task. Note: it is critical that every call to finish_execution() matches a call to start_execution().

Implemented in k3d::pipeline_profiler.

Referenced by k3d::mesh_simple_deformation_modifier::on_update_mesh(), and k3d::ipipeline_profiler::profile::~profile().

ipipeline_profiler& k3d::ipipeline_profiler::operator= ( const ipipeline_profiler  )  [inline, protected]
virtual void k3d::ipipeline_profiler::start_execution ( inode Node,
const string_t Task 
) [pure virtual]

Called by a node to indicate that it has begun processing the given task. Note: it is critical that every call to start_execution() is balanced with a call to finish_execution().

Implemented in k3d::pipeline_profiler.

Referenced by k3d::mesh_simple_deformation_modifier::on_update_mesh(), and k3d::ipipeline_profiler::profile::profile().


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

Generated on Mon Mar 21 07:41:57 2011 for K-3D by doxygen 1.6.3