HPCToolkit
Prof::Struct::Loop Class Reference

#include <Struct-Tree.hpp>

Inheritance diagram for Prof::Struct::Loop:
Collaboration diagram for Prof::Struct::Loop:

Public Types

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

Public Member Functions

 Loop (ACodeNode *parent, std::string &filenm, SrcFile::ln begLn=ln_NULL, SrcFile::ln endLn=ln_NULL)
 
void setFile (std::string filenm)
 
virtual ~Loop ()
 
virtual ANode * clone ()
 
virtual std::string codeName () const
 
virtual std::string toXML (uint oFlags=0) const
 
virtual std::ostream & dumpme (std::ostream &os=std::cerr, uint oFlags=0, const char *pre="") const
 
const std::string & fileName () const
 
void fileName (const std::string &fnm)
 
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 VMAIntervalSet & vmaSet () const
 
VMAIntervalSet & vmaSet ()
 
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
 
ACodeNode * ACodeNodeWithLine (SrcFile::ln ln) const
 
ACodeNode * nextSiblingNonOverlapping () 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
 
virtual const std::string & name () const
 
void setInvisible ()
 
bool isVisible () const
 
ANode * parent () const
 
ANode * firstChild () const
 
ANode * lastChild () const
 
ANode * nextSibling () const
 
ANode * prevSibling () const
 
ANode * ancestor (ANodeTy type) const
 
ANode * ancestor (ANodeTy ty1, ANodeTy ty2) const
 
ANode * ancestor (ANodeTy ty1, ANodeTy ty2, ANodeTy ty3) const
 
Root * ancestorRoot () const
 
Group * ancestorGroup () const
 
LM * ancestorLM () const
 
File * ancestorFile () const
 
Proc * ancestorProc () const
 
Alien * ancestorAlien () const
 
Loop * ancestorLoop () const
 
Stmt * ancestorStmt () const
 
ACodeNode * ancestorProcCtxt () const
 
ACodeNode * ACodeNodeParent () 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)
 
NonUniformDegreeTreeNode * Parent () const
 
NonUniformDegreeTreeNode * NextSibling () const
 
NonUniformDegreeTreeNode * PrevSibling () const
 
NonUniformDegreeTreeNode * FirstChild () const
 
NonUniformDegreeTreeNode * LastChild () 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_t & metricObject (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 ANode * leastCommonAncestor (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
 
NonUniformDegreeTreeNode * m_parent
 
NonUniformDegreeTreeNode * m_children
 
NonUniformDegreeTreeNode * m_next_sibling
 
NonUniformDegreeTreeNode * m_prev_sibling
 
uint m_child_count
 

Private Attributes

std::string m_filenm
 

Detailed Description

Definition at line 1684 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

◆ Loop()

Prof::Struct::Loop::Loop ( ACodeNode *  parent,
std::string &  filenm,
SrcFile::ln  begLn = ln_NULL,
SrcFile::ln  endLn = ln_NULL 
)
inline

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

Here is the call graph for this function:

◆ ~Loop()

virtual Prof::Struct::Loop::~Loop ( )
inlinevirtual

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

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.

◆ 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::Loop::clone ( )
inlinevirtual

Reimplemented from Prof::Struct::ACodeNode.

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

◆ codeName()

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

Reimplemented from Prof::Struct::ACodeNode.

Definition at line 1371 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::Loop::dumpme ( std::ostream &  os = std::cerr,
uint  oFlags = 0,
const char *  pre = "" 
) const
virtual

Reimplemented from Prof::Struct::ACodeNode.

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

Here is the call 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.

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

◆ fileName() [1/2]

const std::string& Prof::Struct::Loop::fileName ( ) const
inline

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

◆ fileName() [2/2]

void Prof::Struct::Loop::fileName ( const std::string &  fnm)
inline

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

◆ 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::ANode::name ( void  ) const
inlinevirtualinherited

Reimplemented in Prof::Struct::Ref, Prof::Struct::Alien, Prof::Struct::Proc, Prof::Struct::File, Prof::Struct::LM, Prof::Struct::Group, and Prof::Struct::Root.

Definition at line 352 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:

◆ setFile()

void Prof::Struct::Loop::setFile ( std::string  filenm)

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

Here is the call 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::Loop::toXML ( uint  oFlags = 0) const
virtual

Reimplemented from Prof::Struct::ACodeNode.

Definition at line 1542 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

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

std::string Prof::Struct::Loop::m_filenm
private

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

◆ m_id

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

Definition at line 600 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: