92 for (
auto ptr : skel_array) {
96 ptr->breakLinkForMasterDeconstruction();
Implementation of disjoint sets data structures (union-find functionality).
Includes declaration of graph class.
An embedding tree representing, for a single node, all orders of incident edges in all planar embeddi...
Multiple GraphCopies that contain different, overlapping parts of the same original graph.
Declaration of singly linked lists and iterators.
Declares class Triconnectivity which realizes the Hopcroft/Tarjan algorithm for finding the triconnec...
Basic declarations, included by all source files.
Class for adjacency list elements.
edge theEdge() const
Returns the edge associated with this adjacency entry.
node theNode() const
Returns the node whose adjacency list contains this element.
Class for the representation of edges.
Data type for general directed graphs (adjacency list representation).
int numberOfNodes() const
Returns the number of nodes in the graph.
int numberOfEdges() const
Returns the number of edges in the graph.
Doubly linked lists (maintaining the length of the list).
Centralized global and local logging facility working on streams like std::cout.
Class for the representation of nodes.
The manager class for multiple OverlappingGraphCopy instances of the same graph.
Version of GraphCopySimple that may efficiently share some overlap with other instances of the same o...
node copy(node v) const
Returns the node in the graph copy corresponding to v.
const Graph & original() const
Returns a reference to the original graph.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
This class represents the embedding tree of a single node in a biconnected component.
A node in a PC-tree that is either a P-node, C-node or leaf.
Derive embedding trees from Triconnectivity information.
const SimpleSPQRTree & spqr
void getIncidentRealEdgesInSubtree(adjEntry skel_adj, OverlappingGraphCopy &skel, List< edge > &out)
pc_tree::PCNode * process(adjEntry skel_adj, OverlappingGraphCopy &skel, pc_tree::PCNode *parent=nullptr)
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
#define OGDF_NO_COPY(cls)
Explicitly disables (deletes) copy construction and assignment for class cls.
#define OGDF_NO_MOVE(cls)
Explicitly disables (deletes) move construction and assignment for class cls.
adjEntry getAdjInSkel(const OverlappingGraphCopy *skel, adjEntry GC_adj)
adjEntry getAdjInOrig(const OverlappingGraphCopy *skel, adjEntry skel_adj)
bool isPNode(const Graph &skel)
bool isSNode(const Graph &skel)
bool isRNode(const Graph &skel)
The namespace for all OGDF objects.
representation of a component
Wrapper class around Triconnectivity information.
EdgeArray< OverlappingGraphCopy * > skels
OverlappingGraphCopies GC_skels
std::vector< OverlappingGraphCopy * > skel_array
OverlappingGraphCopy * getTwinSkel(OverlappingGraphCopy *skel, edge skel_e) const
EdgeArray< OverlappingGraphCopy * > twins
OverlappingGraphCopy * getNonSSkel(node GC_n) const
EdgeArray< SList< edge > > par_replacement
OverlappingGraphCopy * getTwinSkel_GC(OverlappingGraphCopy *skel, edge GC_e) const