Open
Graph Drawing
Framework

 v.2012.05
 

ogdf::DynamicSkeleton Class Reference

Skeleton graphs of nodes in a dynamic SPQR-tree. More...

#include <ogdf/decomposition/DynamicSkeleton.h>

Inheritance diagram for ogdf::DynamicSkeleton:
ogdf::Skeleton

List of all members.

Public Member Functions

 DynamicSkeleton (const DynamicSPQRTree *T, node vT)
 Creates a skeleton S with owner tree T and corresponding node vT.
 ~DynamicSkeleton ()
const SPQRTreeowner () const
 Returns the owner tree T.
node original (node v) const
 Returns the vertex in the original graph G that corresponds to v.
edge realEdge (edge e) const
 Returns the real edge that corresponds to skeleton edge e.
bool isVirtual (edge e) const
 Returns true iff e is a virtual edge.
edge twinEdge (edge e) const
 Returns the twin edge of skeleton edge e.
node twinTreeNode (edge e) const
 Returns the tree node in T containing the twin edge of skeleton edge e.

Protected Attributes

const DynamicSPQRTreem_owner
 owner tree
NodeArray< nodem_origNode
 corresp. original node
EdgeArray< edgem_origEdge
 corresp. original edge

Friends

class DynamicSPQRTree

Detailed Description

Skeleton graphs of nodes in a dynamic SPQR-tree.

The class DynamicSkeleton maintains the skeleton S of a node vT in a dynamic 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 76 of file DynamicSkeleton.h.


Constructor & Destructor Documentation

Creates a skeleton S with owner tree T and corresponding node vT.

Precondition:
vT is a node in T
Remarks:
Skeletons are created by the constructor of DynamicSPQRTree and can be accessed with the skeleton() function of DynamicSPQRTree.

Definition at line 95 of file DynamicSkeleton.h.


Member Function Documentation

bool ogdf::DynamicSkeleton::isVirtual ( edge  e) const [inline, virtual]

Returns true iff e is a virtual edge.

Precondition:
e is an edge in M

Implements ogdf::Skeleton.

Definition at line 118 of file DynamicSkeleton.h.

node ogdf::DynamicSkeleton::original ( node  v) const [virtual]

Returns the vertex in the original graph G that corresponds to v.

Precondition:
v is a node in M.

Implements ogdf::Skeleton.

const SPQRTree& ogdf::DynamicSkeleton::owner ( ) const [virtual]

Returns the owner tree T.

Implements ogdf::Skeleton.

edge ogdf::DynamicSkeleton::realEdge ( edge  e) const [virtual]

Returns the real edge that corresponds to skeleton edge e.

If e is virtual edge, then 0 is returned.

Precondition:
e is an edge in M

Implements ogdf::Skeleton.

edge ogdf::DynamicSkeleton::twinEdge ( edge  e) const [virtual]

Returns the twin edge of skeleton edge e.

If e is not a virtual edge, then 0 is returned.

Precondition:
e is an edge in M

Implements ogdf::Skeleton.

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.

Precondition:
e is an edge in M

Implements ogdf::Skeleton.


Friends And Related Function Documentation

friend class DynamicSPQRTree [friend]

Definition at line 78 of file DynamicSkeleton.h.


Member Data Documentation

corresp. original edge

Definition at line 141 of file DynamicSkeleton.h.

corresp. original node

Definition at line 140 of file DynamicSkeleton.h.

owner tree

Definition at line 139 of file DynamicSkeleton.h.


The documentation for this class was generated from the following file: