211 for (
edge e :
S.getGraph().edges) {
213 if (
eOrig !=
nullptr) {
219 node w = adj->theEdge()->target();
Declaration of class SPQRTree.
Declaration of class StaticSkeleton.
Declares class Triconnectivity which realizes the Hopcroft/Tarjan algorithm for finding the triconnec...
Class for adjacency list elements.
Dynamic arrays indexed with edges.
Class for the representation of edges.
Data type for general directed graphs (adjacency list representation).
Doubly linked lists (maintaining the length of the list).
Dynamic arrays indexed with nodes.
Class for the representation of nodes.
internal::GraphObjectContainer< AdjElement > adjEntries
The container containing all entries in the adjacency list of this node.
Pertinent graphs of nodes in an SPQR-tree.
Linear-time implementation of static SPQR-trees.
NodeType
The type of a tree node in T.
Skeleton graphs of nodes in an SPQR-tree.
Linear-time implementation of static SPQR-trees.
node rootTreeAt(node v) override
Roots T at node v and returns v.
node rootTreeAt(edge e) override
Roots T at edge e and returns the new root node of T.
EdgeArray< edge > m_skEdgeSrc
corresponding edge in skeleton(source(e))
void cpRec(node v, PertinentGraph &Gp) const override
Recursively performs the task of adding edges (and nodes) to the pertinent graph Gp for each involved...
node rootNode() const override
Returns the root node of T.
NodeArray< NodeType > m_type
type of nodes in T
int m_numR
number of R-nodes
StaticSPQRTree(const Graph &G)
Creates an SPQR tree T for graph G rooted at the first edge of G.
const Graph & tree() const override
Returns a reference to the tree T.
int numberOfRNodes() const override
Returns the number of R-nodes in T.
Skeleton & skeleton(node v) const override
Returns the skeleton of node v.
const Graph & originalGraph() const override
Returns a reference to the original graph G.
const Skeleton & skeletonOfReal(edge e) const override
Returns the skeleton that contains the real edge e.
EdgeArray< edge > m_skEdgeTgt
corresponding edge in skeleton(target(e))
edge skeletonEdgeSrc(edge e) const
Returns the edge in skeleton of source(e) that corresponds to tree edge e.
int numberOfPNodes() const override
Returns the number of P-nodes in T.
void init(edge eRef, Triconnectivity &tricComp)
Initialization (called by constructor).
EdgeArray< edge > m_copyOf
skeleton edge corresponding to real edge e
int numberOfSNodes() const override
Returns the number of S-nodes in T.
void init(edge e)
Initialization (called by constructor).
StaticSPQRTree(const Graph &G, edge e)
Creates an SPQR tree T for graph G rooted at the edge e.
edge rootEdge() const override
Returns the edge of G at which T is rooted.
node m_rootNode
root node of T
NodeType typeOf(node v) const override
Returns the type of node v.
edge m_rootEdge
edge of G at which T is rooted
StaticSPQRTree(const Graph &G, Triconnectivity &tricComp)
Creates an SPQR tree T for graph G rooted at the first edge of G.
void rootRec(node v, edge ef)
Recursively performs rooting of tree.
int m_numP
number of P-nodes
edge copyOfReal(edge e) const override
Returns the skeleton edge that corresponds to the real edge e.
edge skeletonEdgeTgt(edge e) const
Returns the edge in skeleton of target(e) that corresponds to tree edge e.
const Graph * m_pGraph
pointer to original graph
EdgeArray< StaticSkeleton * > m_skOf
skeleton containing real edge e
int m_numS
number of S-nodes
NodeArray< StaticSkeleton * > m_sk
pointer to skeleton of a node in T
List< node > nodesOfType(NodeType t) const override
Returns the list of all nodes with type t.
~StaticSPQRTree()
Destructor.
Graph m_tree
underlying tree graph
Skeleton graphs of nodes in a static SPQR-tree.
realizes Hopcroft/Tarjan algorithm for finding the triconnected components of a biconnected multi-gra...
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
#define OGDF_ASSERT(expr)
Assert condition expr. See doc/build.md for more information.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.