Open
Graph Drawing
Framework

 v.2012.05
 

ogdf::LayerBasedUPRLayout Class Reference

#include <ogdf/upward/LayerBasedUPRLayout.h>

Inheritance diagram for ogdf::LayerBasedUPRLayout:
ogdf::UPRLayoutModule

List of all members.

Classes

struct  RankComparer

Public Member Functions

 LayerBasedUPRLayout ()
 ~LayerBasedUPRLayout ()
int numberOfCrossings () const
void setLayout (HierarchyLayoutModule *pLayout)
void setRanking (RankingModule *pRanking)
void UPRLayoutSimple (const UpwardPlanRep &UPR, GraphAttributes &AG)
 Use only the 3. phase of Sugiyama' framework for layout.
int numberOfLayers ()
 Return the number of layers/levels. Not implemented if use methode callSimple(..).
int maxLayerSize ()
 Return the max. number of elements on a layer. Not implemented if use methode callSimple(..).

Protected Member Functions

virtual void doCall (const UpwardPlanRep &UPR, GraphAttributes &AG)
 Implements the actual algorithm call.

Protected Attributes

int m_crossings
ModuleOption< RankingModulem_ranking
ModuleOption
< HierarchyLayoutModule
m_layout

Private Member Functions

void computeRanking (const UpwardPlanRep &UPR, NodeArray< int > &rank)
void postProcessing_sourceReorder (Hierarchy &H, List< node > &sources)
 rearanging the position of the sources in order to reduce some crossings.
void postProcessing_reduceLED (Hierarchy &H, List< node > &sources)
 reduce the long edge dummies (LED)
void postProcessing_reduceLED (Hierarchy &H, node vH)
void post_processing_reduce (Hierarchy &H, int &i, node s, int minIdx, int maxIdx, NodeArray< bool > &markedNodes)
void postProcessing_markUp (Hierarchy &H, node sH, NodeArray< bool > &markedNodes)
 mark all the nodes dominated by sH. (Help method for postProcessing_reduceLED() )
void post_processing_deleteLvl (Hierarchy &H, int i)
 delete level i of H.
void post_processing_deleteInterval (Hierarchy &H, int beginIdx, int endIdx, int &j)
 delete the interval [beginIdx,endIdx] on the level j.
void post_processing_CopyInterval (Hierarchy &H, int i, int beginIdx, int endIdx, int pos)
 insert the interval [beginIdx,endIdx] of level i-1 to level i at position pos.
void callSimple (GraphAttributes &AG, adjEntry adj)
void dfsSortLevels (adjEntry adj1, const NodeArray< int > &rank, Array< SListPure< node > > &nodes)
void longestPathRanking (const Graph &G, NodeArray< int > &rank)

Private Attributes

int m_numLevels
int m_maxLevelSize

Detailed Description

Definition at line 104 of file LayerBasedUPRLayout.h.


Constructor & Destructor Documentation


Member Function Documentation

void ogdf::LayerBasedUPRLayout::computeRanking ( const UpwardPlanRep UPR,
NodeArray< int > &  rank 
) [private]
void ogdf::LayerBasedUPRLayout::dfsSortLevels ( adjEntry  adj1,
const NodeArray< int > &  rank,
Array< SListPure< node > > &  nodes 
) [private]
virtual void ogdf::LayerBasedUPRLayout::doCall ( const UpwardPlanRep UPR,
GraphAttributes AG 
) [protected, virtual]

Implements the actual algorithm call.

Must be implemented by derived classes.

Parameters:
UPRis the upward planarized representation of the input graph. The original graph of UPR muss be the input graph.
AGhas to be assigned the hierarchy layout.

Implements ogdf::UPRLayoutModule.

void ogdf::LayerBasedUPRLayout::longestPathRanking ( const Graph G,
NodeArray< int > &  rank 
) [private]

Return the max. number of elements on a layer. Not implemented if use methode callSimple(..).

Definition at line 148 of file LayerBasedUPRLayout.h.

Definition at line 129 of file LayerBasedUPRLayout.h.

Return the number of layers/levels. Not implemented if use methode callSimple(..).

Definition at line 145 of file LayerBasedUPRLayout.h.

void ogdf::LayerBasedUPRLayout::post_processing_CopyInterval ( Hierarchy H,
int  i,
int  beginIdx,
int  endIdx,
int  pos 
) [private]

insert the interval [beginIdx,endIdx] of level i-1 to level i at position pos.

void ogdf::LayerBasedUPRLayout::post_processing_deleteInterval ( Hierarchy H,
int  beginIdx,
int  endIdx,
int &  j 
) [private]

delete the interval [beginIdx,endIdx] on the level j.

delete level i of H.

void ogdf::LayerBasedUPRLayout::post_processing_reduce ( Hierarchy H,
int &  i,
node  s,
int  minIdx,
int  maxIdx,
NodeArray< bool > &  markedNodes 
) [private]
void ogdf::LayerBasedUPRLayout::postProcessing_markUp ( Hierarchy H,
node  sH,
NodeArray< bool > &  markedNodes 
) [private]

mark all the nodes dominated by sH. (Help method for postProcessing_reduceLED() )

void ogdf::LayerBasedUPRLayout::postProcessing_reduceLED ( Hierarchy H,
List< node > &  sources 
) [inline, private]

reduce the long edge dummies (LED)

Definition at line 185 of file LayerBasedUPRLayout.h.

void ogdf::LayerBasedUPRLayout::postProcessing_sourceReorder ( Hierarchy H,
List< node > &  sources 
) [private]

rearanging the position of the sources in order to reduce some crossings.

Definition at line 132 of file LayerBasedUPRLayout.h.

Definition at line 137 of file LayerBasedUPRLayout.h.

Use only the 3. phase of Sugiyama' framework for layout.


Member Data Documentation

Definition at line 158 of file LayerBasedUPRLayout.h.

Definition at line 208 of file LayerBasedUPRLayout.h.

Definition at line 207 of file LayerBasedUPRLayout.h.


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