Loading...
Searching...
No Matches
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 >:
[legend]

## 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 ()
| Destructor.
Preflow & | capacityMap (const CapacityMap &map)
| Sets the capacity map.
Preflow & | flowMap (FlowMap &map)
| Sets the flow map.
Preflow & | source (const Node &node)
| Sets the source node.
Preflow & | target (const Node &node)
| Sets the target node.
Preflow & | elevator (Elevator &elevator)
| Sets the elevator used by algorithm.
const Elevator & | elevator () const
| Returns a const reference to the elevator.
Preflow & | tolerance (const Tolerance &tolerance)
| Sets the tolerance used by the algorithm.
const Tolerance & | tolerance () const
| Returns a const reference to the tolerance.
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.
Value | flowValue () const
| Returns the value of the maximum flow.
Value | flow (const Arc &arc) const
| Returns the flow value on the given arc.
const FlowMap & | flowMap () const
| Returns a const reference to the flow map.
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.