All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
List of all members
Preflow< GR, CAP, TR >::SetStandardElevator< T > Struct Template Reference

Detailed Description

template<typename GR, typename CAP, typename TR>
template<typename T>
struct lemon::Preflow< GR, CAP, TR >::SetStandardElevator< T >

Named parameter for setting Elevator type with automatic allocation. The Elevator should have standard constructor interface to be able to automatically created by the algorithm (i.e. the digraph and the maximum level should be passed to it). However an external elevator object could also be passed to the algorithm with the elevator() function before calling run() or init().

See Also
SetElevator

#include <lemon/preflow.h>

+ Inheritance diagram for Preflow< GR, CAP, TR >::SetStandardElevator< T >:

Additional Inherited Members

- Public Types inherited from Preflow< Digraph, CapacityMap, SetStandardElevatorTraits< T > >
typedef
SetStandardElevatorTraits< T > 
Traits
 The traits class of the algorithm.
 
typedef Traits::Digraph Digraph
 The type of the digraph the algorithm runs on.
 
typedef Traits::CapacityMap CapacityMap
 The type of the capacity map.
 
typedef Traits::Value Value
 The type of the flow values.
 
typedef Traits::FlowMap FlowMap
 The type of the flow map.
 
typedef Traits::Elevator Elevator
 The type of the elevator.
 
typedef Traits::Tolerance Tolerance
 The type of the tolerance.
 
- Public Member Functions inherited from Preflow< Digraph, CapacityMap, SetStandardElevatorTraits< T > >
 Preflow (const Digraph &digraph, const CapacityMap &capacity, Node source, Node target)
 The constructor of the class.
 
 ~Preflow ()
 
PreflowcapacityMap (const CapacityMap &map)
 Sets the capacity map.
 
PreflowflowMap (FlowMap &map)
 Sets the flow map.
 
Preflowsource (const Node &node)
 Sets the source node.
 
Preflowtarget (const Node &node)
 Sets the target node.
 
Preflowelevator (Elevator &elevator)
 Sets the elevator used by algorithm.
 
const Elevatorelevator () const
 Returns a const reference to the elevator.
 
Preflowtolerance (const Tolerance &tolerance)
 
const Tolerancetolerance () const
 
const FlowMapflowMap () const
 Returns a const reference to the flow map.
 
Value flowValue () const
 Returns the value of the maximum flow.
 
Value flow (const Arc &arc) const
 Returns the flow value on the given arc.
 
bool minCut (const Node &node) const
 Returns true when the node is on the source side of the minimum cut.
 
void minCutMap (CutMap &cutMap) const
 Gives back a minimum value cut.
 
void init ()
 Initializes the internal data structures.
 
bool init (const FlowMap &flowMap)
 Initializes the internal data structures using the given flow map.
 
void startFirstPhase ()
 Starts the first phase of the preflow algorithm.
 
void startSecondPhase ()
 Starts the second phase of the preflow algorithm.
 
void run ()
 Runs the preflow algorithm.
 
void runMinCut ()
 Runs the preflow algorithm to compute the minimum cut.