#include <lemon/bfs.h>
Simplicity means that the way to change the types defined in the traits class is based on functions that returns the new class and not on templatable built-in classes. When using the plain Bfs the new class with the modified type comes from the original class by using the :: operator. In the case of BfsWizard only a function have to be called and it will return the needed class.
It does not have own run method. When its run method is called it initiates a plain Bfs class, and calls the Bfs::run method of it.
Public Member Functions | |
BfsWizard () | |
Constructor. | |
BfsWizard (const Graph &g, Node s=INVALID) | |
Constructor that requires parameters. | |
BfsWizard (const TR &b) | |
Copy constructor. | |
void | run () |
Runs Bfs algorithm from a given node. | |
void | run (Node s) |
Runs Bfs algorithm from the given node. | |
template<class T> | |
BfsWizard< DefPredMapBase< T > > | predMap (const T &t) |
Named parameter function for setting PredMap | |
template<class T> | |
BfsWizard< DefReachedMapBase< T > > | reachedMap (const T &t) |
Named parameter function for setting ReachedMap | |
template<class T> | |
BfsWizard< DefProcessedMapBase< T > > | processedMap (const T &t) |
Named parameter function for setting ProcessedMap | |
template<class T> | |
BfsWizard< DefDistMapBase< T > > | distMap (const T &t) |
Named parameter function for setting DistMap type | |
BfsWizard< TR > & | source (Node s) |
Sets the source node, from which the Bfs algorithm runs. |
|
Constructor that requires parameters. These parameters will be the default values for the traits class. |
|
Runs Bfs algorithm from a given node. The node can be given by the source function. |
|
Runs Bfs algorithm from the given node.
|
|
Named parameter function for setting PredMap |
|
Named parameter function for setting ReachedMap |
|
Named parameter function for setting ProcessedMap |
|
Named parameter function for setting DistMap type |
|
Sets the source node, from which the Bfs algorithm runs.
|