MeVisLab Toolbox Reference
MLCallGraphFunction Class Reference

#include <mlCallGraph.h>

Public Types

typedef boost::unordered_map< MLCallGraphFunction *, MLTimeStatistics > CallGraphFunctionMap
 
typedef boost::unordered_map< const MLTimeProfile *, MLTimeStatistics > TimeStatisticsMap
 

Public Member Functions

 MLCallGraphFunction (const std::string &name, const std::string &filename, int linenumber, int type)
 
 ~MLCallGraphFunction ()
 
MLCallGraphFunction * copyWithStatistics () 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.
 
MLCallGraphFunction * cachedCopy (MLCallGraphNode::CallGraphCopyFunctionMap *copyFunctionMap)
 
MLCallGraphFunction * copiedFrom () const
 
MLCallGraphFunction * copiedTo () const
 
void addCallGraphNode (MLCallGraphNode *node)
 Returns the line number of the function.
 
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 CallGraphFunctionMap & callers () const
 Returns the IDs of the functions that called this function.
 
const CallGraphFunctionMap & callees () const
 Returns the IDs of the functions that are called by this function.
 
const MLTimeStatistics * statisticsByCaller (MLCallGraphFunction *caller)
 Returns the statistics of the given caller.
 
const MLTimeStatistics * statisticsByCallee (MLCallGraphFunction *callee)
 Returns the statistics of the given callee.
 
MLTimeStatistics & statistics ()
 Returns the time statistics.
 
const MLTimeStatistics & statistics () const
 
MLTimeStatistics & statistics (const MLTimeProfile *timeProfile)
 @
 
const MLTimeStatistics & statistics (const MLTimeProfile *timeProfile) const
 
bool hasStatisticsForTimeProfile (const MLTimeProfile *timeProfile) const
 @
 
const TimeStatisticsMap & statisticsByTimeProfile () 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.

◆ 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.

◆ cachedCopy()

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

◆ 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.

◆ copiedTo()

MLCallGraphFunction * MLCallGraphFunction::copiedTo ( ) const
inline

Definition at line 194 of file mlCallGraph.h.

◆ copyWithStatistics()

MLCallGraphFunction * MLCallGraphFunction::copyWithStatistics ( ) const

◆ filename()

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

Returns the filename of the function.

Definition at line 184 of file mlCallGraph.h.

◆ hasStatisticsForTimeProfile()

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

@

◆ linenumber()

int MLCallGraphFunction::linenumber ( ) const
inline

Returns the line number of the function.

Definition at line 186 of file mlCallGraph.h.

◆ name()

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

Returns the name of the function.

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

◆ statistics() [4/4]

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

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

◆ type()

int MLCallGraphFunction::type ( ) const
inline

Returns the user ID.

Definition at line 180 of file mlCallGraph.h.

Friends And Related Symbol Documentation

◆ MLCallGraphNode

friend class MLCallGraphNode
friend

Definition at line 258 of file mlCallGraph.h.

◆ MLTimeProfile

friend class MLTimeProfile
friend

Definition at line 259 of file mlCallGraph.h.


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