GTXabsl2Profiler Class Reference

#include <GTXabsl2Profiler.h>

List of all members.

Public Types

 dontCollectProfiles
 collectProfiles
 dontWriteProfiles
 writeProfiles
 writeCompleteProfiles
enum  { dontCollectProfiles, collectProfiles }
enum  { dontWriteProfiles, writeProfiles, writeCompleteProfiles }

Public Member Functions

void registerSymbols (Xabsl2Engine &)
 GTXabsl2Profiler ()
 GTXabsl2Profiler (SolutionRequest::xabsl2EngineID id, const unsigned long *frameNumber)
void init (Xabsl2Engine &pEngine, int length=1)
void doProfiling (Xabsl2Engine &pEngine)
void recordCollectedLogs ()
void recordCompleteLog ()
void writeXMLtoStream (Out &out)
void exportXMLFile (const char *outf)
bool importLogFile (const char *filename)
std::vector< GTXabsl2ActiveOptiongetActiveOptionsAtFrame (int time)
std::string getOptionName (int optionNumber)
std::string getStateName (int optionNumber, int stateNumber)
int getDepth (char *optionName)
int getDepth (int optionNumber)
int getMaxDepth ()
int getBeginningFramenumber ()
int getLastFramenumber ()
int getNumberofLogEntries ()
std::vector< GTXabsl2ActiveOptiongetActiveOptionsAtNumber (int frameNumber)
GTXabsl2LogEntry getLogEntryAtIndex (int index)
int getFollowingFramenumber (int frame)
int getIndex (int frameNumber)
GTXabsl2LogEntryoperator[] (int i)
int size ()
GTXabsl2ProfilerNameTableEntrygetNameTableEntry (int index)
bool getActiveOption (int index, int maxdepth, GTXabsl2ActiveOption &retour)

Public Attributes

enum GTXabsl2Profiler:: { ... }  profilerCollectMode
enum GTXabsl2Profiler:: { ... }  profilerWriteMode

Private Member Functions

void registerOptions (const Xabsl2Option *option, int depth)
void doDepthCount (const Xabsl2Option *option, int depth)
void writeLogToStream (Out &)
void writeCompleteLogToStream (Out &)
void writeNameTableToStream (Out &)

Private Attributes

GTXabsl2ProfilerNameTable nameTable
std::deque< GTXabsl2LogEntrylog
std::string outFileName
int maxDepth
const unsigned long * frameNumber


Detailed Description

Class for profiling and analysis of Xabsl-Activation-Paths
Author:
Michael Spranger

Definition at line 327 of file GTXabsl2Profiler.h.


Member Enumeration Documentation

anonymous enum

The Xabsl-Output-Symbols for the Profiler

Enumerator:
dontCollectProfiles 
collectProfiles 

Definition at line 376 of file GTXabsl2Profiler.h.

anonymous enum

Enumerator:
dontWriteProfiles 
writeProfiles 
writeCompleteProfiles 

Definition at line 377 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 SolutionRequest::getXabsl2EngineFileID(), and outFileName.


Member Function Documentation

void GTXabsl2Profiler::doDepthCount ( const Xabsl2Option option,
int  depth 
) [private]

Definition at line 60 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::getOptionPosition(), Xabsl2Array< T >::getSize(), maxDepth, Xabsl2NamedItem::n, nameTable, and Xabsl2Option::states.

Referenced by init().

void GTXabsl2Profiler::doProfiling ( Xabsl2Engine pEngine  ) 

Definition at line 74 of file GTXabsl2Profiler.cpp.

References Xabsl2Option::activeState, GTXabsl2ProfilerNameTable::exists(), frameNumber, GTXabsl2ProfilerNameTable::getOptionPosition(), Xabsl2Engine::getRootOption(), Xabsl2Array< T >::getSize(), GTXabsl2ProfilerNameTable::getStatePosition(), log, Xabsl2NamedItem::n, nameTable, Xabsl2Option::parameters, and Xabsl2State::subsequentOption.

Referenced by GTXabsl2EngineExecutor::executeEngine().

void GTXabsl2Profiler::exportXMLFile ( const char *  outf  ) 

Definition at line 176 of file GTXabsl2Profiler.cpp.

References writeXMLtoStream().

Referenced by CXABSL2ProfilerDlgBar::OnXabsl2profilerExportxmlButton().

bool GTXabsl2Profiler::getActiveOption ( int  index,
int  maxdepth,
GTXabsl2ActiveOption retour 
)

Definition at line 356 of file GTXabsl2Profiler.cpp.

References int(), log, and nameTable.

Referenced by CXABSL2ProfilerDlgBar::OnPaint().

std::vector< GTXabsl2ActiveOption > GTXabsl2Profiler::getActiveOptionsAtFrame ( int  time  ) 

Definition at line 285 of file GTXabsl2Profiler.cpp.

References int(), and log.

std::vector<GTXabsl2ActiveOption> GTXabsl2Profiler::getActiveOptionsAtNumber ( int  frameNumber  ) 

int GTXabsl2Profiler::getBeginningFramenumber (  )  [inline]

Definition at line 467 of file GTXabsl2Profiler.h.

References log.

int GTXabsl2Profiler::getDepth ( int  optionNumber  ) 

Definition at line 321 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::getSize(), and nameTable.

int GTXabsl2Profiler::getDepth ( char *  optionName  ) 

Definition at line 315 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::existsOption(), GTXabsl2ProfilerNameTable::getOptionPosition(), and nameTable.

int GTXabsl2Profiler::getFollowingFramenumber ( int  frame  ) 

Definition at line 325 of file GTXabsl2Profiler.cpp.

References log.

int GTXabsl2Profiler::getIndex ( int  frameNumber  ) 

Definition at line 337 of file GTXabsl2Profiler.cpp.

References int(), and log.

Referenced by CXABSL2ProfilerDlgBar::OnChangeXabsl2profilerFramenumberEdit().

int GTXabsl2Profiler::getLastFramenumber (  )  [inline]

Definition at line 473 of file GTXabsl2Profiler.h.

References log.

GTXabsl2LogEntry GTXabsl2Profiler::getLogEntryAtIndex ( int  index  ) 

int GTXabsl2Profiler::getMaxDepth (  )  [inline]

Definition at line 462 of file GTXabsl2Profiler.h.

References maxDepth.

Referenced by CXABSL2ProfilerDlgBar::OnHScroll(), and CXABSL2ProfilerDlgBar::OnXabsl2profilerLoadlogButton().

GTXabsl2ProfilerNameTableEntry & GTXabsl2Profiler::getNameTableEntry ( int  index  ) 

Definition at line 353 of file GTXabsl2Profiler.cpp.

References nameTable.

Referenced by CXABSL2ProfilerDlgBar::OnPaint().

int GTXabsl2Profiler::getNumberofLogEntries (  ) 

std::string GTXabsl2Profiler::getOptionName ( int  optionNumber  ) 

Definition at line 297 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::getSize(), and nameTable.

std::string GTXabsl2Profiler::getStateName ( int  optionNumber,
int  stateNumber 
)

Definition at line 306 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::getSize(), and nameTable.

bool GTXabsl2Profiler::importLogFile ( const char *  filename  ) 

Definition at line 206 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::append(), GTXabsl2ProfilerNameTable::clear(), InStream< S, R >::eof(), InFile::exists(), InFile::getEof(), int(), log, maxDepth, and nameTable.

Referenced by CXABSL2ProfilerDlgBar::OnXabsl2profilerLoadlogButton().

void GTXabsl2Profiler::init ( Xabsl2Engine pEngine,
int  length = 1 
)

Definition at line 14 of file GTXabsl2Profiler.cpp.

References doDepthCount(), Xabsl2Engine::getRootOption(), GTXabsl2ProfilerNameTable::init(), log, nameTable, outFileName, registerOptions(), and writeNameTableToStream().

Referenced by GTXabsl2EngineExecutor::init().

GTXabsl2LogEntry & GTXabsl2Profiler::operator[] ( int  i  ) 

Definition at line 347 of file GTXabsl2Profiler.cpp.

References log.

void GTXabsl2Profiler::recordCollectedLogs (  ) 

Definition at line 101 of file GTXabsl2Profiler.cpp.

References outFileName, and writeLogToStream().

Referenced by GTXabsl2EngineExecutor::executeEngine().

void GTXabsl2Profiler::recordCompleteLog (  ) 

Definition at line 108 of file GTXabsl2Profiler.cpp.

References outFileName, and writeCompleteLogToStream().

Referenced by GTXabsl2EngineExecutor::executeEngine().

void GTXabsl2Profiler::registerOptions ( const Xabsl2Option option,
int  depth 
) [private]

Definition at line 36 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::append(), GTXabsl2ProfilerNameTable::exists(), GTXabsl2ProfilerNameTable::existsOption(), Xabsl2Array< T >::getName(), Xabsl2Array< T >::getSize(), Xabsl2NamedItem::n, nameTable, Xabsl2Option::parameters, and Xabsl2Option::states.

Referenced by init().

void GTXabsl2Profiler::registerSymbols ( Xabsl2Engine  ) 

Definition at line 23 of file GTXabsl2Profiler.cpp.

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

Referenced by GTXabsl2EngineExecutor::init().

int GTXabsl2Profiler::size (  ) 

Definition at line 350 of file GTXabsl2Profiler.cpp.

References log.

Referenced by GTXabsl2EngineExecutor::executeEngine(), CXABSL2ProfilerDlgBar::OnPaint(), and CXABSL2ProfilerDlgBar::OnXabsl2profilerLoadlogButton().

void GTXabsl2Profiler::writeCompleteLogToStream ( Out  )  [private]

Definition at line 138 of file GTXabsl2Profiler.cpp.

References int(), and log.

Referenced by recordCompleteLog().

void GTXabsl2Profiler::writeLogToStream ( Out  )  [private]

Definition at line 116 of file GTXabsl2Profiler.cpp.

References int(), log, and NROFELEMW.

Referenced by recordCollectedLogs().

void GTXabsl2Profiler::writeNameTableToStream ( Out  )  [private]

Definition at line 154 of file GTXabsl2Profiler.cpp.

References GTXabsl2ProfilerNameTable::getSize(), int(), and nameTable.

Referenced by init().

void GTXabsl2Profiler::writeXMLtoStream ( Out out  ) 

Definition at line 183 of file GTXabsl2Profiler.cpp.

References int(), log, and nameTable.

Referenced by exportXMLFile().


Member Data Documentation

const unsigned long* GTXabsl2Profiler::frameNumber [private]

A reference to a variable containing the current frame number

Definition at line 372 of file GTXabsl2Profiler.h.

Referenced by doProfiling().

std::deque<GTXabsl2LogEntry> GTXabsl2Profiler::log [private]

Numerical Log where indices are usually corresponding to indices in the NameTable

Definition at line 335 of file GTXabsl2Profiler.h.

Referenced by doProfiling(), getActiveOption(), getActiveOptionsAtFrame(), getBeginningFramenumber(), getFollowingFramenumber(), getIndex(), getLastFramenumber(), importLogFile(), init(), operator[](), size(), writeCompleteLogToStream(), writeLogToStream(), and writeXMLtoStream().

int GTXabsl2Profiler::maxDepth [private]

Maximal depth of the XABSL-Option-Tree

Definition at line 341 of file GTXabsl2Profiler.h.

Referenced by doDepthCount(), getMaxDepth(), and importLogFile().

GTXabsl2ProfilerNameTable GTXabsl2Profiler::nameTable [private]

NameTable for keeping corresponding names to numerical logs

Definition at line 332 of file GTXabsl2Profiler.h.

Referenced by doDepthCount(), doProfiling(), getActiveOption(), getDepth(), getNameTableEntry(), getOptionName(), getStateName(), importLogFile(), init(), registerOptions(), writeNameTableToStream(), and writeXMLtoStream().

std::string GTXabsl2Profiler::outFileName [private]

Name of the file the Log is written to

Definition at line 338 of file GTXabsl2Profiler.h.

Referenced by GTXabsl2Profiler(), init(), recordCollectedLogs(), and recordCompleteLog().

enum { ... } GTXabsl2Profiler::profilerCollectMode

The Xabsl-Output-Symbols for the Profiler

Referenced by GT2004HeadControl::execute(), GTXabsl2EngineExecutor::executeEngine(), GT2004BehaviorControl::postExecute(), and registerSymbols().

enum { ... } GTXabsl2Profiler::profilerWriteMode

Referenced by GT2004HeadControl::execute(), GTXabsl2EngineExecutor::executeEngine(), GT2004BehaviorControl::postExecute(), and registerSymbols().


The documentation for this class was generated from the following files:
Generated on Thu Dec 7 01:36:45 2006 for DT2005.panorama by  doxygen 1.4.7