HPCToolkit
|
#include <Struct-Tree.hpp>
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 | |
ANode (ANodeTy ty, ANode *parent=NULL) | |
virtual | ~ANode () |
virtual ANode * | clone () |
ANodeTy | type () const |
uint | id () const |
virtual const std::string & | name () const |
virtual std::string | nameQual () 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::string | toXML (uint oFlags=0) 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 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 |
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 |
virtual std::ostream & | dumpme (std::ostream &os=std::cerr, uint oFlags=0, const char *pre="") 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 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 | |
ANode (const ANode &x) | |
ANode & | operator= (const ANode &x) |
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 | |
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 Member Functions | |
void | ctorCheck () const |
void | dtorCheck () const |
Static Private Attributes | |
static const std::string | ScopeNames [TyNUMBER] |
static uint | s_nextUniqueId = 1 |
Definition at line 252 of file Struct-Tree.hpp.
|
inherited |
Definition at line 107 of file Metric-IData.hpp.
Enumerator | |
---|---|
TyRoot | |
TyGroup | |
TyLM | |
TyFile | |
TyProc | |
TyAlien | |
TyLoop | |
TyStmt | |
TyRef | |
TyVariable | |
TyANY | |
TyNUMBER |
Definition at line 255 of file Struct-Tree.hpp.
Definition at line 286 of file Struct-Tree.hpp.
|
inlinevirtual |
Definition at line 296 of file Struct-Tree.hpp.
|
inlineprotected |
Definition at line 309 of file Struct-Tree.hpp.
ACodeNode * Prof::Struct::ANode::ACodeNodeParent | ( | ) | const |
Definition at line 536 of file Struct-Tree.cpp.
Definition at line 694 of file Struct-Tree.cpp.
|
inline |
Definition at line 543 of file Struct-Tree.cpp.
Alien * Prof::Struct::ANode::ancestorAlien | ( | ) | const |
|
inherited |
Definition at line 183 of file NonUniformDegreeTree.cpp.
File * Prof::Struct::ANode::ancestorFile | ( | ) | const |
Definition at line 648 of file Struct-Tree.cpp.
Group * Prof::Struct::ANode::ancestorGroup | ( | ) | const |
LM * Prof::Struct::ANode::ancestorLM | ( | ) | const |
Definition at line 641 of file Struct-Tree.cpp.
Loop * Prof::Struct::ANode::ancestorLoop | ( | ) | const |
Proc * Prof::Struct::ANode::ancestorProc | ( | ) | const |
Definition at line 655 of file Struct-Tree.cpp.
ACodeNode * Prof::Struct::ANode::ancestorProcCtxt | ( | ) | const |
Root * Prof::Struct::ANode::ancestorRoot | ( | ) | const |
Stmt * Prof::Struct::ANode::ancestorStmt | ( | ) | const |
|
static |
|
static |
|
inlineinherited |
Definition at line 163 of file NonUniformDegreeTree.hpp.
|
inlineinherited |
|
inlinevirtual |
Reimplemented in Prof::Struct::Ref, Prof::Struct::Stmt, Prof::Struct::Loop, Prof::Struct::Alien, Prof::Struct::Proc, Prof::Struct::File, Prof::Struct::LM, Prof::Struct::Group, Prof::Struct::Root, and Prof::Struct::ACodeNode.
Definition at line 304 of file Struct-Tree.hpp.
|
virtual |
Reimplemented in Prof::Struct::Alien, Prof::Struct::Proc, Prof::Struct::File, and Prof::Struct::ACodeNode.
Definition at line 1712 of file Struct-Tree.cpp.
void Prof::Struct::ANode::CSV_DumpSelf | ( | const Root & | root, |
std::ostream & | os = std::cout |
||
) | const |
Definition at line 1687 of file Struct-Tree.cpp.
|
private |
void Prof::Struct::ANode::ddump | ( | ) | const |
|
inherited |
Definition at line 155 of file Metric-IData.cpp.
void Prof::Struct::ANode::ddumpXML | ( | ) | const |
|
inlineinherited |
Definition at line 182 of file Metric-IData.hpp.
|
inlineinherited |
|
private |
std::ostream& Prof::Struct::ANode::dump | ( | std::ostream & | os = std::cerr , |
uint | oFlags = 0 , |
||
const char * | pre = "" |
||
) | const |
|
virtual |
Reimplemented in Prof::Struct::Ref, Prof::Struct::Stmt, Prof::Struct::Loop, Prof::Struct::Alien, Prof::Struct::Proc, Prof::Struct::File, Prof::Struct::LM, Prof::Struct::Group, Prof::Struct::Root, and Prof::Struct::ACodeNode.
Definition at line 1865 of file Struct-Tree.cpp.
|
inherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 197 of file NonUniformDegreeTree.hpp.
|
inline |
Definition at line 375 of file Struct-Tree.hpp.
|
inlineinherited |
|
inlineinherited |
Definition at line 141 of file Metric-IData.hpp.
|
inlineinherited |
|
inline |
|
inlineinherited |
Definition at line 226 of file Metric-IData.hpp.
|
static |
|
inlineinherited |
Definition at line 167 of file NonUniformDegreeTree.hpp.
Definition at line 855 of file Struct-Tree.cpp.
|
inline |
|
inlineinherited |
Definition at line 201 of file NonUniformDegreeTree.hpp.
|
inline |
Definition at line 379 of file Struct-Tree.hpp.
|
inherited |
Definition at line 97 of file NonUniformDegreeTree.cpp.
|
inherited |
Definition at line 117 of file NonUniformDegreeTree.cpp.
|
inherited |
Definition at line 138 of file NonUniformDegreeTree.cpp.
|
inlineinherited |
|
inlinestatic |
Definition at line 346 of file Struct-Tree.hpp.
Definition at line 818 of file Struct-Tree.cpp.
|
inlineinherited |
|
inlineinherited |
Definition at line 171 of file Metric-IData.hpp.
|
inlineinherited |
|
inlinevirtual |
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.
|
inlinevirtual |
Reimplemented in Prof::Struct::ACodeNode.
Definition at line 356 of file Struct-Tree.hpp.
|
inlineinherited |
Definition at line 189 of file NonUniformDegreeTree.hpp.
|
inline |
Definition at line 383 of file Struct-Tree.hpp.
|
inlineinherited |
Definition at line 233 of file Metric-IData.hpp.
Definition at line 314 of file Struct-Tree.hpp.
|
inlineinherited |
Definition at line 185 of file NonUniformDegreeTree.hpp.
|
inline |
Definition at line 371 of file Struct-Tree.hpp.
|
inlineinherited |
Definition at line 193 of file NonUniformDegreeTree.hpp.
|
inline |
Definition at line 393 of file Struct-Tree.hpp.
void Prof::Struct::ANode::pruneByMetrics | ( | ) |
Definition at line 716 of file Struct-Tree.cpp.
|
inline |
Definition at line 360 of file Struct-Tree.hpp.
|
virtual |
Reimplemented from NonUniformDegreeTreeNode.
Definition at line 1805 of file Struct-Tree.cpp.
string Prof::Struct::ANode::toString_id | ( | uint | oFlags = 0 | ) | const |
Definition at line 1814 of file Struct-Tree.cpp.
string Prof::Struct::ANode::toStringMe | ( | uint | oFlags = 0 , |
const char * | pre = "" |
||
) | const |
Definition at line 1823 of file Struct-Tree.cpp.
|
inherited |
Definition at line 96 of file Metric-IData.cpp.
string Prof::Struct::ANode::toStringXML | ( | uint | oFlags = 0 , |
const char * | pre = "" |
||
) | const |
Definition at line 1411 of file Struct-Tree.cpp.
|
virtual |
Reimplemented in Prof::Struct::Ref, Prof::Struct::Stmt, Prof::Struct::Loop, Prof::Struct::Alien, Prof::Struct::Proc, Prof::Struct::File, Prof::Struct::LM, Prof::Struct::Group, Prof::Struct::Root, and Prof::Struct::ACodeNode.
Definition at line 1420 of file Struct-Tree.cpp.
|
inline |
|
inherited |
Definition at line 152 of file NonUniformDegreeTree.cpp.
|
inherited |
Definition at line 105 of file Metric-IData.cpp.
|
virtual |
Reimplemented in Prof::Struct::LM, and Prof::Struct::Root.
|
protected |
|
protected |
|
inlineprotectedinherited |
Definition at line 207 of file NonUniformDegreeTree.hpp.
Definition at line 201 of file Metric-IData.hpp.
|
static |
Definition at line 342 of file Struct-Tree.hpp.
|
protectedinherited |
Definition at line 225 of file NonUniformDegreeTree.hpp.
|
protectedinherited |
Definition at line 222 of file NonUniformDegreeTree.hpp.
|
protected |
Definition at line 600 of file Struct-Tree.hpp.
|
protectedinherited |
Definition at line 223 of file NonUniformDegreeTree.hpp.
uint Prof::Struct::ANode::m_origId |
Definition at line 605 of file Struct-Tree.hpp.
|
protectedinherited |
Definition at line 221 of file NonUniformDegreeTree.hpp.
|
protectedinherited |
Definition at line 224 of file NonUniformDegreeTree.hpp.
|
protected |
Definition at line 599 of file Struct-Tree.hpp.
|
protected |
Definition at line 601 of file Struct-Tree.hpp.
|
staticinherited |
Definition at line 138 of file Metric-IData.hpp.
|
staticprivate |
Definition at line 596 of file Struct-Tree.hpp.
|
staticprivate |
Definition at line 280 of file Struct-Tree.hpp.