de.cau.cs.kieler.kiml
Class RecursiveGraphLayoutEngine

java.lang.Object
  extended by de.cau.cs.kieler.kiml.RecursiveGraphLayoutEngine
All Implemented Interfaces:
IGraphLayoutEngine

public class RecursiveGraphLayoutEngine
extends Object
implements IGraphLayoutEngine

Performs layout in a graph with hierarchy by executing a layout algorithm on each level of the hierarchy. This is done recursively from the leafs to the root of the nodes in the graph, using size information from lower levels in the levels above. If an exception occurs, #getLastLayoutProvider() can be used to get more information about the algorithm that caused the exception.

Rating yellow
(2011-03-14) reviewed by cmot, cds

Constructor Summary
RecursiveGraphLayoutEngine()
           
 
Method Summary
 boolean isActive()
          Determine whether the layout engine is active.
 void layout(KNode layoutGraph, IKielerProgressMonitor progressMonitor)
          Performs recursive layout on the given layout graph.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RecursiveGraphLayoutEngine

public RecursiveGraphLayoutEngine()
Method Detail

layout

public void layout(KNode layoutGraph,
                   IKielerProgressMonitor progressMonitor)
Performs recursive layout on the given layout graph. Layout is not only performed for the selected node, but also for its ancestors, if there are any.

Specified by:
layout in interface IGraphLayoutEngine
Parameters:
layoutGraph - instance of a layout graph
progressMonitor - monitor to which progress of the layout algorithms is reported

isActive

public boolean isActive()
Determine whether the layout engine is active.

Specified by:
isActive in interface IGraphLayoutEngine
Returns:
true if the engine is active