The DotNode
Class Reference
A node in a dot graph. More...
Declaration
Included Headers
Enumerations Index
enum class | LabelStyle { ... } |
enum | TruncState { ... } |
Public Constructors Index
DotNode (DotGraph *graph, const QCString &lab, const QCString &tip, const QCString &url, bool rootNode=FALSE, const ClassDef *cd=nullptr) | |
Public Member Functions Index
void | addChild (DotNode *n, EdgeInfo::Colors edgeColor=EdgeInfo::Purple, EdgeInfo::Styles edgeStyle=EdgeInfo::Solid, const QCString &edgeLab=QCString(), const QCString &edgeURL=QCString(), int edgeLabCol=-1) |
void | addParent (DotNode *n) |
void | deleteNode (DotNodeRefVector &deletedList) |
void | removeChild (DotNode *n) |
void | removeParent (DotNode *n) |
int | findParent (DotNode *n) |
void | write (TextStream &t, GraphType gt, GraphOutputFormat f, bool topDown, bool toChildren, bool backArrows) |
void | writeXML (TextStream &t, bool isClassGraph) const |
void | writeDocbook (TextStream &t, bool isClassGraph) const |
void | writeDEF (TextStream &t) const |
void | writeLabel (TextStream &t, GraphType gt) const |
void | writeUrl (TextStream &t) const |
void | writeBox (TextStream &t, GraphType gt, GraphOutputFormat f, bool hasNonReachableChildren) const |
void | writeArrow (TextStream &t, GraphType gt, GraphOutputFormat f, const DotNode *cn, const EdgeInfo *ei, bool topDown, bool pointBack=TRUE) const |
QCString | label () const |
int | number () const |
bool | isVisible () const |
TruncState | isTruncated () const |
int | distance () const |
int | subgraphId () const |
bool | isRenumbered () const |
bool | hasDocumentation () const |
bool | isWritten () const |
void | clearWriteFlag () |
void | renumberNodes (int &number) |
void | markRenumbered () |
DotNode & | markHasDocumentation () |
void | setSubgraphId (int id) |
void | colorConnectedNodes (int curColor) |
void | setDistance (int distance) |
void | markAsVisible (bool b=TRUE) |
DotNode & | markAsTruncated (bool b=TRUE) |
const DotNodeRefVector & | children () const |
const DotNodeRefVector & | parents () const |
const EdgeInfoVector & | edgeInfo () const |
DotNode & | setNodeId (int number) |
Private Member Attributes Index
DotGraph * | m_graph |
int | m_number |
QCString | m_label |
label text More... | |
QCString | m_tooltip |
node's tooltip More... | |
QCString | m_url |
url of the node (format: remote$local) More... | |
DotNodeRefVector | m_parents |
list of parent nodes (incoming arrows) More... | |
DotNodeRefVector | m_children |
list of child nodes (outgoing arrows) More... | |
EdgeInfoVector | m_edgeInfo |
edge info for each child More... | |
bool | m_deleted = false |
used to mark a node as deleted More... | |
bool | m_written = false |
used to mark a node as written More... | |
bool | m_hasDoc = false |
used to mark a node as documented More... | |
bool | m_isRoot |
indicates if this is a root node More... | |
const ClassDef * | m_classDef |
class representing this node (can be 0) More... | |
bool | m_visible = false |
is the node visible in the output More... | |
TruncState | m_truncated = Unknown |
does the node have non-visible children/parents More... | |
int | m_distance = 1000 |
shortest path to the root node More... | |
bool | m_renumbered = false |
indicates if the node has been renumbered (to prevent endless loops) More... | |
int | m_subgraphId = -1 |
Public Static Functions Index
static void | deleteNodes (DotNode *node) |
static QCString | convertLabel (const QCString &, LabelStyle=LabelStyle::Plain) |
Public Static Attributes Index
static constexpr auto | placeholderUrl = "-" |
Description
A node in a dot graph.
Definition at line 67 of file dotnode.h.
Enumerations
LabelStyle
| strong |
TruncState
|
Definition at line 77 of file dotnode.h.
Public Constructors
DotNode()
|
Declaration at line 74 of file dotnode.h, definition at line 327 of file dotnode.cpp.
References m_classDef, m_graph, m_isRoot, m_label, m_number, m_tooltip and m_url.
Referenced by addChild, addParent, deleteNodes, findParent, markAsTruncated, markHasDocumentation, removeChild, removeParent, setNodeId and writeArrow.
Public Member Functions
addChild()
|
Declaration at line 79 of file dotnode.h, definition at line 339 of file dotnode.cpp.
References DotNode, m_children and m_edgeInfo.
Referenced by DotClassGraph::addClass, DotGfxHierarchyTable::addHierarchy, DotCallGraph::buildGraph and DotInclDepGraph::buildGraph.
addParent()
|
Declaration at line 85 of file dotnode.h, definition at line 356 of file dotnode.cpp.
References DotNode and m_parents.
Referenced by DotClassGraph::addClass, DotCallGraph::buildGraph and DotInclDepGraph::buildGraph.
children()
| inline |
Definition at line 123 of file dotnode.h.
Reference m_children.
Referenced by DotGfxHierarchyTable::addHierarchy, DotCallGraph::determineTruncatedNodes, DotClassGraph::determineTruncatedNodes, DotInclDepGraph::determineTruncatedNodes, DotCallGraph::determineVisibleNodes, DotClassGraph::determineVisibleNodes, DotInclDepGraph::determineVisibleNodes and write.
clearWriteFlag()
|
Declaration at line 113 of file dotnode.h, definition at line 888 of file dotnode.cpp.
References FALSE, m_children, m_parents and m_written.
Referenced by DotGraph::computeGraph.
colorConnectedNodes()
|
Declaration at line 119 of file dotnode.h, definition at line 895 of file dotnode.cpp.
References m_children and m_parents.
deleteNode()
|
Declaration at line 86 of file dotnode.h, definition at line 373 of file dotnode.cpp.
References m_children, m_deleted, m_parents and TRUE.
Referenced by deleteNodes.
distance()
| inline |
Definition at line 107 of file dotnode.h.
Reference m_distance.
Referenced by DotCallGraph::determineVisibleNodes, DotClassGraph::determineVisibleNodes, DotInclDepGraph::determineVisibleNodes and setDistance.
edgeInfo()
| inline |
Definition at line 125 of file dotnode.h.
Reference m_edgeInfo.
Referenced by writeDEF, writeDocbook and writeXML.
findParent()
| inline |
Declaration at line 89 of file dotnode.h, definition at line 396 of file dotnode.cpp.
hasDocumentation()
| inline |
Definition at line 110 of file dotnode.h.
Reference m_hasDoc.
isRenumbered()
| inline |
Definition at line 109 of file dotnode.h.
Reference m_renumbered.
Referenced by renumberNodes.
isTruncated()
| inline |
Definition at line 106 of file dotnode.h.
Reference m_truncated.
Referenced by DotCallGraph::determineTruncatedNodes, DotClassGraph::determineTruncatedNodes and DotInclDepGraph::determineTruncatedNodes.
isVisible()
| inline |
Definition at line 105 of file dotnode.h.
Reference m_visible.
Referenced by DotCallGraph::determineTruncatedNodes, DotClassGraph::determineTruncatedNodes, DotInclDepGraph::determineTruncatedNodes, DotCallGraph::determineVisibleNodes, DotClassGraph::determineVisibleNodes and DotInclDepGraph::determineVisibleNodes.
isWritten()
| inline |
label()
| inline |
markAsTruncated()
| inline |
Definition at line 122 of file dotnode.h.
References DotNode, m_truncated, TRUE, Truncated and Untruncated.
Referenced by DotCallGraph::determineTruncatedNodes, DotClassGraph::determineTruncatedNodes and DotInclDepGraph::determineTruncatedNodes.
markAsVisible()
| inline |
Definition at line 121 of file dotnode.h.
References m_visible and TRUE.
Referenced by DotGroupCollaboration::addCollaborationMember, DotGroupCollaboration::buildGraph, DotCallGraph::determineVisibleNodes, DotClassGraph::determineVisibleNodes and DotInclDepGraph::determineVisibleNodes.
markHasDocumentation()
| inline |
markRenumbered()
| inline |
Definition at line 115 of file dotnode.h.
Reference m_renumbered.
Referenced by renumberNodes.
number()
| inline |
Definition at line 104 of file dotnode.h.
Reference m_number.
Referenced by renumberNodes, setNodeId and writeArrow.
parents()
| inline |
Definition at line 124 of file dotnode.h.
Reference m_parents.
Referenced by DotGraph::computeGraph, DotClassGraph::determineTruncatedNodes and DotClassGraph::determineVisibleNodes.
removeChild()
|
Declaration at line 87 of file dotnode.h, definition at line 361 of file dotnode.cpp.
References DotNode and m_children.
removeParent()
|
renumberNodes()
|
Declaration at line 114 of file dotnode.h, definition at line 922 of file dotnode.cpp.
References isRenumbered, m_children, m_label, m_number, m_parents, markRenumbered, number, qPrint and subgraphId.
setDistance()
|
Declaration at line 120 of file dotnode.h, definition at line 391 of file dotnode.cpp.
References distance and m_distance.
Referenced by DotClassGraph::addClass, DotCallGraph::buildGraph and DotInclDepGraph::buildGraph.
setNodeId()
| inline |
setSubgraphId()
| inline |
Definition at line 117 of file dotnode.h.
Reference m_subgraphId.
subgraphId()
| inline |
Definition at line 108 of file dotnode.h.
Reference m_subgraphId.
Referenced by renumberNodes.
write()
|
Declaration at line 91 of file dotnode.h, definition at line 655 of file dotnode.cpp.
References children, FALSE, m_children, m_edgeInfo, m_parents, m_truncated, m_visible, m_written, TRUE, Truncated, writeArrow and writeBox.
Referenced by DotGraph::computeGraph.
writeArrow()
|
Declaration at line 100 of file dotnode.h, definition at line 604 of file dotnode.cpp.
References EdgeProperties::arrowStyleMap, Collaboration, EdgeInfo::color, Config_getBool, convertLabel, DotNode, EdgeProperties::edgeColorMap, EdgeProperties::edgeStyleMap, Inheritance, QCString::isEmpty, EdgeInfo::label, m_graph, m_number, normalEdgeProps, number, QCString::sprintf, EdgeInfo::style, Table and umlEdgeProps.
Referenced by DotGraph::computeGraph and write.
writeBox()
|
Declaration at line 98 of file dotnode.h, definition at line 540 of file dotnode.cpp.
References escapeTooltip, m_classDef, m_isRoot, m_number, m_tooltip, m_url, QCString::sprintf, writeLabel and writeUrl.
Referenced by write.
writeDEF()
|
Declaration at line 95 of file dotnode.h, definition at line 831 of file dotnode.cpp.
References ASSERT, EdgeInfo::Blue, edgeInfo, QCString::find, EdgeInfo::Green, EdgeInfo::Grey, QCString::left, m_children, m_edgeInfo, m_label, m_number, m_url, QCString::mid, EdgeInfo::Orange, EdgeInfo::Orange2, EdgeInfo::Purple and EdgeInfo::Red.
writeDocbook()
|
Declaration at line 94 of file dotnode.h, definition at line 768 of file dotnode.cpp.
References ASSERT, EdgeInfo::Blue, convertToXML, edgeInfo, QCString::find, EdgeInfo::Green, EdgeInfo::Grey, QCString::left, m_children, m_edgeInfo, m_label, m_number, m_url, QCString::mid, EdgeInfo::Orange, EdgeInfo::Orange2, EdgeInfo::Purple and EdgeInfo::Red.
writeLabel()
|
Declaration at line 96 of file dotnode.h, definition at line 415 of file dotnode.cpp.
References Collaboration, Config_getBool, Config_getEnum, Config_getString, convertLabel, convertToXML, FALSE, Inheritance, List, m_classDef, m_edgeInfo, m_isRoot, m_label, m_truncated, Plain, QCString::str, stripProtectionPrefix, TRUE, Truncated and writeBoxMemberList.
Referenced by writeBox.
writeUrl()
|
Declaration at line 97 of file dotnode.h, definition at line 515 of file dotnode.cpp.
References addHtmlExtensionIfMissing, QCString::findRev, QCString::left, QCString::length, m_url, placeholderUrl and QCString::right.
Referenced by writeBox.
writeXML()
|
Declaration at line 93 of file dotnode.h, definition at line 706 of file dotnode.cpp.
References ASSERT, EdgeInfo::Blue, convertToXML, edgeInfo, QCString::find, EdgeInfo::Green, EdgeInfo::Grey, QCString::left, m_children, m_edgeInfo, m_label, m_number, m_url, QCString::mid, EdgeInfo::Orange, EdgeInfo::Orange2, EdgeInfo::Purple and EdgeInfo::Red.
Private Member Attributes
m_children
|
list of child nodes (outgoing arrows)
Definition at line 135 of file dotnode.h.
Referenced by addChild, children, clearWriteFlag, colorConnectedNodes, deleteNode, removeChild, renumberNodes, write, writeDEF, writeDocbook and writeXML.
m_classDef
|
class representing this node (can be 0)
Definition at line 141 of file dotnode.h.
Referenced by DotNode, writeBox and writeLabel.
m_deleted
|
m_distance
|
shortest path to the root node
Definition at line 144 of file dotnode.h.
Referenced by distance and setDistance.
m_edgeInfo
|
edge info for each child
Definition at line 136 of file dotnode.h.
Referenced by addChild, edgeInfo, write, writeDEF, writeDocbook, writeLabel and writeXML.
m_graph
|
m_hasDoc
|
used to mark a node as documented
Definition at line 139 of file dotnode.h.
Referenced by hasDocumentation and markHasDocumentation.
m_isRoot
|
m_label
|
label text
Definition at line 131 of file dotnode.h.
Referenced by DotNode, label, renumberNodes, writeDEF, writeDocbook, writeLabel and writeXML.
m_number
|
Definition at line 130 of file dotnode.h.
Referenced by DotNode, number, renumberNodes, setNodeId, writeArrow, writeBox, writeDEF, writeDocbook and writeXML.
m_parents
|
list of parent nodes (incoming arrows)
Definition at line 134 of file dotnode.h.
Referenced by addParent, clearWriteFlag, colorConnectedNodes, deleteNode, findParent, parents, removeParent, renumberNodes and write.
m_renumbered
|
indicates if the node has been renumbered (to prevent endless loops)
Definition at line 145 of file dotnode.h.
Referenced by isRenumbered and markRenumbered.
m_subgraphId
|
Definition at line 146 of file dotnode.h.
Referenced by setSubgraphId and subgraphId.
m_tooltip
|
m_truncated
|
does the node have non-visible children/parents
Definition at line 143 of file dotnode.h.
Referenced by isTruncated, markAsTruncated, write and writeLabel.
m_url
|
m_visible
|
m_written
Public Static Functions
convertLabel()
| static |
Declaration at line 73 of file dotnode.h, definition at line 196 of file dotnode.cpp.
References Config_getInt, QCString::contains, QCString::isEmpty, QCString::length, List, Plain, QCString::stripWhiteSpace and Table.
Referenced by drawClusterOpening, drawDirectory, DotGroupCollaboration::Edge::write, writeArrow, writeBoxMemberList and writeLabel.
deleteNodes()
| static |
helper function that deletes all nodes in a connected graph, given one of the graph's nodes
Declaration at line 72 of file dotnode.h, definition at line 405 of file dotnode.cpp.
References deleteNode and DotNode.
Referenced by DotCallGraph::~DotCallGraph, DotClassGraph::~DotClassGraph and DotInclDepGraph::~DotInclDepGraph.
Public Static Attributes
placeholderUrl
| constexpr static |
Definition at line 71 of file dotnode.h.
Referenced by DotLegendGraph::computeTheGraph and writeUrl.
The documentation for this class was generated from the following files:
Generated via doxygen2docusaurus by Doxygen 1.14.0.