Open
Graph Drawing
Framework

 v.2007.11
 

ogdf::ExtendedNestingGraph Class Reference

#include <ExtendedNestingGraph.h>

Inheritance diagram for ogdf::ExtendedNestingGraph:

ogdf::Graph

List of all members.

Public Types

enum  NodeType {
  ntNode, ntClusterTop, ntClusterBottom, ntDummy,
  ntClusterTopBottom
}
 The type of nodes. More...

Public Member Functions

 ExtendedNestingGraph (const ClusterGraph &CG)
const ClusterGraphCopygetClusterGraph () const
const ClusterGraphgetOriginalClusterGraph () const
node copy (node v) const
node top (cluster cOrig) const
node bottom (cluster cOrig) const
int topRank (cluster c) const
int bottomRank (cluster c) const
NodeType type (node v) const
node origNode (node v) const
edge origEdge (edge e) const
cluster originalCluster (node v) const
cluster parent (node v) const
cluster parent (cluster c) const
bool isVirtual (cluster c) const
const List< edge > & chain (edge e) const
bool isReversed (edge e) const
bool isLongEdgeDummy (node v) const
bool verticalSegment (edge e) const
int numberOfLayers () const
int rank (node v) const
int pos (node v) const
const LHTreeNodelayerHierarchyTree (int i) const
const ENGLayerlayer (int i) const
RCCrossings reduceCrossings (int i, bool dirTopDown)
void storeCurrentPos ()
void restorePos ()
void permute ()
void removeTopBottomEdges ()
int aeLevel (node v) const

Protected Member Functions

cluster lca (node u, node v) const
LHTreeNodelca (LHTreeNode *uNode, LHTreeNode *vNode, LHTreeNode **uChild, LHTreeNode **vChild) const
edge addEdge (node u, node v, bool addAlways=false)
void assignAeLevel (cluster c, int &count)
bool reachable (node v, node u, SListPure< node > &successors)
bool tryEdge (node u, node v, Graph &G, NodeArray< int > &level)
RCCrossings reduceCrossings (LHTreeNode *cNode, bool dirTopDown)
void assignPos (const LHTreeNode *vNode, int &count)

Private Member Functions

void computeRanking ()
void createDummyNodes ()
void createVirtualClusters ()
void createVirtualClusters (cluster c, NodeArray< node > &vCopy, ClusterArray< node > &cCopy)
void buildLayers ()
void removeAuxNodes ()

Private Attributes

ClusterGraphCopy m_CGC
NodeArray< nodem_copy
NodeArray< nodem_origNode
ClusterArray< nodem_topNode
ClusterArray< nodem_bottomNode
ClusterArray< int > m_topRank
ClusterArray< int > m_bottomRank
NodeArray< NodeTypem_type
EdgeArray< List< edge > > m_copyEdge
EdgeArray< edgem_origEdge
NodeArray< int > m_rank
int m_numLayers
Array< ENGLayerm_layer
NodeArray< int > m_pos
EdgeArray< bool > m_vertical
NodeArray< int > m_aeLevel
NodeArray< bool > m_aeVisited
ClusterArray< clusterm_mark
SListPure< clusterm_markedClusters
cluster m_secondPath
node m_secondPathTo
SListPure< clusterm_markedClustersTree
ClusterArray< LHTreeNode * > m_markTree


Detailed Description

Definition at line 329 of file ExtendedNestingGraph.h.


Member Enumeration Documentation

enum ogdf::ExtendedNestingGraph::NodeType

The type of nodes.

Enumerator:
ntNode 
ntClusterTop 
ntClusterBottom 
ntDummy 
ntClusterTopBottom 

Reimplemented from ogdf::Graph.

Definition at line 333 of file ExtendedNestingGraph.h.


Constructor & Destructor Documentation

ogdf::ExtendedNestingGraph::ExtendedNestingGraph ( const ClusterGraph CG  ) 


Member Function Documentation

const ClusterGraphCopy& ogdf::ExtendedNestingGraph::getClusterGraph (  )  const [inline]

Definition at line 337 of file ExtendedNestingGraph.h.

const ClusterGraph& ogdf::ExtendedNestingGraph::getOriginalClusterGraph (  )  const [inline]

Definition at line 338 of file ExtendedNestingGraph.h.

node ogdf::ExtendedNestingGraph::copy ( node  v  )  const [inline]

Definition at line 340 of file ExtendedNestingGraph.h.

node ogdf::ExtendedNestingGraph::top ( cluster  cOrig  )  const [inline]

Definition at line 341 of file ExtendedNestingGraph.h.

node ogdf::ExtendedNestingGraph::bottom ( cluster  cOrig  )  const [inline]

Definition at line 342 of file ExtendedNestingGraph.h.

int ogdf::ExtendedNestingGraph::topRank ( cluster  c  )  const [inline]

Definition at line 344 of file ExtendedNestingGraph.h.

int ogdf::ExtendedNestingGraph::bottomRank ( cluster  c  )  const [inline]

Definition at line 345 of file ExtendedNestingGraph.h.

NodeType ogdf::ExtendedNestingGraph::type ( node  v  )  const [inline]

Definition at line 348 of file ExtendedNestingGraph.h.

node ogdf::ExtendedNestingGraph::origNode ( node  v  )  const [inline]

Definition at line 349 of file ExtendedNestingGraph.h.

edge ogdf::ExtendedNestingGraph::origEdge ( edge  e  )  const [inline]

Definition at line 350 of file ExtendedNestingGraph.h.

cluster ogdf::ExtendedNestingGraph::originalCluster ( node  v  )  const [inline]

Definition at line 352 of file ExtendedNestingGraph.h.

cluster ogdf::ExtendedNestingGraph::parent ( node  v  )  const [inline]

Definition at line 353 of file ExtendedNestingGraph.h.

cluster ogdf::ExtendedNestingGraph::parent ( cluster  c  )  const [inline]

Definition at line 354 of file ExtendedNestingGraph.h.

bool ogdf::ExtendedNestingGraph::isVirtual ( cluster  c  )  const [inline]

Definition at line 355 of file ExtendedNestingGraph.h.

const List<edge>& ogdf::ExtendedNestingGraph::chain ( edge  e  )  const [inline]

Definition at line 357 of file ExtendedNestingGraph.h.

bool ogdf::ExtendedNestingGraph::isReversed ( edge  e  )  const [inline]

Definition at line 360 of file ExtendedNestingGraph.h.

bool ogdf::ExtendedNestingGraph::isLongEdgeDummy ( node  v  )  const [inline]

Definition at line 364 of file ExtendedNestingGraph.h.

bool ogdf::ExtendedNestingGraph::verticalSegment ( edge  e  )  const [inline]

Definition at line 368 of file ExtendedNestingGraph.h.

int ogdf::ExtendedNestingGraph::numberOfLayers (  )  const [inline]

Definition at line 370 of file ExtendedNestingGraph.h.

int ogdf::ExtendedNestingGraph::rank ( node  v  )  const [inline]

Definition at line 371 of file ExtendedNestingGraph.h.

int ogdf::ExtendedNestingGraph::pos ( node  v  )  const [inline]

Definition at line 372 of file ExtendedNestingGraph.h.

const LHTreeNode* ogdf::ExtendedNestingGraph::layerHierarchyTree ( int  i  )  const [inline]

Definition at line 373 of file ExtendedNestingGraph.h.

const ENGLayer& ogdf::ExtendedNestingGraph::layer ( int  i  )  const [inline]

Definition at line 374 of file ExtendedNestingGraph.h.

RCCrossings ogdf::ExtendedNestingGraph::reduceCrossings ( int  i,
bool  dirTopDown 
)

void ogdf::ExtendedNestingGraph::storeCurrentPos (  ) 

void ogdf::ExtendedNestingGraph::restorePos (  ) 

void ogdf::ExtendedNestingGraph::permute (  ) 

void ogdf::ExtendedNestingGraph::removeTopBottomEdges (  ) 

int ogdf::ExtendedNestingGraph::aeLevel ( node  v  )  const [inline]

Definition at line 383 of file ExtendedNestingGraph.h.

cluster ogdf::ExtendedNestingGraph::lca ( node  u,
node  v 
) const [protected]

LHTreeNode* ogdf::ExtendedNestingGraph::lca ( LHTreeNode uNode,
LHTreeNode vNode,
LHTreeNode **  uChild,
LHTreeNode **  vChild 
) const [protected]

edge ogdf::ExtendedNestingGraph::addEdge ( node  u,
node  v,
bool  addAlways = false 
) [protected]

void ogdf::ExtendedNestingGraph::assignAeLevel ( cluster  c,
int &  count 
) [protected]

bool ogdf::ExtendedNestingGraph::reachable ( node  v,
node  u,
SListPure< node > &  successors 
) [protected]

bool ogdf::ExtendedNestingGraph::tryEdge ( node  u,
node  v,
Graph G,
NodeArray< int > &  level 
) [protected]

RCCrossings ogdf::ExtendedNestingGraph::reduceCrossings ( LHTreeNode cNode,
bool  dirTopDown 
) [protected]

void ogdf::ExtendedNestingGraph::assignPos ( const LHTreeNode vNode,
int &  count 
) [protected]

void ogdf::ExtendedNestingGraph::computeRanking (  )  [private]

void ogdf::ExtendedNestingGraph::createDummyNodes (  )  [private]

void ogdf::ExtendedNestingGraph::createVirtualClusters (  )  [private]

void ogdf::ExtendedNestingGraph::createVirtualClusters ( cluster  c,
NodeArray< node > &  vCopy,
ClusterArray< node > &  cCopy 
) [private]

void ogdf::ExtendedNestingGraph::buildLayers (  )  [private]

void ogdf::ExtendedNestingGraph::removeAuxNodes (  )  [private]


Member Data Documentation

ClusterGraphCopy ogdf::ExtendedNestingGraph::m_CGC [private]

Definition at line 414 of file ExtendedNestingGraph.h.

NodeArray<node> ogdf::ExtendedNestingGraph::m_copy [private]

Definition at line 417 of file ExtendedNestingGraph.h.

NodeArray<node> ogdf::ExtendedNestingGraph::m_origNode [private]

Definition at line 418 of file ExtendedNestingGraph.h.

ClusterArray<node> ogdf::ExtendedNestingGraph::m_topNode [private]

Definition at line 421 of file ExtendedNestingGraph.h.

ClusterArray<node> ogdf::ExtendedNestingGraph::m_bottomNode [private]

Definition at line 422 of file ExtendedNestingGraph.h.

ClusterArray<int> ogdf::ExtendedNestingGraph::m_topRank [private]

Definition at line 423 of file ExtendedNestingGraph.h.

ClusterArray<int> ogdf::ExtendedNestingGraph::m_bottomRank [private]

Definition at line 424 of file ExtendedNestingGraph.h.

NodeArray<NodeType> ogdf::ExtendedNestingGraph::m_type [private]

Definition at line 427 of file ExtendedNestingGraph.h.

EdgeArray<List<edge> > ogdf::ExtendedNestingGraph::m_copyEdge [private]

Definition at line 430 of file ExtendedNestingGraph.h.

EdgeArray<edge> ogdf::ExtendedNestingGraph::m_origEdge [private]

Definition at line 431 of file ExtendedNestingGraph.h.

NodeArray<int> ogdf::ExtendedNestingGraph::m_rank [private]

Definition at line 434 of file ExtendedNestingGraph.h.

int ogdf::ExtendedNestingGraph::m_numLayers [private]

Definition at line 435 of file ExtendedNestingGraph.h.

Array<ENGLayer> ogdf::ExtendedNestingGraph::m_layer [private]

Definition at line 438 of file ExtendedNestingGraph.h.

NodeArray<int> ogdf::ExtendedNestingGraph::m_pos [private]

Definition at line 440 of file ExtendedNestingGraph.h.

EdgeArray<bool> ogdf::ExtendedNestingGraph::m_vertical [private]

Definition at line 443 of file ExtendedNestingGraph.h.

NodeArray<int> ogdf::ExtendedNestingGraph::m_aeLevel [private]

Definition at line 446 of file ExtendedNestingGraph.h.

NodeArray<bool> ogdf::ExtendedNestingGraph::m_aeVisited [private]

Definition at line 447 of file ExtendedNestingGraph.h.

ClusterArray<cluster> ogdf::ExtendedNestingGraph::m_mark [mutable, private]

Definition at line 450 of file ExtendedNestingGraph.h.

SListPure<cluster> ogdf::ExtendedNestingGraph::m_markedClusters [mutable, private]

Definition at line 451 of file ExtendedNestingGraph.h.

cluster ogdf::ExtendedNestingGraph::m_secondPath [mutable, private]

Definition at line 452 of file ExtendedNestingGraph.h.

node ogdf::ExtendedNestingGraph::m_secondPathTo [mutable, private]

Definition at line 453 of file ExtendedNestingGraph.h.

SListPure<cluster> ogdf::ExtendedNestingGraph::m_markedClustersTree [mutable, private]

Definition at line 454 of file ExtendedNestingGraph.h.

ClusterArray<LHTreeNode*> ogdf::ExtendedNestingGraph::m_markTree [mutable, private]

Definition at line 455 of file ExtendedNestingGraph.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:12 2007 by doxygen 1.5.4.