MeVisLab Toolbox Reference
MLCallGraphFunction Class Reference

#include <mlCallGraph.h>

Public Types

typedef boost::unordered_map< MLCallGraphFunction *, MLTimeStatisticsCallGraphFunctionMap
typedef boost::unordered_map< const MLTimeProfile *, MLTimeStatisticsTimeStatisticsMap

Public Member Functions

 MLCallGraphFunction (const std::string &name, const std::string &filename, int linenumber, int type)
 ~MLCallGraphFunction ()
MLCallGraphFunctioncopyWithStatistics () const
int type () const
 Returns the user ID.
const std::string & name () const
 Returns the name of the function.
const std::string & filename () const
 Returns the filename of the function.
int linenumber () const
 Returns the line number of the function.
MLCallGraphFunctioncachedCopy (MLCallGraphNode::CallGraphCopyFunctionMap *copyFunctionMap)
MLCallGraphFunctioncopiedFrom () const
MLCallGraphFunctioncopiedTo () const
void addCallGraphNode (MLCallGraphNode *node)
void removeCallGraphNode (MLCallGraphNode *node)
 Removes a call graph node that represents a function call to this function.
const std::vector< MLCallGraphNode * > & callGraphNodes () const
 Returns all call graph nodes.
std::vector< MLCallGraphNode * > & callGraphNodes ()
 Returns all call graph nodes.
void addCaller (MLCallGraphFunction *function, MLProfilingTimeType elapsed, MLProfilingTimeType consumed)
 Adds a caller function. If it is already added, then only the statistics are updated.
const CallGraphFunctionMapcallers () const
 Returns the IDs of the functions that called this function.
const CallGraphFunctionMapcallees () const
 Returns the IDs of the functions that are called by this function.
const MLTimeStatisticsstatisticsByCaller (MLCallGraphFunction *caller)
 Returns the statistics of the given caller.
const MLTimeStatisticsstatisticsByCallee (MLCallGraphFunction *callee)
 Returns the statistics of the given callee.
MLTimeStatisticsstatistics ()
const MLTimeStatisticsstatistics () const
MLTimeStatisticsstatistics (const MLTimeProfile *timeProfile)
 @
const MLTimeStatisticsstatistics (const MLTimeProfile *timeProfile) const
bool hasStatisticsForTimeProfile (const MLTimeProfile *timeProfile) const
 @
const TimeStatisticsMapstatisticsByTimeProfile () const

Friends

class MLCallGraphNode
class MLTimeProfile

Detailed Description

Definition at line 167 of file mlCallGraph.h.

Member Typedef Documentation

◆ CallGraphFunctionMap

Definition at line 170 of file mlCallGraph.h.

◆ TimeStatisticsMap

Definition at line 171 of file mlCallGraph.h.

Constructor & Destructor Documentation

◆ MLCallGraphFunction()

MLCallGraphFunction::MLCallGraphFunction ( const std::string & name,
const std::string & filename,
int linenumber,
int type )

◆ ~MLCallGraphFunction()

MLCallGraphFunction::~MLCallGraphFunction ( )

Member Function Documentation

◆ addCaller()

void MLCallGraphFunction::addCaller ( MLCallGraphFunction * function,
MLProfilingTimeType elapsed,
MLProfilingTimeType consumed )

Adds a caller function. If it is already added, then only the statistics are updated.

References MLCallGraphFunction().

◆ addCallGraphNode()

void MLCallGraphFunction::addCallGraphNode ( MLCallGraphNode * node)

Returns the line number of the function. Adds a call graph node that represents a function call to this function.

References MLCallGraphNode.

◆ cachedCopy()

MLCallGraphFunction * MLCallGraphFunction::cachedCopy ( MLCallGraphNode::CallGraphCopyFunctionMap * copyFunctionMap)

References MLCallGraphFunction().

◆ callees()

const CallGraphFunctionMap & MLCallGraphFunction::callees ( ) const
inline

Returns the IDs of the functions that are called by this function.

Definition at line 215 of file mlCallGraph.h.

◆ callers()

const CallGraphFunctionMap & MLCallGraphFunction::callers ( ) const
inline

Returns the IDs of the functions that called this function.

Definition at line 212 of file mlCallGraph.h.

◆ callGraphNodes() [1/2]

std::vector< MLCallGraphNode * > & MLCallGraphFunction::callGraphNodes ( )
inline

Returns all call graph nodes.

Definition at line 206 of file mlCallGraph.h.

◆ callGraphNodes() [2/2]

const std::vector< MLCallGraphNode * > & MLCallGraphFunction::callGraphNodes ( ) const
inline

Returns all call graph nodes.

Definition at line 204 of file mlCallGraph.h.

◆ copiedFrom()

MLCallGraphFunction * MLCallGraphFunction::copiedFrom ( ) const
inline

Definition at line 190 of file mlCallGraph.h.

References MLCallGraphFunction().

◆ copiedTo()

MLCallGraphFunction * MLCallGraphFunction::copiedTo ( ) const
inline

Definition at line 194 of file mlCallGraph.h.

References MLCallGraphFunction().

◆ copyWithStatistics()

MLCallGraphFunction * MLCallGraphFunction::copyWithStatistics ( ) const

References MLCallGraphFunction().

◆ filename()

const std::string & MLCallGraphFunction::filename ( ) const
inline

Returns the filename of the function.

Definition at line 184 of file mlCallGraph.h.

Referenced by MLCallGraphFunction().

◆ hasStatisticsForTimeProfile()

bool MLCallGraphFunction::hasStatisticsForTimeProfile ( const MLTimeProfile * timeProfile) const

@

References MLTimeProfile.

◆ linenumber()

int MLCallGraphFunction::linenumber ( ) const
inline

Returns the line number of the function.

Definition at line 186 of file mlCallGraph.h.

Referenced by MLCallGraphFunction().

◆ name()

const std::string & MLCallGraphFunction::name ( ) const
inline

Returns the name of the function.

Definition at line 182 of file mlCallGraph.h.

Referenced by MLCallGraphFunction().

◆ removeCallGraphNode()

void MLCallGraphFunction::removeCallGraphNode ( MLCallGraphNode * node)

Removes a call graph node that represents a function call to this function.

References MLCallGraphNode.

◆ statistics() [1/4]

MLTimeStatistics & MLCallGraphFunction::statistics ( )
inline

Returns the time statistics. @

Definition at line 225 of file mlCallGraph.h.

◆ statistics() [2/4]

const MLTimeStatistics & MLCallGraphFunction::statistics ( ) const
inline

Definition at line 226 of file mlCallGraph.h.

◆ statistics() [3/4]

MLTimeStatistics & MLCallGraphFunction::statistics ( const MLTimeProfile * timeProfile)
inline

@

Returns the time statistics for the given time profile. @

Definition at line 231 of file mlCallGraph.h.

References MLTimeProfile.

◆ statistics() [4/4]

const MLTimeStatistics & MLCallGraphFunction::statistics ( const MLTimeProfile * timeProfile) const
inline

Definition at line 232 of file mlCallGraph.h.

References MLTimeProfile.

◆ statisticsByCallee()

const MLTimeStatistics * MLCallGraphFunction::statisticsByCallee ( MLCallGraphFunction * callee)

Returns the statistics of the given callee.

References MLCallGraphFunction().

◆ statisticsByCaller()

const MLTimeStatistics * MLCallGraphFunction::statisticsByCaller ( MLCallGraphFunction * caller)

Returns the statistics of the given caller.

References MLCallGraphFunction().

◆ statisticsByTimeProfile()

const TimeStatisticsMap & MLCallGraphFunction::statisticsByTimeProfile ( ) const
inline

Definition at line 237 of file mlCallGraph.h.

◆ type()

int MLCallGraphFunction::type ( ) const
inline

Returns the user ID.

Definition at line 180 of file mlCallGraph.h.

Referenced by MLCallGraphFunction().

◆ MLCallGraphNode

friend class MLCallGraphNode
friend

Definition at line 258 of file mlCallGraph.h.

References MLCallGraphNode.

Referenced by addCallGraphNode(), MLCallGraphNode, and removeCallGraphNode().

◆ MLTimeProfile

friend class MLTimeProfile
friend

Definition at line 259 of file mlCallGraph.h.

References MLTimeProfile.

Referenced by hasStatisticsForTimeProfile(), MLTimeProfile, statistics(), and statistics().


The documentation for this class was generated from the following file:
  • MeVis/Foundation/Sources/MLProfilingManager/Include/mlCallGraph.h