de.cau.cs.kieler.klay.layered.intermediate
Class CompoundGraphRestorer

java.lang.Object
  extended by de.cau.cs.kieler.core.alg.AbstractAlgorithm
      extended by de.cau.cs.kieler.klay.layered.intermediate.CompoundGraphRestorer
All Implemented Interfaces:
IAlgorithm, ILayoutProcessor

public class CompoundGraphRestorer
extends AbstractAlgorithm
implements ILayoutProcessor

Removes all dummy edges and dummy nodes apart from upper compound border dummies from the LayeredGraph. Determines positioning and size of the compound nodes according to the positioning of their dummy nodes. The compound nodes are represented by their compound border dummies. Connects edges to the dummy nodes respecting the positioning of the dummy nodes for ports of the original node.

Precondition:
A layered graph with fixed node positioning and edge routing. Long edges are joined.
Postcondition:
The layered graph contains no more compound side or compound port dummy nodes and no compound dummy or compound side edges either. Position and size for each compound node is set. Edges to/from compound nodes are set.
Slots:
After phase 5.
Same-slot dependencies:
LongEdgeJoiner.

Rating red

Constructor Summary
CompoundGraphRestorer()
           
 
Method Summary
 void process(LayeredGraph layeredGraph)
          Performs the phase's work on the given graph.
 
Methods inherited from class de.cau.cs.kieler.core.alg.AbstractAlgorithm
getMonitor, reset, reset, setProgressMonitor
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.cau.cs.kieler.core.alg.IAlgorithm
reset, reset, setProgressMonitor
 

Constructor Detail

CompoundGraphRestorer

public CompoundGraphRestorer()
Method Detail

process

public void process(LayeredGraph layeredGraph)
Performs the phase's work on the given graph.

Specified by:
process in interface ILayoutProcessor
Parameters:
layeredGraph - a layered graph