DijkstraWizardDefaultTraits< GR, LM > Struct Template Reference


Detailed Description

template<class GR, class LM>
struct lemon::DijkstraWizardDefaultTraits< GR, LM >

Default traits class of Dijkstra function.
Parameters:
GR Graph type.
LM Type of length map.
#include <lemon/dijkstra.h>

List of all members.

Public Types

typedef GR Graph
 The graph type the algorithm runs on.
typedef LM LengthMap
 The type of the map that stores the edge lengths.
typedef
DijkstraDefaultOperationTraits
< Value > 
OperationTraits
 Operation traits for Dijkstra algorithm.
typedef Graph::template
NodeMap< int > 
HeapCrossRef
 The heap type used by Dijkstra algorithm.
typedef BinHeap< typename
LM::Value, typename
GR::template NodeMap< int >
, std::less< Value > > 
Heap
 The heap type used by Dijkstra algorithm.
typedef NullMap< typename
GR::Node, typename GR::Edge > 
PredMap
 The type of the map that stores the last edges of the shortest paths.
typedef NullMap< typename
Graph::Node, bool > 
ProcessedMap
 The type of the map that stores whether a nodes is processed.
typedef NullMap< typename
Graph::Node, typename
LM::Value > 
DistMap
 The type of the map that stores the dists of the nodes.

Static Public Member Functions

static HeapCrossRefcreateHeapCrossRef (const GR &G)
 Instantiates a HeapCrossRef.
static PredMapcreatePredMap (const GR &g)
 Instantiates a PredMap.
static ProcessedMapcreateProcessedMap (const GR &g)
 Instantiates a ProcessedMap.
static DistMapcreateDistMap (const GR &g)
 Instantiates a DistMap.


Member Typedef Documentation

typedef LM LengthMap

The type of the map that stores the edge lengths. It must meet the ReadMap concept.

It defines the used operation by the algorithm.

See also:
DijkstraDefaultOperationTraits

typedef Graph::template NodeMap<int> HeapCrossRef

The cross reference type used by heap. The cross reference type used by heap. Usually it is Graph::NodeMap<int>.

typedef BinHeap<typename LM::Value, typename GR::template NodeMap<int>, std::less<Value> > Heap

The heap type used by Dijkstra algorithm.

See also:
BinHeap

Dijkstra

typedef NullMap<typename GR::Node,typename GR::Edge> PredMap

The type of the map that stores the last edges of the shortest paths. It must meet the WriteMap concept.

typedef NullMap<typename Graph::Node,bool> ProcessedMap

The type of the map that stores whether a nodes is processed. It must meet the WriteMap concept. By default it is a NullMap.

Todo:
If it is set to a real map, Dijkstra::processed() should read this.

named parameter to set this type, function to read and write.

typedef NullMap<typename Graph::Node,typename LM::Value> DistMap

The type of the map that stores the dists of the nodes. It must meet the WriteMap concept.


Member Function Documentation

static HeapCrossRef* createHeapCrossRef ( const GR &  G  )  [inline, static]

This function instantiates a HeapCrossRef.

Parameters:
G is the graph, to which we would like to define the HeapCrossRef.
Todo:
The graph alone may be insufficient for the initialization

static PredMap* createPredMap ( const GR &  g  )  [inline, static]

This function instantiates a PredMap.

Parameters:
g is the graph, to which we would like to define the PredMap.
Todo:
The graph alone may be insufficient for the initialization

static ProcessedMap* createProcessedMap ( const GR &  g  )  [inline, static]

This function instantiates a ProcessedMap.

Parameters:
g is the graph, to which we would like to define the ProcessedMap

static DistMap* createDistMap ( const GR &  g  )  [inline, static]

This function instantiates a DistMap.

Parameters:
g is the graph, to which we would like to define the DistMap


Generated on Thu Jun 4 04:04:02 2009 for LEMON by  doxygen 1.5.9