- Type Parameters:
 V- the graph vertex typeE- the graph edge type
- All Known Subinterfaces:
 MaximumFlowAlgorithm<V,,E> MinimumCostFlowAlgorithm<V,E> 
- All Known Implementing Classes:
 BoykovKolmogorovMFImpl,CapacityScalingMinimumCostFlow,DinicMFImpl,EdmondsKarpMFImpl,GusfieldEquivalentFlowTree,GusfieldGomoryHuCutTree,MaximumFlowAlgorithmBase,PushRelabelMFImpl
public interface FlowAlgorithm<V,E> 
Interface for flow algorithms
- Author:
 - Joris Kinable
 
- 
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceRepresents a flow.static classDefault implementation ofFlowAlgorithm.Flow - 
Method Summary
Modifier and TypeMethodDescriptiondefault FlowAlgorithm.Flow<E>getFlow()Result object of a flow algorithmgetFlowDirection(E edge) For the specifiededge$(u, v)$ returns vertex $v$ if the flow goes from $u$ to $v$, or returns vertex $u$ otherwise.Returns a read-only mapping from edges to the corresponding flow values. 
- 
Method Details
- 
getFlow
Result object of a flow algorithm- Returns:
 - flow
 
 - 
getFlowMap
Returns a read-only mapping from edges to the corresponding flow values.- Returns:
 - a read-only mapping from edges to the corresponding flow values.
 
 - 
getFlowDirection
For the specifiededge$(u, v)$ returns vertex $v$ if the flow goes from $u$ to $v$, or returns vertex $u$ otherwise. For directed flow networks the result is always the head of the specified arc.Note: not all flow algorithms may support undirected graphs.
- Parameters:
 edge- an edge from the specified flow network- Returns:
 - the direction of the flow on the 
edge 
 
 -