net.sourceforge.combean.interfaces.graph.alg
Interface GraphAlgorithm

Package class diagram package GraphAlgorithm
All Known Subinterfaces:
AbstractFlowAlg, BreadthFirstSearch, CycleInPredMapDetectionAlg, DepthFirstSearch, FeasibleFlowAlg, GraphTraversalAlg, MaxFlowAlg, MinCostFlowAlg, MulticommodityMinCostFlowAlg, NegativeCycleDetectionAlg<NumType>, PartitioningAlg, ShortestPathAlg<NumType>, SingleSourceShortestPathAlg<NumType>, SingleSourceShortestPathWithNegCycleDetectionAlg<NumType>, StronglyConnectedComponentsAlg
All Known Implementing Classes:
AbstractAugmentingPathAlg, AbstractGraphAlg, AbstractGraphTraversalAlg, AbstractLabellingAlg, AbstractSCCImpl, AugmentingPathBySimpleTraversalAlg, BellmanFordAlg, BellmanFordWithNegCycleDetectionAlg, BreadthFirstSearchImpl, CycleInPredMapByDoubleTraversalDetectionAlg, FindPathByTraversalAlg, MinCostFlowByLPAlg, MulticommodityMinCostFlowByLPAlg, RecursiveDFSImpl, SCCByDFSImpl, SCCByDoubleDFSImpl

public interface GraphAlgorithm

The base interface for all graph algorithms.


Method Summary
 Graph getGraph()
           
 void run()
          Execute the algorithm.
 void setGraph(Graph g)
          Set the graph on which the algorithm shall work.
 

Method Detail

setGraph

void setGraph(Graph g)
              throws UnsupportedGraphProperty
Set the graph on which the algorithm shall work.

Parameters:
g - the graph
Throws:
UnsupportedGraphProperty - thrown if g does not have all properties required by the algorithm.

getGraph

Graph getGraph()
Returns:
the graph on which the algorithm works.

run

void run()
Execute the algorithm.