HPCToolkit
Prof::Struct::Ref Class Reference

#include <Struct-Tree.hpp>

Inheritance diagram for Prof::Struct::Ref:
Collaboration diagram for Prof::Struct::Ref:

Public Types

enum  ANodeTy {
  TyRoot = 0, TyGroup, TyLM, TyFile,
  TyProc, TyAlien, TyLoop, TyStmt,
  TyRef, TyVariable, TyANY, TyNUMBER
}
 
typedef std::vector< hpcrun_metricVal_tMetricVec
 

Public Member Functions

 Ref (ACodeNode *parent, int _begPos, int _endPos, const char *refName)
 
uint BegPos () const
 
uint EndPos () const
 
virtual const std::string & name () const
 
virtual std::string codeName () const
 
virtual ANodeclone ()
 
virtual std::string toXML (uint oFlags=0) const
 
virtual std::ostream & dumpme (std::ostream &os=std::cerr, uint oFlags=0, const char *pre="") const
 
SrcFile::ln begLine () const
 
void begLine (SrcFile::ln x)
 
SrcFile::ln endLine () const
 
void endLine (SrcFile::ln x)
 
void setLineRange (SrcFile::ln begLn, SrcFile::ln endLn, int propagate=1)
 
void expandLineRange (SrcFile::ln begLn, SrcFile::ln endLn, int propagate=1)
 
void linkAndSetLineRange (ACodeNode *parent)
 
void checkLineRange (SrcFile::ln begLn, SrcFile::ln endLn)
 
void freezeLine ()
 
void thawLine ()
 
const VMAIntervalSetvmaSet () const
 
VMAIntervalSetvmaSet ()
 
bool containsLine (SrcFile::ln ln) const
 
bool containsLine (SrcFile::ln ln, int beg_epsilon, int end_epsilon) const
 
bool containsInterval (SrcFile::ln begLn, SrcFile::ln endLn) const
 
bool containsInterval (SrcFile::ln begLn, SrcFile::ln endLn, int beg_epsilon, int end_epsilon) const
 
ACodeNodeACodeNodeWithLine (SrcFile::ln ln) const
 
ACodeNodenextSiblingNonOverlapping () const
 
virtual std::string nameQual () const
 
std::string lineRange () const
 
virtual std::string XMLLineRange (uint oFlags) const
 
virtual std::string XMLVMAIntervals (uint oFlags) const
 
virtual void CSV_dump (const Root &root, std::ostream &os=std::cout, const char *file_name=NULL, const char *proc_name=NULL, int lLevel=0) const
 
void setScopeLocation (std::string &file, SrcFile::ln line)
 
std::string & getScopeFileName ()
 
SrcFile::ln getScopeLineNum ()
 
ANodeTy type () const
 
uint id () const
 
void setInvisible ()
 
bool isVisible () const
 
ANodeparent () const
 
ANodefirstChild () const
 
ANodelastChild () const
 
ANodenextSibling () const
 
ANodeprevSibling () const
 
ANodeancestor (ANodeTy type) const
 
ANodeancestor (ANodeTy ty1, ANodeTy ty2) const
 
ANodeancestor (ANodeTy ty1, ANodeTy ty2, ANodeTy ty3) const
 
RootancestorRoot () const
 
GroupancestorGroup () const
 
LMancestorLM () const
 
FileancestorFile () const
 
ProcancestorProc () const
 
AlienancestorAlien () const
 
LoopancestorLoop () const
 
StmtancestorStmt () const
 
ACodeNodeancestorProcCtxt () const
 
ACodeNodeACodeNodeParent () const
 
void aggregateMetrics (uint mBegId, uint mEndId)
 
void aggregateMetrics (uint mBegId)
 
void pruneByMetrics ()
 
std::string toStringXML (uint oFlags=0, const char *pre="") const
 
virtual std::ostream & writeXML (std::ostream &os=std::cout, uint oFlags=0, const char *pre="") const
 
void ddumpXML () const
 
void CSV_DumpSelf (const Root &root, std::ostream &os=std::cout) const
 
virtual std::string toString (uint oFlags=0, const char *pre="") const
 
std::string toString_id (uint oFlags=0) const
 
std::string toStringMe (uint oFlags=0, const char *pre="") const
 
std::ostream & dump (std::ostream &os=std::cerr, uint oFlags=0, const char *pre="") const
 
void ddump () const
 
void link (NonUniformDegreeTreeNode *parent)
 
void linkBefore (NonUniformDegreeTreeNode *sibling)
 
void linkAfter (NonUniformDegreeTreeNode *sibling)
 
void unlink ()
 
uint ancestorCount () const
 
uint childCount () const
 
bool isLeaf () const
 
uint maxDepth ()
 
uint maxDepth (uint parentDepth)
 
NonUniformDegreeTreeNodeParent () const
 
NonUniformDegreeTreeNodeNextSibling () const
 
NonUniformDegreeTreeNodePrevSibling () const
 
NonUniformDegreeTreeNodeFirstChild () const
 
NonUniformDegreeTreeNodeLastChild () const
 
bool hasMetrics (uint mBegId=Metric::IData::npos, uint mEndId=Metric::IData::npos) const
 
bool hasMetric (size_t mId) const
 
bool hasMetricSlow (size_t mId) const
 
double metric (size_t mId) const
 
double & metric (size_t mId)
 
hpcrun_metricVal_tmetricObject (size_t mId)
 
double demandMetric (size_t mId, size_t size=0) const
 
double & demandMetric (size_t mId, size_t size=0)
 
void zeroMetrics (uint mBegId, uint mEndId)
 
void clearMetrics ()
 
void ensureMetricsSize (size_t size) const
 
void insertMetricsBefore (size_t numMetrics)
 
uint numMetrics () const
 
std::string toStringMetrics (int oFlags=0, const char *pfx="") const
 
std::ostream & writeMetricsXML (std::ostream &os, const Mgr *metricMgr, uint mBegId=Metric::IData::npos, uint mEndId=Metric::IData::npos, int oFlags=0, const char *pfx="") const
 
std::ostream & dumpMetrics (std::ostream &os=std::cerr, int oFlags=0, const char *pfx="") const
 
void ddumpMetrics () const
 

Static Public Member Functions

static int compare (const ACodeNode *x, const ACodeNode *y)
 
static const std::string & ANodeTyToName (ANodeTy tp)
 
static const std::string & ANodeTyToXMLelement (ANodeTy tp)
 
static ANodeTy IntToANodeTy (long i)
 
static uint maxId ()
 
static ANodeleastCommonAncestor (ANode *n1, ANode *n2)
 
static int distance (ANode *ancestor, ANode *descendent)
 
static bool arePathsOverlapping (ANode *lca, ANode *desc1, ANode *desc2)
 
static bool mergePaths (ANode *lca, ANode *node_dst, ANode *node_src)
 
static bool merge (ANode *node_dst, ANode *node_src)
 
static bool isMergable (ANode *node_dst, ANode *node_src)
 

Public Attributes

uint m_origId
 

Static Public Attributes

static const uint Id_NULL = 0
 
static const uint npos = UINT_MAX
 

Protected Member Functions

void relocate ()
 
void relocateIf ()
 
std::string codeName_LM_F () const
 
bool writeXML_pre (std::ostream &os=std::cout, uint oFlags=0, const char *prefix="") const
 
void writeXML_post (std::ostream &os=std::cout, uint oFlags=0, const char *prefix="") const
 
void zeroLinks ()
 

Protected Attributes

SrcFile::ln m_begLn
 
SrcFile::ln m_endLn
 
VMAIntervalSet m_vmaSet
 
ANodeTy m_type
 
uint m_id
 
bool m_visible
 
NonUniformDegreeTreeNodem_parent
 
NonUniformDegreeTreeNodem_children
 
NonUniformDegreeTreeNodem_next_sibling
 
NonUniformDegreeTreeNodem_prev_sibling
 
uint m_child_count
 

Private Member Functions

void RelocateRef ()
 

Private Attributes

uint begPos
 
uint endPos
 
std::string m_name
 

Detailed Description

Definition at line 1820 of file Struct-Tree.hpp.

Member Typedef Documentation

◆ MetricVec

typedef std::vector<hpcrun_metricVal_t> Prof::Metric::IData::MetricVec
inherited

Definition at line 107 of file Metric-IData.hpp.

Member Enumeration Documentation

◆ ANodeTy

Enumerator
TyRoot 
TyGroup 
TyLM 
TyFile 
TyProc 
TyAlien 
TyLoop 
TyStmt 
TyRef 
TyVariable 
TyANY 
TyNUMBER 

Definition at line 255 of file Struct-Tree.hpp.

Constructor & Destructor Documentation

◆ Ref()

Prof::Struct::Ref::Ref ( ACodeNode parent,
int  _begPos,
int  _endPos,
const char *  refName 
)

Definition at line 508 of file Struct-Tree.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ ACodeNodeParent()

ACodeNode * Prof::Struct::ANode::ACodeNodeParent ( ) const
inherited

Definition at line 536 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ACodeNodeWithLine()

ACodeNode * Prof::Struct::ACodeNode::ACodeNodeWithLine ( SrcFile::ln  ln) const
inherited

Definition at line 1199 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ aggregateMetrics() [1/2]

void Prof::Struct::ANode::aggregateMetrics ( uint  mBegId,
uint  mEndId 
)
inherited

Definition at line 694 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ aggregateMetrics() [2/2]

void Prof::Struct::ANode::aggregateMetrics ( uint  mBegId)
inlineinherited

Definition at line 458 of file Struct-Tree.hpp.

Here is the call graph for this function:

◆ ancestor() [1/3]

ANode * Prof::Struct::ANode::ancestor ( ANodeTy  type) const
inherited

Definition at line 543 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ancestor() [2/3]

ANode * Prof::Struct::ANode::ancestor ( ANodeTy  ty1,
ANodeTy  ty2 
) const
inherited

Definition at line 554 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ancestor() [3/3]

ANode * Prof::Struct::ANode::ancestor ( ANodeTy  ty1,
ANodeTy  ty2,
ANodeTy  ty3 
) const
inherited

Definition at line 565 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ancestorAlien()

Alien * Prof::Struct::ANode::ancestorAlien ( ) const
inherited

Definition at line 662 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ancestorCount()

uint NonUniformDegreeTreeNode::ancestorCount ( ) const
inherited

Definition at line 183 of file NonUniformDegreeTree.cpp.

Here is the caller graph for this function:

◆ ancestorFile()

File * Prof::Struct::ANode::ancestorFile ( ) const
inherited

Definition at line 648 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ancestorGroup()

Group * Prof::Struct::ANode::ancestorGroup ( ) const
inherited

Definition at line 634 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ancestorLM()

LM * Prof::Struct::ANode::ancestorLM ( ) const
inherited

Definition at line 641 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ancestorLoop()

Loop * Prof::Struct::ANode::ancestorLoop ( ) const
inherited

Definition at line 669 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ancestorProc()

Proc * Prof::Struct::ANode::ancestorProc ( ) const
inherited

Definition at line 655 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ancestorProcCtxt()

ACodeNode * Prof::Struct::ANode::ancestorProcCtxt ( ) const
inherited

Definition at line 683 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ancestorRoot()

Root * Prof::Struct::ANode::ancestorRoot ( ) const
inherited

Definition at line 616 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ancestorStmt()

Stmt * Prof::Struct::ANode::ancestorStmt ( ) const
inherited

Definition at line 676 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ANodeTyToName()

const string & Prof::Struct::ANode::ANodeTyToName ( ANodeTy  tp)
staticinherited

Definition at line 208 of file Struct-Tree.cpp.

Here is the caller graph for this function:

◆ ANodeTyToXMLelement()

const string & Prof::Struct::ANode::ANodeTyToXMLelement ( ANodeTy  tp)
staticinherited

Definition at line 1404 of file Struct-Tree.cpp.

Here is the caller graph for this function:

◆ arePathsOverlapping()

bool Prof::Struct::ANode::arePathsOverlapping ( ANode lca,
ANode desc1,
ANode desc2 
)
staticinherited

Definition at line 754 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ begLine() [1/2]

SrcFile::ln Prof::Struct::ACodeNode::begLine ( ) const
inlineinherited

Definition at line 668 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ begLine() [2/2]

void Prof::Struct::ACodeNode::begLine ( SrcFile::ln  x)
inlineinherited

Definition at line 672 of file Struct-Tree.hpp.

◆ BegPos()

uint Prof::Struct::Ref::BegPos ( ) const
inline

Definition at line 1826 of file Struct-Tree.hpp.

◆ checkLineRange()

void Prof::Struct::ACodeNode::checkLineRange ( SrcFile::ln  begLn,
SrcFile::ln  endLn 
)
inlineinherited

Definition at line 693 of file Struct-Tree.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ childCount()

uint NonUniformDegreeTreeNode::childCount ( ) const
inlineinherited

Definition at line 163 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ clearMetrics()

void Prof::Metric::IData::clearMetrics ( )
inlineinherited

Definition at line 210 of file Metric-IData.hpp.

Here is the caller graph for this function:

◆ clone()

virtual ANode* Prof::Struct::Ref::clone ( )
inlinevirtual

Reimplemented from Prof::Struct::ACodeNode.

Definition at line 1841 of file Struct-Tree.hpp.

◆ codeName()

string Prof::Struct::Ref::codeName ( ) const
virtual

Reimplemented from Prof::Struct::ACodeNode.

Definition at line 1389 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ codeName_LM_F()

string Prof::Struct::ACodeNode::codeName_LM_F ( ) const
protectedinherited

Definition at line 1319 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ compare()

int Prof::Struct::ACodeNode::compare ( const ACodeNode x,
const ACodeNode y 
)
staticinherited

Definition at line 1231 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ containsInterval() [1/2]

bool Prof::Struct::ACodeNode::containsInterval ( SrcFile::ln  begLn,
SrcFile::ln  endLn 
) const
inlineinherited

Definition at line 745 of file Struct-Tree.hpp.

◆ containsInterval() [2/2]

bool Prof::Struct::ACodeNode::containsInterval ( SrcFile::ln  begLn,
SrcFile::ln  endLn,
int  beg_epsilon,
int  end_epsilon 
) const
inlineinherited

Definition at line 749 of file Struct-Tree.hpp.

Here is the call graph for this function:

◆ containsLine() [1/2]

bool Prof::Struct::ACodeNode::containsLine ( SrcFile::ln  ln) const
inlineinherited

Definition at line 738 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ containsLine() [2/2]

bool Prof::Struct::ACodeNode::containsLine ( SrcFile::ln  ln,
int  beg_epsilon,
int  end_epsilon 
) const
inherited

Definition at line 1179 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ CSV_dump()

void Prof::Struct::ACodeNode::CSV_dump ( const Root root,
std::ostream &  os = std::cout,
const char *  file_name = NULL,
const char *  proc_name = NULL,
int  lLevel = 0 
) const
virtualinherited

Reimplemented from Prof::Struct::ANode.

Reimplemented in Prof::Struct::Alien, Prof::Struct::Proc, and Prof::Struct::File.

Definition at line 1771 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ CSV_DumpSelf()

void Prof::Struct::ANode::CSV_DumpSelf ( const Root root,
std::ostream &  os = std::cout 
) const
inherited

Definition at line 1687 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ddump()

void Prof::Struct::ANode::ddump ( ) const
inherited

Definition at line 1857 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ ddumpMetrics()

void Prof::Metric::IData::ddumpMetrics ( ) const
inherited

Definition at line 155 of file Metric-IData.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ddumpXML()

void Prof::Struct::ANode::ddumpXML ( ) const
inherited

Definition at line 1631 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ demandMetric() [1/2]

double Prof::Metric::IData::demandMetric ( size_t  mId,
size_t  size = 0 
) const
inlineinherited

Definition at line 182 of file Metric-IData.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ demandMetric() [2/2]

double& Prof::Metric::IData::demandMetric ( size_t  mId,
size_t  size = 0 
)
inlineinherited

Definition at line 190 of file Metric-IData.hpp.

Here is the call graph for this function:

◆ distance()

int Prof::Struct::ANode::distance ( ANode ancestor,
ANode descendent 
)
staticinherited

Definition at line 738 of file Struct-Tree.cpp.

Here is the caller graph for this function:

◆ dump()

std::ostream& Prof::Struct::ANode::dump ( std::ostream &  os = std::cerr,
uint  oFlags = 0,
const char *  pre = "" 
) const
inherited
Here is the caller graph for this function:

◆ dumpme()

ostream & Prof::Struct::Ref::dumpme ( std::ostream &  os = std::cerr,
uint  oFlags = 0,
const char *  pre = "" 
) const
virtual

Reimplemented from Prof::Struct::ACodeNode.

Definition at line 1946 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dumpMetrics()

std::ostream & Prof::Metric::IData::dumpMetrics ( std::ostream &  os = std::cerr,
int  oFlags = 0,
const char *  pfx = "" 
) const
inherited

Definition at line 147 of file Metric-IData.cpp.

Here is the caller graph for this function:

◆ endLine() [1/2]

SrcFile::ln Prof::Struct::ACodeNode::endLine ( ) const
inlineinherited

Definition at line 676 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ endLine() [2/2]

void Prof::Struct::ACodeNode::endLine ( SrcFile::ln  x)
inlineinherited

Definition at line 680 of file Struct-Tree.hpp.

◆ EndPos()

uint Prof::Struct::Ref::EndPos ( ) const
inline

Definition at line 1830 of file Struct-Tree.hpp.

◆ ensureMetricsSize()

void Prof::Metric::IData::ensureMetricsSize ( size_t  size) const
inlineinherited

Definition at line 217 of file Metric-IData.hpp.

Here is the caller graph for this function:

◆ expandLineRange()

void Prof::Struct::ACodeNode::expandLineRange ( SrcFile::ln  begLn,
SrcFile::ln  endLn,
int  propagate = 1 
)
inherited

Definition at line 1096 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FirstChild()

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::FirstChild ( ) const
inlineinherited

Definition at line 197 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ firstChild()

ANode* Prof::Struct::ANode::firstChild ( ) const
inlineinherited

Definition at line 375 of file Struct-Tree.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ freezeLine()

void Prof::Struct::ACodeNode::freezeLine ( )
inlineinherited

Definition at line 704 of file Struct-Tree.hpp.

◆ getScopeFileName()

std::string& Prof::Struct::ACodeNode::getScopeFileName ( )
inlineinherited

Definition at line 851 of file Struct-Tree.hpp.

◆ getScopeLineNum()

SrcFile::ln Prof::Struct::ACodeNode::getScopeLineNum ( )
inlineinherited

Definition at line 852 of file Struct-Tree.hpp.

◆ hasMetric()

bool Prof::Metric::IData::hasMetric ( size_t  mId) const
inlineinherited

Definition at line 158 of file Metric-IData.hpp.

Here is the caller graph for this function:

◆ hasMetrics()

bool Prof::Metric::IData::hasMetrics ( uint  mBegId = Metric::IData::npos,
uint  mEndId = Metric::IData::npos 
) const
inlineinherited

Definition at line 141 of file Metric-IData.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hasMetricSlow()

bool Prof::Metric::IData::hasMetricSlow ( size_t  mId) const
inlineinherited

Definition at line 162 of file Metric-IData.hpp.

Here is the call graph for this function:

◆ id()

uint Prof::Struct::ANode::id ( ) const
inlineinherited

Definition at line 339 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ insertMetricsBefore()

void Prof::Metric::IData::insertMetricsBefore ( size_t  numMetrics)
inlineinherited

Definition at line 226 of file Metric-IData.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IntToANodeTy()

ANode::ANodeTy Prof::Struct::ANode::IntToANodeTy ( long  i)
staticinherited

Definition at line 215 of file Struct-Tree.cpp.

Here is the caller graph for this function:

◆ isLeaf()

bool NonUniformDegreeTreeNode::isLeaf ( ) const
inlineinherited

Definition at line 167 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ isMergable()

bool Prof::Struct::ANode::isMergable ( ANode node_dst,
ANode node_src 
)
staticinherited

Definition at line 855 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isVisible()

bool Prof::Struct::ANode::isVisible ( ) const
inlineinherited

Definition at line 364 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ LastChild()

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::LastChild ( ) const
inlineinherited

Definition at line 201 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ lastChild()

ANode* Prof::Struct::ANode::lastChild ( ) const
inlineinherited

Definition at line 379 of file Struct-Tree.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ leastCommonAncestor()

ANode * Prof::Struct::ANode::leastCommonAncestor ( ANode n1,
ANode n2 
)
staticinherited

Definition at line 591 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ lineRange()

string Prof::Struct::ACodeNode::lineRange ( ) const
inherited

Definition at line 1300 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ link()

void NonUniformDegreeTreeNode::link ( NonUniformDegreeTreeNode parent)
inherited

Definition at line 97 of file NonUniformDegreeTree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ linkAfter()

void NonUniformDegreeTreeNode::linkAfter ( NonUniformDegreeTreeNode sibling)
inherited

Definition at line 117 of file NonUniformDegreeTree.cpp.

Here is the caller graph for this function:

◆ linkAndSetLineRange()

void Prof::Struct::ACodeNode::linkAndSetLineRange ( ACodeNode parent)
inherited

Definition at line 227 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ linkBefore()

void NonUniformDegreeTreeNode::linkBefore ( NonUniformDegreeTreeNode sibling)
inherited

Definition at line 138 of file NonUniformDegreeTree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ maxDepth() [1/2]

uint NonUniformDegreeTreeNode::maxDepth ( )
inlineinherited

Definition at line 172 of file NonUniformDegreeTree.hpp.

Here is the call graph for this function:

◆ maxDepth() [2/2]

uint NonUniformDegreeTreeNode::maxDepth ( uint  parentDepth)
inherited

Definition at line 196 of file NonUniformDegreeTree.cpp.

Here is the call graph for this function:

◆ maxId()

static uint Prof::Struct::ANode::maxId ( )
inlinestaticinherited

Definition at line 346 of file Struct-Tree.hpp.

◆ merge()

bool Prof::Struct::ANode::merge ( ANode node_dst,
ANode node_src 
)
staticinherited

Definition at line 818 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mergePaths()

bool Prof::Struct::ANode::mergePaths ( ANode lca,
ANode node_dst,
ANode node_src 
)
staticinherited

Definition at line 780 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ metric() [1/2]

double Prof::Metric::IData::metric ( size_t  mId) const
inlineinherited

Definition at line 167 of file Metric-IData.hpp.

Here is the caller graph for this function:

◆ metric() [2/2]

double& Prof::Metric::IData::metric ( size_t  mId)
inlineinherited

Definition at line 171 of file Metric-IData.hpp.

◆ metricObject()

hpcrun_metricVal_t& Prof::Metric::IData::metricObject ( size_t  mId)
inlineinherited

Definition at line 176 of file Metric-IData.hpp.

Here is the caller graph for this function:

◆ name()

virtual const std::string& Prof::Struct::Ref::name ( void  ) const
inlinevirtual

Reimplemented from Prof::Struct::ANode.

Definition at line 1834 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ nameQual()

virtual std::string Prof::Struct::ACodeNode::nameQual ( ) const
inlinevirtualinherited

Reimplemented from Prof::Struct::ANode.

Definition at line 773 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ NextSibling()

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::NextSibling ( ) const
inlineinherited

Definition at line 189 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ nextSibling()

ANode* Prof::Struct::ANode::nextSibling ( ) const
inlineinherited

Definition at line 383 of file Struct-Tree.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nextSiblingNonOverlapping()

ACodeNode * Prof::Struct::ACodeNode::nextSiblingNonOverlapping ( ) const
inherited

Definition at line 1279 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ numMetrics()

uint Prof::Metric::IData::numMetrics ( ) const
inlineinherited

Definition at line 233 of file Metric-IData.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Parent()

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::Parent ( ) const
inlineinherited

Definition at line 185 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ parent()

ANode* Prof::Struct::ANode::parent ( ) const
inlineinherited

Definition at line 371 of file Struct-Tree.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PrevSibling()

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::PrevSibling ( ) const
inlineinherited

Definition at line 193 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ prevSibling()

ANode* Prof::Struct::ANode::prevSibling ( ) const
inlineinherited

Definition at line 393 of file Struct-Tree.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pruneByMetrics()

void Prof::Struct::ANode::pruneByMetrics ( )
inherited

Definition at line 716 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ relocate()

void Prof::Struct::ACodeNode::relocate ( )
protectedinherited

Definition at line 1134 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ relocateIf()

void Prof::Struct::ACodeNode::relocateIf ( )
inlineprotectedinherited

Definition at line 821 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ RelocateRef()

void Prof::Struct::Ref::RelocateRef ( )
private

Definition at line 1982 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setInvisible()

void Prof::Struct::ANode::setInvisible ( )
inlineinherited

Definition at line 360 of file Struct-Tree.hpp.

◆ setLineRange()

void Prof::Struct::ACodeNode::setLineRange ( SrcFile::ln  begLn,
SrcFile::ln  endLn,
int  propagate = 1 
)
inherited

Definition at line 1074 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setScopeLocation()

void Prof::Struct::ACodeNode::setScopeLocation ( std::string &  file,
SrcFile::ln  line 
)
inlineinherited

Definition at line 847 of file Struct-Tree.hpp.

◆ thawLine()

void Prof::Struct::ACodeNode::thawLine ( )
inlineinherited

Definition at line 708 of file Struct-Tree.hpp.

◆ toString()

string Prof::Struct::ANode::toString ( uint  oFlags = 0,
const char *  pre = "" 
) const
virtualinherited

Reimplemented from NonUniformDegreeTreeNode.

Definition at line 1805 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toString_id()

string Prof::Struct::ANode::toString_id ( uint  oFlags = 0) const
inherited

Definition at line 1814 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toStringMe()

string Prof::Struct::ANode::toStringMe ( uint  oFlags = 0,
const char *  pre = "" 
) const
inherited

Definition at line 1823 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toStringMetrics()

std::string Prof::Metric::IData::toStringMetrics ( int  oFlags = 0,
const char *  pfx = "" 
) const
inherited

Definition at line 96 of file Metric-IData.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toStringXML()

string Prof::Struct::ANode::toStringXML ( uint  oFlags = 0,
const char *  pre = "" 
) const
inherited

Definition at line 1411 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toXML()

string Prof::Struct::Ref::toXML ( uint  oFlags = 0) const
virtual

Reimplemented from Prof::Struct::ACodeNode.

Definition at line 1558 of file Struct-Tree.cpp.

Here is the call graph for this function:

◆ type()

ANodeTy Prof::Struct::ANode::type ( ) const
inlineinherited

Definition at line 334 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ unlink()

void NonUniformDegreeTreeNode::unlink ( )
inherited

Definition at line 152 of file NonUniformDegreeTree.cpp.

Here is the caller graph for this function:

◆ vmaSet() [1/2]

const VMAIntervalSet& Prof::Struct::ACodeNode::vmaSet ( ) const
inlineinherited

Definition at line 717 of file Struct-Tree.hpp.

Here is the caller graph for this function:

◆ vmaSet() [2/2]

VMAIntervalSet& Prof::Struct::ACodeNode::vmaSet ( )
inlineinherited

Definition at line 721 of file Struct-Tree.hpp.

◆ writeMetricsXML()

std::ostream & Prof::Metric::IData::writeMetricsXML ( std::ostream &  os,
const Mgr metricMgr,
uint  mBegId = Metric::IData::npos,
uint  mEndId = Metric::IData::npos,
int  oFlags = 0,
const char *  pfx = "" 
) const
inherited

Definition at line 105 of file Metric-IData.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeXML()

virtual std::ostream& Prof::Struct::ANode::writeXML ( std::ostream &  os = std::cout,
uint  oFlags = 0,
const char *  pre = "" 
) const
virtualinherited

Reimplemented in Prof::Struct::LM, and Prof::Struct::Root.

Here is the caller graph for this function:

◆ writeXML_post()

void Prof::Struct::ANode::writeXML_post ( std::ostream &  os = std::cout,
uint  oFlags = 0,
const char *  prefix = "" 
) const
protectedinherited
Here is the caller graph for this function:

◆ writeXML_pre()

bool Prof::Struct::ANode::writeXML_pre ( std::ostream &  os = std::cout,
uint  oFlags = 0,
const char *  prefix = "" 
) const
protectedinherited
Here is the caller graph for this function:

◆ XMLLineRange()

string Prof::Struct::ACodeNode::XMLLineRange ( uint  oFlags) const
virtualinherited

Definition at line 1437 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ XMLVMAIntervals()

string Prof::Struct::ACodeNode::XMLVMAIntervals ( uint  oFlags) const
virtualinherited

Definition at line 1450 of file Struct-Tree.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ zeroLinks()

void NonUniformDegreeTreeNode::zeroLinks ( )
inlineprotectedinherited

Definition at line 207 of file NonUniformDegreeTree.hpp.

Here is the caller graph for this function:

◆ zeroMetrics()

void Prof::Metric::IData::zeroMetrics ( uint  mBegId,
uint  mEndId 
)
inlineinherited

Definition at line 201 of file Metric-IData.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ begPos

uint Prof::Struct::Ref::begPos
private

Definition at line 1857 of file Struct-Tree.hpp.

◆ endPos

uint Prof::Struct::Ref::endPos
private

Definition at line 1858 of file Struct-Tree.hpp.

◆ Id_NULL

const uint Prof::Struct::ANode::Id_NULL = 0
staticinherited

Definition at line 342 of file Struct-Tree.hpp.

◆ m_begLn

SrcFile::ln Prof::Struct::ACodeNode::m_begLn
protectedinherited

Definition at line 832 of file Struct-Tree.hpp.

◆ m_child_count

uint NonUniformDegreeTreeNode::m_child_count
protectedinherited

Definition at line 225 of file NonUniformDegreeTree.hpp.

◆ m_children

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::m_children
protectedinherited

Definition at line 222 of file NonUniformDegreeTree.hpp.

◆ m_endLn

SrcFile::ln Prof::Struct::ACodeNode::m_endLn
protectedinherited

Definition at line 833 of file Struct-Tree.hpp.

◆ m_id

uint Prof::Struct::ANode::m_id
protectedinherited

Definition at line 600 of file Struct-Tree.hpp.

◆ m_name

std::string Prof::Struct::Ref::m_name
private

Definition at line 1859 of file Struct-Tree.hpp.

◆ m_next_sibling

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::m_next_sibling
protectedinherited

Definition at line 223 of file NonUniformDegreeTree.hpp.

◆ m_origId

uint Prof::Struct::ANode::m_origId
inherited

Definition at line 605 of file Struct-Tree.hpp.

◆ m_parent

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::m_parent
protectedinherited

Definition at line 221 of file NonUniformDegreeTree.hpp.

◆ m_prev_sibling

NonUniformDegreeTreeNode* NonUniformDegreeTreeNode::m_prev_sibling
protectedinherited

Definition at line 224 of file NonUniformDegreeTree.hpp.

◆ m_type

ANodeTy Prof::Struct::ANode::m_type
protectedinherited

Definition at line 599 of file Struct-Tree.hpp.

◆ m_visible

bool Prof::Struct::ANode::m_visible
protectedinherited

Definition at line 601 of file Struct-Tree.hpp.

◆ m_vmaSet

VMAIntervalSet Prof::Struct::ACodeNode::m_vmaSet
protectedinherited

Definition at line 834 of file Struct-Tree.hpp.

◆ npos

const uint Prof::Metric::IData::npos = UINT_MAX
staticinherited

Definition at line 138 of file Metric-IData.hpp.


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