Loading...
Searching...
No Matches
BellmanFord< GR, LEN, TR >::SetDistMap< T > Struct Template Reference

## Detailed Description

template<typename GR, typename LEN, typename TR>
template<class T>
struct lemon::BellmanFord< GR, LEN, TR >::SetDistMap< T >

Named parameter for setting `DistMap` type. It must conform to the WriteMap concept.

`#include <lemon/bellman_ford.h>`

Inheritance diagram for BellmanFord< GR, LEN, TR >::SetDistMap< T >:
[legend]

## Additional Inherited Members

Public Types inherited from BellmanFord< Digraph, LengthMap, SetDistMapTraits< T > >
typedef SetDistMapTraits< T >::Digraph | Digraph
| The type of the underlying digraph.
typedef SetDistMapTraits< T >::LengthMap::Value | Value
| The type of the arc lengths.
typedef SetDistMapTraits< T >::LengthMap | LengthMap
| The type of the map that stores the arc lengths.
typedef SetDistMapTraits< T >::PredMap | PredMap
| The type of the map that stores the last arcs of the shortest paths.
typedef SetDistMapTraits< T >::DistMap | DistMap
| The type of the map that stores the distances of the nodes.
typedef PredMapPath< Digraph, PredMap > | Path
| The type of the paths.
typedef SetDistMapTraits< T >::OperationTraits | OperationTraits
| The operation traits class of the algorithm.
typedef SetDistMapTraits< T > | Traits
| The traits class of the algorithm.
Public Member Functions inherited from BellmanFord< Digraph, LengthMap, SetDistMapTraits< T > >
| BellmanFord (const Digraph &g, const LengthMap &length)
| Constructor.
| ~BellmanFord ()
| Destructor.
BellmanFord & | lengthMap (const LengthMap &map)
| Sets the length map.
BellmanFord & | predMap (PredMap &map)
| Sets the map that stores the predecessor arcs.
BellmanFord & | distMap (DistMap &map)
| Sets the map that stores the distances of the nodes.
void | init (const Value value=OperationTraits::infinity())
| Initializes the internal data structures.
void | addSource (Node source, Value dst=OperationTraits::zero())
| Adds a new source node.
bool | processNextRound ()
| Executes one round from the Bellman-Ford algorithm.
bool | processNextWeakRound ()
| Executes one weak round from the Bellman-Ford algorithm.
void | start ()
| Executes the algorithm.
bool | checkedStart ()
| Executes the algorithm and checks the negative cycles.
void | limitedStart (int num)
| Executes the algorithm with arc number limit.
void | run (Node s)
| Runs the algorithm from the given root node.
void | run (Node s, int num)
| Runs the algorithm from the given root node with arc number limit.
Path | path (Node t) const
| The shortest path to the given node.
Value | dist (Node v) const
| The distance of the given node from the root(s).
Arc | predArc (Node v) const
| Returns the 'previous arc' of the shortest path tree for the given node.
Node | predNode (Node v) const
| Returns the 'previous node' of the shortest path tree for the given node.
const DistMap & | distMap () const
| Returns a const reference to the node map that stores the distances of the nodes.
const PredMap & | predMap () const
| Returns a const reference to the node map that stores the predecessor arcs.
bool | reached (Node v) const
| Checks if a node is reached from the root(s).
lemon::Path< Digraph > | negativeCycle () const
| Gives back a negative cycle.