Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

Profiler.h File Reference

Describes Profiler, which managers a hierarchy of timers for profiling time spent in code. More...

#include "TimeET.h"
#include <string>
Include dependency graph for Profiler.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Profiler
 Manages a hierarchy of timers for profiling time spent in code, gives microsecond resolution. More...
struct  Profiler::SectionInfo
 holds all the information needed for book keeping for each timer More...
class  Profiler::Timer
 Measures the time that this class exists, reports result to a profiler. More...
class  Profiler::AutoInit
 Automatically causes initialization of the histogram buckets when the first Profiler is instantiated. More...
class  ProfilerOfSize< MaxSections >
 templated subclass allows compile-time flexibility of how much memory to use. More...

Defines

#define PROFSECTION(NAME, PROF)
 put this at the beginning of any function for which you wish to collect profiling information

Typedefs

typedef ProfilerOfSize< 20 > mainProfiler_t
 defines type for code profiling information for MainObject; use this instead of the templated type so you don't rely on a particular size
typedef ProfilerOfSize< 6 > motionProfiler_t
 defines type for code profiling information for MotionObject; use this instead of the templated type so you don't rely on a particular size
typedef ProfilerOfSize< 6 > soundProfiler_t
 defines type for code profiling information for SoundPlay; use this instead of the templated type so you don't rely on a particular size

Variables

mainProfiler_tmainProfiler
 holds code profiling information for MainObject
motionProfiler_tmotionProfiler
 holds code profiling information for MotoObject
soundProfiler_tsoundProfiler
 holds code profiling information for SoundPlay

Detailed Description

Describes Profiler, which managers a hierarchy of timers for profiling time spent in code.

Author:
ejt (Creator)

Definition in file Profiler.h.


Define Documentation

#define PROFSECTION ( NAME,
PROF   ) 
Value:
static unsigned int _PROFSECTION_id=(PROF).getNewID(NAME);\
  Profiler::Timer _PROFSECTION_timer(_PROFSECTION_id,&(PROF).prof);

put this at the beginning of any function for which you wish to collect profiling information

Uses a variable named _PROFSECTION_id to store a static ID number - don't redefine or modify that...

Parameters:
NAME the name of this section for reporting
PROF the actual profiler to use

Definition at line 14 of file Profiler.h.

Referenced by SegmentedColorGenerator::calcImage(), RLEGenerator::calcImage(), RegionGenerator::calcImage(), RawCameraGenerator::calcImage(), PNGGenerator::calcImage(), JPEGGenerator::calcImage(), InterleavedYUVGenerator::calcImage(), CDTGenerator::calcImage(), and BallDetectionGenerator::doEvent().


Typedef Documentation

defines type for code profiling information for MainObject; use this instead of the templated type so you don't rely on a particular size

Definition at line 229 of file Profiler.h.

defines type for code profiling information for MotionObject; use this instead of the templated type so you don't rely on a particular size

Definition at line 230 of file Profiler.h.

defines type for code profiling information for SoundPlay; use this instead of the templated type so you don't rely on a particular size

Definition at line 231 of file Profiler.h.


Variable Documentation

holds code profiling information for MotoObject

Definition at line 12 of file Profiler.cc.

holds code profiling information for SoundPlay

Definition at line 13 of file Profiler.cc.


Tekkotsu v5.1CVS
Generated Mon May 9 04:59:01 2016 by Doxygen 1.6.3