Open
Graph Drawing
Framework

 v.2007.11
 

ogdf::FaceSinkGraph Class Reference

#include <FaceSinkGraph.h>

Inheritance diagram for ogdf::FaceSinkGraph:

ogdf::Graph

List of all members.

Public Member Functions

 FaceSinkGraph (const ConstCombinatorialEmbedding &E, node s)
 constructor (we assume that the original graph is biconnected!)
 FaceSinkGraph ()
 default constructor (dummy)
void init (const ConstCombinatorialEmbedding &E, node s)
const GraphoriginalGraph () const
 return a reference to the original graph G
const ConstCombinatorialEmbeddingoriginalEmbedding () const
 returns a reference to the embedding E of the original graph G
node originalNode (node v) const
face originalFace (node v) const
bool containsSource (node v) const
node checkForest ()
void possibleExternalFaces (SList< face > &externalFaces)
node faceNodeOf (edge e)
node faceNodeOf (face f)
void stAugmentation (node h, Graph &G, SList< node > &augmentedNodes, SList< edge > &augmentedEdges)
 augments G to an st-planar graph (original implementation)
void stAugmentation (node h, Graph &G, node &superSink, SList< edge > &augmentedEdges)
 augments G to an st-planar graph

Private Member Functions

void doInit ()
 constructs face-sink graph
bool dfsCheckForest (node v, node parent, NodeArray< bool > &visited, int &nInternalVertices)
 performs dfs-traversal and checks for backwards edges
void gatherExternalFaces (node v, node parent, SList< face > &externalFaces)
 builds list of possible external faces
node dfsFaceNodeOf (node v, node parent, face f1, face f2)
node dfsStAugmentation (node v, node parent, Graph &G, SList< node > &augmentedNodes, SList< edge > &augmentedEdges)
node dfsStAugmentation (node v, node parent, Graph &G, SList< edge > &augmentedEdges)

Private Attributes

const ConstCombinatorialEmbeddingm_pE
 associated embedding of graph G
node m_source
 the single source
node m_T
 representative of unique tree T
NodeArray< nodem_originalNode
 original node in G
NodeArray< facem_originalFace
 original face in E
NodeArray< bool > m_containsSource
 contains face node the source ?


Detailed Description

Definition at line 66 of file FaceSinkGraph.h.


Constructor & Destructor Documentation

ogdf::FaceSinkGraph::FaceSinkGraph ( const ConstCombinatorialEmbedding E,
node  s 
)

constructor (we assume that the original graph is biconnected!)

ogdf::FaceSinkGraph::FaceSinkGraph (  )  [inline]

default constructor (dummy)

Definition at line 73 of file FaceSinkGraph.h.


Member Function Documentation

void ogdf::FaceSinkGraph::init ( const ConstCombinatorialEmbedding E,
node  s 
)

const Graph& ogdf::FaceSinkGraph::originalGraph (  )  const [inline]

return a reference to the original graph G

Definition at line 80 of file FaceSinkGraph.h.

const ConstCombinatorialEmbedding& ogdf::FaceSinkGraph::originalEmbedding (  )  const [inline]

returns a reference to the embedding E of the original graph G

Definition at line 85 of file FaceSinkGraph.h.

node ogdf::FaceSinkGraph::originalNode ( node  v  )  const [inline]

returns the sink-switch in G corresponding to node v in the face-sink graph, 0 if v corresponds to a face

Definition at line 91 of file FaceSinkGraph.h.

face ogdf::FaceSinkGraph::originalFace ( node  v  )  const [inline]

returns the face in E corresponding to node v in the face-sink graph, 0 if v corresponds to a sink-switch

Definition at line 97 of file FaceSinkGraph.h.

bool ogdf::FaceSinkGraph::containsSource ( node  v  )  const [inline]

Definition at line 103 of file FaceSinkGraph.h.

node ogdf::FaceSinkGraph::checkForest (  ) 

checks if the face-sink graph is a forest with 1) there is exactly one tree T containing no internal vertex of G 2) all other trees contain exactly one internal vertex of G a node in tree T is returned as representative

void ogdf::FaceSinkGraph::possibleExternalFaces ( SList< face > &  externalFaces  )  [inline]

returns the list of faces f in E such that there exists an upward-planar drawing realizing E with f as external face

Definition at line 116 of file FaceSinkGraph.h.

node ogdf::FaceSinkGraph::faceNodeOf ( edge  e  )  [inline]

Definition at line 121 of file FaceSinkGraph.h.

node ogdf::FaceSinkGraph::faceNodeOf ( face  f  )  [inline]

Definition at line 127 of file FaceSinkGraph.h.

void ogdf::FaceSinkGraph::stAugmentation ( node  h,
Graph G,
SList< node > &  augmentedNodes,
SList< edge > &  augmentedEdges 
)

augments G to an st-planar graph (original implementation)

introduces also new nodes into G corresponding to face-nodes in face sink graph)

void ogdf::FaceSinkGraph::stAugmentation ( node  h,
Graph G,
node superSink,
SList< edge > &  augmentedEdges 
)

augments G to an st-planar graph

(introduces only one new node as super sink into G)

void ogdf::FaceSinkGraph::doInit (  )  [private]

constructs face-sink graph

bool ogdf::FaceSinkGraph::dfsCheckForest ( node  v,
node  parent,
NodeArray< bool > &  visited,
int &  nInternalVertices 
) [private]

performs dfs-traversal and checks for backwards edges

void ogdf::FaceSinkGraph::gatherExternalFaces ( node  v,
node  parent,
SList< face > &  externalFaces 
) [private]

builds list of possible external faces

all faces in tree T containing the single source s) by a dfs traversal of T

node ogdf::FaceSinkGraph::dfsFaceNodeOf ( node  v,
node  parent,
face  f1,
face  f2 
) [private]

node ogdf::FaceSinkGraph::dfsStAugmentation ( node  v,
node  parent,
Graph G,
SList< node > &  augmentedNodes,
SList< edge > &  augmentedEdges 
) [private]

node ogdf::FaceSinkGraph::dfsStAugmentation ( node  v,
node  parent,
Graph G,
SList< edge > &  augmentedEdges 
) [private]


Member Data Documentation

const ConstCombinatorialEmbedding* ogdf::FaceSinkGraph::m_pE [private]

associated embedding of graph G

Definition at line 189 of file FaceSinkGraph.h.

node ogdf::FaceSinkGraph::m_source [private]

the single source

Definition at line 190 of file FaceSinkGraph.h.

node ogdf::FaceSinkGraph::m_T [private]

representative of unique tree T

Definition at line 191 of file FaceSinkGraph.h.

NodeArray<node> ogdf::FaceSinkGraph::m_originalNode [private]

original node in G

Definition at line 193 of file FaceSinkGraph.h.

NodeArray<face> ogdf::FaceSinkGraph::m_originalFace [private]

original face in E

Definition at line 194 of file FaceSinkGraph.h.

NodeArray<bool> ogdf::FaceSinkGraph::m_containsSource [private]

contains face node the source ?

Definition at line 195 of file FaceSinkGraph.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:14 2007 by doxygen 1.5.4.