|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
67 node findSPQRApex(
node n,
bool clear =
false);
94 , highest_with_edges(spqr.spqrTree(), nullptr)
95 , edges(spqr.spqrTree())
96 , children(spqr.spqrTree()) {
103 m_incidentEdgeForLeaf.init(*
this,
nullptr);
104 m_graphNodeForInnerNode.init(*
this,
nullptr);
105 apex = findSPQRApex(n);
119 void mapPartnerEdges();
122 const std::function<
edge(
edge)>& edge_map) {
127 node& gn = m_graphNodeForInnerNode[n];
133 edge& ie = m_incidentEdgeForLeaf[l];
137 if (knowsPartnerEdges()) {
138 for (
edge& e : m_bundleEdgesForLeaf[l]) {
The namespace for all OGDF objects.
node original(node vH) const
Includes declaration of graph class.
#define OGDF_ASSERT(expr)
Assert condition expr. See doc/build.md for more information.
An intrusive list for the leaves of a PCTree. TODO should be moved to a central location; merge with ...
NodeArray< SList< node > > children
const Graph & auxiliaryGraph() const
Returns the biconnected components graph.
This class represents the embedding tree of a single node in a biconnected component.
Derive embedding trees from an DynamicSPQRForest. Warning: breaks on certain parallel edge configurat...
Class for adjacency list elements.
NodeArray< GraphCopySimple * > rigids
A DFS or BFS through a PCTree.
EdgeElement * edge
The type of edges.
node spqrproper(edge eH) const
edge theEdge() const
Returns the edge associated with this adjacency entry.
const NodeArray< GraphCopySimple * > & rigids
Declaration of class BCTree.
internal::GraphObjectContainer< NodeElement > nodes
The container containing all node objects.
const DynamicSPQRForest spqr
int degree() const
Returns the degree of the node (indegree + outdegree).
node spqrroot(node vB) const
Returns the root of the SPQR-tree for a given B-component of the BC-tree.
Decralation of GraphElement and GraphList classes.
node bccomp(node vH) const override
void mapGraph(const Graph *G, const std::function< node(node)> &node_map, const std::function< edge(edge)> &edge_map)
Declaration of class DynamicSPQRForest.
A registry that allows labelling the nodes of a PC-tree.
NodeElement * node
The type of nodes.
Declaration of graph copy classes.
RegisteredArray for nodes, edges and adjEntries of a graph.
Data type for general directed graphs (adjacency list representation).
An embedding tree representing, for a single node, all orders of incident edges in all planar embeddi...
GNodeType typeOfGNode(node vG) const
Utils for PCTree::allNodes(), PCTree::innerNodes(), PCNode::children() and PCNode::neighbors().
A node in a PC-tree that is either a P-node, C-node or leaf.
A node in a PC-tree that is either a P-node, C-node or leaf.
Basic declarations, included by all source files.
NodeArray< node > highest_with_edges
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
const DynamicSPQRForest & spqr
adjEntry firstAdj() const
Returns the first entry in the adjaceny list.
NodeSPQRRotation(const DynamicSPQRForest &_spqr, node n, const NodeArray< GraphCopySimple * > &_rigids)
Class for the representation of edges.
Declaration of doubly linked lists and iterators.
const Graph * graphOf() const
Returns the graph containing this node (debug only).
NodeArray< SList< adjEntry > > edges
@ Normal
an ordinary vertex, i.e. not a cut-vertex
Centralized global and local logging facility working on streams like std::cout.
const Graph & spqrTree() const
Returns the SPQR-tree graph.
Class for the representation of nodes.