Open
Graph Drawing
Framework

 v.2007.11
 

ogdf::DynamicSkeleton Class Reference

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

#include <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 84 of file DynamicSkeleton.h.


Constructor & Destructor Documentation

ogdf::DynamicSkeleton::DynamicSkeleton ( const DynamicSPQRTree T,
node  vT 
)

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.

ogdf::DynamicSkeleton::~DynamicSkeleton (  )  [inline]

Definition at line 103 of file DynamicSkeleton.h.


Member Function Documentation

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

Returns the owner tree T.

Implements ogdf::Skeleton.

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.

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.

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 126 of file DynamicSkeleton.h.

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.

node ogdf::DynamicSkeleton::twinTreeNode ( edge  e  )  const [virtual]

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 86 of file DynamicSkeleton.h.


Member Data Documentation

const DynamicSPQRTree* ogdf::DynamicSkeleton::m_owner [protected]

owner tree

Definition at line 146 of file DynamicSkeleton.h.

NodeArray<node> ogdf::DynamicSkeleton::m_origNode [protected]

corresp. original node

Definition at line 147 of file DynamicSkeleton.h.

EdgeArray<edge> ogdf::DynamicSkeleton::m_origEdge [protected]

corresp. original edge

Definition at line 148 of file DynamicSkeleton.h.


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

© 1999-2007 by oreas GmbH, © 2005-2007 by University Dortmund and University Cologne.

Generated on Thu Nov 22 19:40:09 2007 by doxygen 1.5.4.