de.cau.cs.kieler.kiml.grana.analyses
Class BendsAnalysis

java.lang.Object
  extended by de.cau.cs.kieler.kiml.grana.analyses.BendsAnalysis
All Implemented Interfaces:
IAnalysis

public class BendsAnalysis
extends Object
implements IAnalysis

A graph analysis that counts the number of bendpoints. Returns a four-component result (int min, float avg, int max, int sum).

The analysis collects all bend points and eliminates duplicates. This makes sense for orthogonally routed hyperedges, but may miss a bend point if two completely unrelated edges share a bend point. However, this case is very unlikely and wouldn't make sense in a proper diagram anyway, so we live with not counting it.

Rating red

Constructor Summary
BendsAnalysis()
           
 
Method Summary
 Object doAnalysis(KNode parentNode, Map<String,Object> results, IKielerProgressMonitor progressMonitor)
          Performs the actual analysis process and returns the results.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BendsAnalysis

public BendsAnalysis()
Method Detail

doAnalysis

public Object doAnalysis(KNode parentNode,
                         Map<String,Object> results,
                         IKielerProgressMonitor progressMonitor)
Performs the actual analysis process and returns the results. If more than one component have been specified for the analysis in the extension the method is expected to return an array.

Specified by:
doAnalysis in interface IAnalysis
Parameters:
parentNode - the parent node which the analysis is performed on
results - the result of analyses that were performed before this one (it should include the results of all dependency analyses)
progressMonitor - progress monitor used to keep track of progress
Returns:
the analysis results