My Project
List of all members
Suurballe< GR, LEN, TR >::SetHeap< H, CR > Struct Template Reference

Detailed Description

template<typename GR, typename LEN, typename TR>
template<typename H, typename CR = typename Digraph::template NodeMap<int>>
struct lemon::Suurballe< GR, LEN, TR >::SetHeap< H, CR >

Named parameter for setting Heap and HeapCrossRef types with automatic allocation. They will be used for internal Dijkstra computations. The heap type must conform to the Heap concept and its priority type must be Length.

#include <lemon/suurballe.h>

+ Inheritance diagram for Suurballe< GR, LEN, TR >::SetHeap< H, CR >:

Additional Inherited Members

- Public Types inherited from Suurballe< GR, LEN, SetHeapTraits< H, typename Digraph::template NodeMap< int > > >
typedef TR::Digraph Digraph
 The type of the digraph.
 
typedef TR::LengthMap LengthMap
 The type of the length map.
 
typedef TR::Length Length
 The type of the lengths.
 
typedef TR::FlowMap FlowMap
 The type of the flow map.
 
typedef TR::PotentialMap PotentialMap
 The type of the potential map.
 
typedef TR::Path Path
 The type of the path structures.
 
typedef TR::HeapCrossRef HeapCrossRef
 The cross reference type used for the heap.
 
typedef TR::Heap Heap
 The heap type used for internal Dijkstra computations.
 
typedef SetHeapTraits< H, typename Digraph::template NodeMap< int > > Traits
 The traits class of the algorithm.
 
- Public Member Functions inherited from Suurballe< GR, LEN, SetHeapTraits< H, typename Digraph::template NodeMap< int > > >
 Suurballe (const Digraph &graph, const LengthMap &length)
 Constructor. More...
 
 ~Suurballe ()
 Destructor.
 
SuurballeflowMap (FlowMap &map)
 Set the flow map. More...
 
SuurballepotentialMap (PotentialMap &map)
 Set the potential map. More...
 
const FlowMapflowMap () const
 Return a const reference to an arc map storing the found flow. More...
 
const PotentialMappotentialMap () const
 Return a const reference to a node map storing the found potentials (the dual solution). More...
 
Length totalLength () const
 Return the total length of the found paths. More...
 
int flow (const Arc &arc) const
 Return the flow value on the given arc. More...
 
Length potential (const Node &node) const
 Return the potential of the given node. More...
 
int pathNum () const
 Return the number of the found paths. More...
 
const Pathpath (int i) const
 Return a const reference to the specified path. More...
 
int run (const Node &s, const Node &t, int k=2)
 Run the algorithm. More...
 
void init (const Node &s)
 Initialize the algorithm. More...
 
void fullInit (const Node &s)
 Initialize the algorithm and perform Dijkstra. More...
 
int start (const Node &t, int k=2)
 Execute the algorithm. More...
 
int findFlow (const Node &t, int k=2)
 Execute the algorithm to find an optimal flow. More...
 
void findPaths ()
 Compute the paths from the flow. More...