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

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

public class InLayerConstraintProcessor
extends AbstractAlgorithm
implements ILayoutProcessor

Makes sure that in-layer constraints are respected. This processor is only necessary if a crossing minimizer doesn't support in-layer constraints anyway. Crossing minimizers that do shouldn't include a dependency on this processor. It would need time without actually doing anything worthwhile.

Please note that, among top- and bottom-placed nodes, in-layer successor constraints are not respected by this processor. It does, however, preserve them if the crossing reduction phase did respect them.

Precondition:
a layered graph; crossing minimization is already finished.
Postcondition:
nodes may have been reordered to match in-layer constraints.
Slots:
Before phase 4.
Same-slot dependencies:
None.

Rating red

Constructor Summary
InLayerConstraintProcessor()
           
 
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

InLayerConstraintProcessor

public InLayerConstraintProcessor()
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