Skeleton graphs of nodes in an SPQR-tree. More...
#include <ogdf/decomposition/Skeleton.h>
Public Member Functions | |
Skeleton (node vT) | |
Creates a skeleton S with owner tree T and corresponding node vT . | |
virtual | ~Skeleton () |
Graph & | getGraph () |
Returns a reference to the skeleton graph M. | |
const Graph & | getGraph () const |
Returns a reference to the skeleton graph M. | |
virtual bool | isVirtual (edge e) const =0 |
Returns true iff e is a virtual edge. | |
virtual node | original (node v) const =0 |
Returns the vertex in the original graph G that corresponds to v . | |
virtual const SPQRTree & | owner () const =0 |
Returns the owner tree T. | |
virtual edge | realEdge (edge e) const =0 |
Returns the real edge that corresponds to skeleton edge e . | |
edge | referenceEdge () const |
Returns the reference edge of S in M. | |
node | treeNode () const |
Returns the corresponding node in the owner tree T to which S belongs. | |
virtual edge | twinEdge (edge e) const =0 |
Returns the twin edge of skeleton edge e . | |
virtual node | twinTreeNode (edge e) const =0 |
Returns the tree node in T containing the twin edge of skeleton edge e . | |
Protected Attributes | |
Graph | m_M |
actual skeleton graph | |
edge | m_referenceEdge |
reference edge | |
node | m_treeNode |
corresp. | |
Skeleton graphs of nodes in an SPQR-tree.
The class Skeleton maintains the skeleton S of a node vT in an SPQR-tree T. We call T the owner tree of S and vT the corresponding tree node. Let G be the original graph of T.
S consists of an undirected multi-graph M. If the owner tree of S is a PlanarSPQRTree, then M represents a combinatorial embedding. The vertices in M correspond to vertices in G. The edges in M are of two types: Real edges correspond to edges in G and virtual edges correspond to tree-edges in T having vT as an endpoint.
Let e in M be a virtual edge and eT be the corresponding tree-edge. Then there exists exactly one edge e' in another skeleton S' of T that corresponds to eT as well. We call e' the twin edge of e.
Definition at line 59 of file Skeleton.h.
|
inlineexplicit |
Creates a skeleton S with owner tree T and corresponding node vT
.
vT
is a node in T Definition at line 70 of file Skeleton.h.
|
inlinevirtual |
Definition at line 73 of file Skeleton.h.
|
inline |
Returns a reference to the skeleton graph M.
Definition at line 92 of file Skeleton.h.
Returns a reference to the skeleton graph M.
Definition at line 89 of file Skeleton.h.
Returns true iff e
is a virtual edge.
e
is an edge in M Implemented in ogdf::DynamicSkeleton, and ogdf::StaticSkeleton.
Returns the vertex in the original graph G that corresponds to v
.
v
is a node in M. Implemented in ogdf::DynamicSkeleton, and ogdf::StaticSkeleton.
Returns the owner tree T.
Implemented in ogdf::DynamicSkeleton, and ogdf::StaticSkeleton.
Returns the real edge that corresponds to skeleton edge e
.
If e
is virtual edge, then 0 is returned.
e
is an edge in M Implemented in ogdf::DynamicSkeleton, and ogdf::StaticSkeleton.
|
inline |
Returns the reference edge of S in M.
The reference edge is a real edge if S is the skeleton of the root node of T, and a virtual edge otherwise.
Definition at line 86 of file Skeleton.h.
|
inline |
Returns the corresponding node in the owner tree T to which S belongs.
Definition at line 79 of file Skeleton.h.
Returns the twin edge of skeleton edge e
.
If e
is not a virtual edge, then 0 is returned.
e
is an edge in M Implemented in ogdf::DynamicSkeleton, and ogdf::StaticSkeleton.
Returns the tree node in T containing the twin edge of skeleton edge e
.
If e
is not a virtual edge, then 0 is returned.
e
is an edge in M Implemented in ogdf::DynamicSkeleton, and ogdf::StaticSkeleton.
|
protected |
actual skeleton graph
Definition at line 132 of file Skeleton.h.
|
protected |
reference edge
Definition at line 131 of file Skeleton.h.
|
protected |