svcore  1.9
Profiler Class Reference

Profile point instance class. More...

#include <Profiler.h>

Collaboration diagram for Profiler:

List of all members.

Public Member Functions

 Profiler (const char *name, bool showOnDestruct=false)
 Create a profile point instance that records time consumed against the given profiling point name.
 ~Profiler ()
void update () const
void end ()

Protected Attributes

const char * m_c
clock_t m_startCPU
RealTime m_startTime
bool m_showOnDestruct
bool m_ended

Detailed Description

Profile point instance class.

Construct one of these on the stack at the start of a function, in order to record the time consumed within that function. The profiler object should be effectively optimised out if NO_TIMING is defined, so any overhead in a release build should be negligible so long as you remember to define that.

Definition at line 86 of file Profiler.h.


Constructor & Destructor Documentation

Profiler::Profiler ( const char *  name,
bool  showOnDestruct = false 
)

Create a profile point instance that records time consumed against the given profiling point name.

If showOnDestruct is true, the time consumed will be printed to stderr when the object is destroyed; otherwise, only the accumulated, mean and worst-case times will be shown when the program exits or Profiles::dump() is called.

Definition at line 177 of file Profiler.cpp.

References RealTime::fromTimeval(), m_startCPU, and m_startTime.

Definition at line 203 of file Profiler.cpp.

References end(), and m_ended.


Member Function Documentation

void Profiler::update ( ) const

Definition at line 190 of file Profiler.cpp.

References RealTime::fromTimeval(), m_c, m_startCPU, and m_startTime.


Member Data Documentation

const char* Profiler::m_c [protected]

Definition at line 104 of file Profiler.h.

Referenced by end(), and update().

clock_t Profiler::m_startCPU [protected]

Definition at line 105 of file Profiler.h.

Referenced by end(), Profiler(), and update().

Definition at line 106 of file Profiler.h.

Referenced by end(), Profiler(), and update().

bool Profiler::m_showOnDestruct [protected]

Definition at line 107 of file Profiler.h.

Referenced by end().

bool Profiler::m_ended [protected]

Definition at line 108 of file Profiler.h.

Referenced by end(), and ~Profiler().


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