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 ()
 
int type () const
 Returns the user id. More...
 
const std::string & name () const
 Returns the name of the function. More...
 
const std::string & filename () const
 Returns the filename of the function. More...
 
int linenumber () const
 Returns the line number of the function. More...
 
void addCallGraphNode (MLCallGraphNode *node)
 Adds a call graph node that represents a function call to this function. More...
 
void removeCallGraphNode (MLCallGraphNode *node)
 Removes a call graph node that represents a function call to this function. More...
 
const std::vector< MLCallGraphNode * > & callGraphNodes () const
 Returns all call graph nodes. More...
 
std::vector< MLCallGraphNode * > & callGraphNodes ()
 Returns all call graph nodes. More...
 
void addCaller (MLCallGraphFunction *function, MLProfilingTimeType elapsed, MLProfilingTimeType consumed)
 Adds a caller function. If it is already added, then only the statistics are updated. More...
 
const CallGraphFunctionMapcallers () const
 Returns the ids of the functions that called this function. More...
 
const CallGraphFunctionMapcallees () const
 Returns the ids of the functions that are called by this function. More...
 
const MLTimeStatisticsstatisticsByCaller (MLCallGraphFunction *caller)
 Returns the statistics of the given caller. More...
 
const MLTimeStatisticsstatisticsByCallee (MLCallGraphFunction *callee)
 Returns the statistics of the given callee. More...
 
MLCallGraphFunctiongetCallee (MLCallGraphFunction *callee)
 Returns the callee object for the given function. More...
 
MLCallGraphFunctiongetCaller (MLCallGraphFunction *caller)
 Returns the caller object for the given function. More...
 
MLTimeStatisticsstatistics ()
 Returns the time statistics. More...
 
const MLTimeStatisticsstatistics () const
 
MLTimeStatisticsstatistics (const MLTimeProfile *timeProfile)
 @ More...
 
const MLTimeStatisticsstatistics (const MLTimeProfile *timeProfile) const
 
bool hasStatisticsForTimeProfile (const MLTimeProfile *timeProfile) const
 @ More...
 
const TimeStatisticsMapstatisticsByTimeProfile () const
 

Friends

class MLCallGraphNode
 
class MLTimeProfile
 

Detailed Description

Definition at line 156 of file mlCallGraph.h.

Member Typedef Documentation

◆ CallGraphFunctionMap

Definition at line 159 of file mlCallGraph.h.

◆ TimeStatisticsMap

Definition at line 160 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.

◆ addCallGraphNode()

void MLCallGraphFunction::addCallGraphNode ( MLCallGraphNode node)

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

◆ callees()

const CallGraphFunctionMap& MLCallGraphFunction::callees ( ) const
inline

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

Definition at line 192 of file mlCallGraph.h.

◆ callers()

const CallGraphFunctionMap& MLCallGraphFunction::callers ( ) const
inline

Returns the ids of the functions that called this function.

Definition at line 189 of file mlCallGraph.h.

◆ callGraphNodes() [1/2]

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

Returns all call graph nodes.

Definition at line 183 of file mlCallGraph.h.

◆ callGraphNodes() [2/2]

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

Returns all call graph nodes.

Definition at line 181 of file mlCallGraph.h.

◆ filename()

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

Returns the filename of the function.

Definition at line 172 of file mlCallGraph.h.

◆ getCallee()

MLCallGraphFunction* MLCallGraphFunction::getCallee ( MLCallGraphFunction callee)

Returns the callee object for the given function.

◆ getCaller()

MLCallGraphFunction* MLCallGraphFunction::getCaller ( MLCallGraphFunction caller)

Returns the caller object for the given function.

◆ hasStatisticsForTimeProfile()

bool MLCallGraphFunction::hasStatisticsForTimeProfile ( const MLTimeProfile timeProfile) const

@

◆ linenumber()

int MLCallGraphFunction::linenumber ( ) const
inline

Returns the line number of the function.

Definition at line 174 of file mlCallGraph.h.

◆ name()

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

Returns the name of the function.

Definition at line 170 of file mlCallGraph.h.

◆ removeCallGraphNode()

void MLCallGraphFunction::removeCallGraphNode ( MLCallGraphNode node)

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

◆ statistics() [1/4]

MLTimeStatistics& MLCallGraphFunction::statistics ( )
inline

Returns the time statistics.

@

Definition at line 208 of file mlCallGraph.h.

◆ statistics() [2/4]

const MLTimeStatistics& MLCallGraphFunction::statistics ( ) const
inline

Definition at line 209 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 214 of file mlCallGraph.h.

◆ statistics() [4/4]

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

Definition at line 215 of file mlCallGraph.h.

◆ statisticsByCallee()

const MLTimeStatistics* MLCallGraphFunction::statisticsByCallee ( MLCallGraphFunction callee)

Returns the statistics of the given callee.

◆ statisticsByCaller()

const MLTimeStatistics* MLCallGraphFunction::statisticsByCaller ( MLCallGraphFunction caller)

Returns the statistics of the given caller.

◆ statisticsByTimeProfile()

const TimeStatisticsMap& MLCallGraphFunction::statisticsByTimeProfile ( ) const
inline

Definition at line 220 of file mlCallGraph.h.

◆ type()

int MLCallGraphFunction::type ( ) const
inline

Returns the user id.

Definition at line 168 of file mlCallGraph.h.

Friends And Related Function Documentation

◆ MLCallGraphNode

friend class MLCallGraphNode
friend

Definition at line 239 of file mlCallGraph.h.

◆ MLTimeProfile

friend class MLTimeProfile
friend

Definition at line 240 of file mlCallGraph.h.


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