Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
StaticSkeleton.h
Go to the documentation of this file.
1
32#pragma once
33
34#include <ogdf/basic/Graph.h>
35#include <ogdf/basic/basic.h>
36#include <ogdf/basic/memory.h>
38
39namespace ogdf {
40
41class StaticSPQRTree;
42class SPQRTree;
43
45
63 friend class StaticSPQRTree;
64
65public:
66 // constructor
67
69
76
77 // destructor
79
81 const SPQRTree& owner() const override;
82
84
87 node original(node v) const override { return m_orig[v]; }
88
90
93 bool isVirtual(edge e) const override { return m_real[e] == nullptr; }
94
96
100 edge realEdge(edge e) const override { return m_real[e]; }
101
103
107 edge twinEdge(edge e) const override;
108
110
114 node twinTreeNode(edge e) const override;
115
117
121 edge treeEdge(edge e) const { return m_treeEdge[e]; }
122
124
125protected:
130};
131
132}
Includes declaration of graph class.
Declaration of class Skeleton.
Basic declarations, included by all source files.
Class for the representation of edges.
Definition Graph_d.h:364
Class for the representation of nodes.
Definition Graph_d.h:241
Linear-time implementation of static SPQR-trees.
Definition SPQRTree.h:73
Skeleton graphs of nodes in an SPQR-tree.
Definition Skeleton.h:60
Linear-time implementation of static SPQR-trees.
Skeleton graphs of nodes in a static SPQR-tree.
const StaticSPQRTree * m_owner
owner tree
NodeArray< node > m_orig
corresp.
EdgeArray< edge > m_treeEdge
corresp.
EdgeArray< edge > m_real
corresp.
StaticSkeleton(const StaticSPQRTree *T, node vT)
Creates a skeleton S with owner tree T and corresponding node vT.
edge realEdge(edge e) const override
Returns the real edge that corresponds to skeleton edge e.
node twinTreeNode(edge e) const override
Returns the tree node in T containing the twin edge of skeleton edge e.
node original(node v) const override
Returns the vertex in the original graph G that corresponds to v.
const SPQRTree & owner() const override
Returns the owner tree T.
bool isVirtual(edge e) const override
Returns true iff e is a virtual edge.
edge twinEdge(edge e) const override
Returns the twin edge of skeleton edge e.
edge treeEdge(edge e) const
Returns the tree edge which is associated with skeleton edge e.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Definition Graph_d.h:717
RegisteredArray for nodes, edges and adjEntries of a graph.
Definition Graph_d.h:659
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
Definition config.h:117
#define OGDF_MALLOC_NEW_DELETE
Makes the class use malloc for memory allocation.
Definition memory.h:92
Declaration of memory manager for allocating small pieces of memory.
The namespace for all OGDF objects.