Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

GTXabsl2Profiler Class Reference

Class for profiling and analysis of Xabsl-Activation-Paths. More...

#include <GTXabsl2Profiler.h>

Collaboration diagram for GTXabsl2Profiler:

Collaboration graph
[legend]
List of all members.

Public Types

enum  { dontCollectProfiles, collectProfiles }
 The Xabsl-Output-Symbols for the Profiler. More...

enum  { dontWriteProfiles, writeProfiles, writeCompleteProfiles }

Public Member Functions

void registerSymbols (Xabsl2Engine &)
 GTXabsl2Profiler ()
 GTXabsl2Profiler (SolutionRequest::xabsl2EngineID id, const unsigned long *frameNumber)
 Constructor.

void init (Xabsl2Engine &pEngine)
void recordLog (Xabsl2Engine &pEngine)
void writeLogEntriesToFileAndRemove (int numberOfLogs=2)
void writeCompleteLogToFileAndClear ()

Public Attributes

GTXabsl2Log log
 The log.

enum GTXabsl2Profiler:: { ... }  profilerCollectMode
 The Xabsl-Output-Symbols for the Profiler.

enum GTXabsl2Profiler:: { ... }  profilerWriteMode

Private Attributes

std::string logFileName
 Name of the file the Log is written to.

const unsigned long * frameNumber
 A reference to a variable containing the current frame number.


Detailed Description

Class for profiling and analysis of Xabsl-Activation-Paths.

Author:
Michael Spranger

Definition at line 44 of file GTXabsl2Profiler.h.


Member Enumeration Documentation

anonymous enum
 

The Xabsl-Output-Symbols for the Profiler.

Enumeration values:
dontCollectProfiles 
collectProfiles 

Definition at line 60 of file GTXabsl2Profiler.h.

anonymous enum
 

Enumeration values:
dontWriteProfiles 
writeProfiles 
writeCompleteProfiles 

Definition at line 61 of file GTXabsl2Profiler.h.


Constructor & Destructor Documentation

GTXabsl2Profiler::GTXabsl2Profiler  ) 
 

Definition at line 10 of file GTXabsl2Profiler.cpp.

GTXabsl2Profiler::GTXabsl2Profiler SolutionRequest::xabsl2EngineID  id,
const unsigned long *  frameNumber
 

Constructor.

Parameters:
id The id of the observed xabsl engine
frameNumber A reference to the frame number

Definition at line 3 of file GTXabsl2Profiler.cpp.

References logFileName.


Member Function Documentation

void GTXabsl2Profiler::registerSymbols Xabsl2Engine  ) 
 

Definition at line 21 of file GTXabsl2Profiler.cpp.

References collectProfiles, dontCollectProfiles, dontWriteProfiles, profilerCollectMode, profilerWriteMode, Xabsl2Symbols::registerEnumeratedOutputSymbol(), Xabsl2Symbols::registerEnumeratedOutputSymbolEnumElement(), writeCompleteProfiles, and writeProfiles.

Referenced by GTXabsl2EngineExecutor::init().

Here is the call graph for this function:

void GTXabsl2Profiler::init Xabsl2Engine pEngine  ) 
 

Definition at line 15 of file GTXabsl2Profiler.cpp.

References GTXabsl2Log::init(), log, logFileName, and out.

Referenced by GTXabsl2EngineExecutor::init().

Here is the call graph for this function:

void GTXabsl2Profiler::recordLog Xabsl2Engine pEngine  ) 
 

Definition at line 35 of file GTXabsl2Profiler.cpp.

References GTXabsl2LogEntry::activeOptions, Xabsl2Option::activeState, GTXabsl2ProfilerNameTable::exists(), GTXabsl2LogEntry::frameNumber, Xabsl2Symbols::getBooleanInputSymbol(), Xabsl2Symbols::getDecimalInputSymbol(), Xabsl2Symbols::getEnumeratedInputSymbol(), GTXabsl2ProfilerNameTable::getOptionPosition(), Xabsl2Engine::getRootOption(), Xabsl2Array< double >::getSize(), GTXabsl2ProfilerNameTable::getStatePosition(), Xabsl2InputSymbol< int >::getValue(), Xabsl2InputSymbol< bool >::getValue(), Xabsl2InputSymbol< double >::getValue(), GTXabsl2LogEntry::inputSymbolValues, log, Xabsl2NamedItem::n, GTXabsl2Log::nameTable, Xabsl2Symbols::numberOfBooleanInputSymbols(), Xabsl2Symbols::numberOfDecimalInputSymbols(), Xabsl2Symbols::numberOfEnumeratedInputSymbols(), Xabsl2Option::parameters, and Xabsl2State::subsequentOption.

Referenced by GTXabsl2EngineExecutor::executeEngine().

Here is the call graph for this function:

void GTXabsl2Profiler::writeLogEntriesToFileAndRemove int  numberOfLogs = 2  ) 
 

Definition at line 70 of file GTXabsl2Profiler.cpp.

References log, logFileName, and out.

Referenced by GTXabsl2EngineExecutor::executeEngine().

void GTXabsl2Profiler::writeCompleteLogToFileAndClear  ) 
 

Definition at line 81 of file GTXabsl2Profiler.cpp.

References log, logFileName, and out.

Referenced by GTXabsl2EngineExecutor::executeEngine().


Member Data Documentation

std::string GTXabsl2Profiler::logFileName [private]
 

Name of the file the Log is written to.

Definition at line 49 of file GTXabsl2Profiler.h.

Referenced by GTXabsl2Profiler(), init(), writeCompleteLogToFileAndClear(), and writeLogEntriesToFileAndRemove().

const unsigned long* GTXabsl2Profiler::frameNumber [private]
 

A reference to a variable containing the current frame number.

Definition at line 52 of file GTXabsl2Profiler.h.

GTXabsl2Log GTXabsl2Profiler::log
 

The log.

Definition at line 57 of file GTXabsl2Profiler.h.

Referenced by GTXabsl2EngineExecutor::executeEngine(), init(), recordLog(), writeCompleteLogToFileAndClear(), and writeLogEntriesToFileAndRemove().

enum { ... } GTXabsl2Profiler::profilerCollectMode
 

The Xabsl-Output-Symbols for the Profiler.

Referenced by GT2005HeadControl::execute(), GTXabsl2EngineExecutor::executeEngine(), GT2005BehaviorControl::postExecute(), and registerSymbols().

enum { ... } GTXabsl2Profiler::profilerWriteMode
 

Referenced by GT2005HeadControl::execute(), GTXabsl2EngineExecutor::executeEngine(), GT2005BehaviorControl::postExecute(), and registerSymbols().


The documentation for this class was generated from the following files:
Generated on Mon Mar 20 22:16:11 2006 for GT2005 by doxygen 1.3.6