Loading [MathJax]/extensions/tex2jax.js

Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
DynamicBCTree.h
Go to the documentation of this file.
1
32#pragma once
33
35
36namespace ogdf {
37
55 friend class PlanarAugmentation;
57
58protected:
71
85
89 void init();
91
104
111 node find(node vB) const;
113
121 node parent(node vB) const override;
122
135
136public:
146 explicit DynamicBCTree(Graph& G, bool callInitConnected = false)
148 init();
149 }
150
161 init();
162 }
163
165
181 node bcproper(node vG) const override;
182
193 node bcproper(edge eG) const override;
194
196
213 node repVertex(node uG, node vB) const override { return BCTree::repVertex(uG, find(vB)); }
214
247 node cutVertex(node uB, node vB) const override {
248 return BCTree::cutVertex(find(uB), find(vB));
249 }
250
252
270
289
299 edge insertEdge(node sG, node tG) { return updateInsertedEdge(m_G.newEdge(sG, tG)); }
300
309 node insertNode(edge eG) { return updateInsertedNode(eG, m_G.split(eG)); }
310
312
328
330};
331
332}
Declaration of class BCTree.
Static BC-trees.
Definition BCTree.h:55
Dynamic BC-trees.
virtual edge updateInsertedEdge(edge eG)
node find(node vB) const
The FIND function of the UNION/FIND structure.
node bcproper(node vG) const override
node cutVertex(node uB, node vB) const override
Returns the copy of a cut-vertex in the biconnected components graph which belongs to a certain B-com...
node repVertex(node uG, node vB) const override
node unite(node uB, node vB, node wB)
DynamicBCTree(Graph &G, bool callInitConnected=false)
node bComponent(node uG, node vG) const
DynamicBCTree(Graph &G, node vG, bool callInitConnected=false)
A constructor.
node condensePath(node sG, node tG)
Performs path condensation.
node insertNode(edge eG)
Inserts a new vertex into the original graph and updates the BC-tree.
NodeArray< int > m_bNode_degree
Array that contains for each proper BC-tree-vertex its degree.
virtual node updateInsertedNode(edge eG, edge fG)
Update of the dynamic BC-tree after vertex insertion into the original graph.
edge insertEdge(node sG, node tG)
Inserts a new edge into the original graph and updates the BC-tree.
NodeArray< node > m_bNode_owner
Array that contains for each BC-tree-vertex its parent in its UNION/FIND-tree structure.
node parent(node vB) const override
node bcproper(edge eG) const override
Returns the BC-tree-vertex representing the biconnected component which a given edge of the original ...
Class for the representation of edges.
Definition Graph_d.h:300
Data type for general directed graphs (adjacency list representation).
Definition Graph_d.h:521
Dynamic arrays indexed with nodes.
Definition NodeArray.h:125
Class for the representation of nodes.
Definition Graph_d.h:177
The algorithm for biconnectivity augmentation with fixed combinatorial embedding.
The algorithm for planar biconnectivity augmentation (Mutzel, Fialko).
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Definition config.h:101
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.