Default traits class of dijkstra() function.
GR | The type of the digraph. |
LEN | The type of the length map. |
#include <lemon/dijkstra.h>
Public Types | |
typedef GR | Digraph |
The type of the digraph the algorithm runs on. | |
typedef LEN | LengthMap |
The type of the map that stores the arc lengths. | |
typedef LEN::Value | Value |
The type of the length of the arcs. | |
typedef DijkstraDefaultOperationTraits < Value > | OperationTraits |
Operation traits for Dijkstra algorithm. | |
typedef Digraph::template NodeMap< int > | HeapCrossRef |
The cross reference type used by the heap. | |
typedef BinHeap< Value, typename Digraph::template NodeMap< int >, std::less < Value > > | Heap |
The heap type used by the Dijkstra algorithm. | |
typedef Digraph::template NodeMap< typename Digraph::Arc > | PredMap |
The type of the map that stores the predecessor arcs of the shortest paths. | |
typedef NullMap< typename Digraph::Node, bool > | ProcessedMap |
The type of the map that indicates which nodes are processed. | |
typedef Digraph::template NodeMap< typename LEN::Value > | DistMap |
The type of the map that stores the distances of the nodes. | |
typedef lemon::Path< Digraph > | Path |
The type of the shortest paths. | |
Static Public Member Functions | |
static HeapCrossRef * | createHeapCrossRef (const Digraph &g) |
Instantiates a HeapCrossRef. | |
static Heap * | createHeap (HeapCrossRef &r) |
Instantiates a Heap. | |
static PredMap * | createPredMap (const Digraph &g) |
Instantiates a PredMap. | |
static ProcessedMap * | createProcessedMap (const Digraph &g) |
Instantiates a ProcessedMap. | |
static DistMap * | createDistMap (const Digraph &g) |
Instantiates a DistMap. |
typedef LEN LengthMap |
The type of the map that stores the arc lengths. It must meet the ReadMap concept.
This class defines the operations that are used in the algorithm.
typedef Digraph::template NodeMap<int> HeapCrossRef |
The cross reference type used by the heap. Usually it is Digraph::NodeMap<int>
.
typedef Digraph::template NodeMap<typename Digraph::Arc> PredMap |
The type of the map that stores the predecessor arcs of the shortest paths. It must meet the WriteMap concept.
typedef NullMap<typename Digraph::Node,bool> ProcessedMap |
typedef Digraph::template NodeMap<typename LEN::Value> DistMap |
The type of the map that stores the distances of the nodes. It must meet the WriteMap concept.
typedef lemon::Path<Digraph> Path |
The type of the shortest paths. It must meet the Path concept.
static HeapCrossRef* createHeapCrossRef | ( | const Digraph & | g | ) | [inline, static] |
This function instantiates a HeapCrossRef.
g | is the digraph, to which we would like to define the HeapCrossRef. |
static Heap* createHeap | ( | HeapCrossRef & | r | ) | [inline, static] |
This function instantiates a Heap.
r | is the HeapCrossRef which is used. |
This function instantiates a PredMap.
g | is the digraph, to which we would like to define the PredMap. |
static ProcessedMap* createProcessedMap | ( | const Digraph & | g | ) | [inline, static] |
This function instantiates a ProcessedMap.
g | is the digraph, to which we would like to define the ProcessedMap. |