Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Skeleton.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>
37 
38 namespace ogdf {
39 
40 class OGDF_EXPORT SPQRTree;
41 
43 
61 public:
62  // constructor
63 
65 
71  explicit Skeleton(node vT) : m_treeNode(vT) { }
72 
73  // destructor
74  virtual ~Skeleton() { }
75 
77  virtual const SPQRTree& owner() const = 0;
78 
80  node treeNode() const { return m_treeNode; }
81 
83 
87  edge referenceEdge() const { return m_referenceEdge; }
88 
90  const Graph& getGraph() const { return m_M; }
91 
93  Graph& getGraph() { return m_M; }
94 
96 
99  virtual node original(node v) const = 0;
100 
102 
105  virtual bool isVirtual(edge e) const = 0;
106 
108 
112  virtual edge realEdge(edge e) const = 0;
113 
115 
119  virtual edge twinEdge(edge e) const = 0;
120 
122 
126  virtual node twinTreeNode(edge e) const = 0;
127 
129 
130 protected:
134 };
135 
136 }
ogdf
The namespace for all OGDF objects.
Definition: multilevelmixer.cpp:39
Graph.h
Includes declaration of graph class.
ogdf::Skeleton::m_M
Graph m_M
actual skeleton graph
Definition: Skeleton.h:133
ogdf::Skeleton::m_referenceEdge
edge m_referenceEdge
reference edge
Definition: Skeleton.h:132
ogdf::Skeleton::getGraph
Graph & getGraph()
Returns a reference to the skeleton graph M.
Definition: Skeleton.h:93
ogdf::SPQRTree
Linear-time implementation of static SPQR-trees.
Definition: SPQRTree.h:73
ogdf::Skeleton::treeNode
node treeNode() const
Returns the corresponding node in the owner tree T to which S belongs.
Definition: Skeleton.h:80
ogdf::Skeleton::m_treeNode
node m_treeNode
corresp.
Definition: Skeleton.h:131
OGDF_NEW_DELETE
#define OGDF_NEW_DELETE
Makes the class use OGDF's memory allocator.
Definition: memory.h:85
ogdf::Skeleton::referenceEdge
edge referenceEdge() const
Returns the reference edge of S in M.
Definition: Skeleton.h:87
ogdf::Skeleton::~Skeleton
virtual ~Skeleton()
Definition: Skeleton.h:74
ogdf::Graph
Data type for general directed graphs (adjacency list representation).
Definition: Graph_d.h:869
ogdf::Skeleton::getGraph
const Graph & getGraph() const
Returns a reference to the skeleton graph M.
Definition: Skeleton.h:90
basic.h
Basic declarations, included by all source files.
OGDF_EXPORT
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Definition: config.h:101
ogdf::EdgeElement
Class for the representation of edges.
Definition: Graph_d.h:363
ogdf::Skeleton::Skeleton
Skeleton(node vT)
Creates a skeleton S with owner tree T and corresponding node vT.
Definition: Skeleton.h:71
ogdf::Skeleton
Skeleton graphs of nodes in an SPQR-tree.
Definition: Skeleton.h:60
ogdf::NodeElement
Class for the representation of nodes.
Definition: Graph_d.h:240
memory.h
Declaration of memory manager for allocating small pieces of memory.