This auxiliary class is created to implement the function-type interface of Dfs algorithm. It does not have own run() method, it uses the functions and features of the plain Dfs.
This class should only be used through the dfs() function, which makes it easier to use the algorithm.
#include <lemon/dfs.h>
Public Member Functions | |
DfsWizard () | |
Constructor. | |
DfsWizard (const Digraph &g) | |
Constructor that requires parameters. | |
DfsWizard (const TR &b) | |
Copy constructor. | |
void | run (Node s) |
Runs DFS algorithm from the given source node. | |
bool | run (Node s, Node t) |
Finds the DFS path between s and t . | |
void | run () |
Runs DFS algorithm to visit all nodes in the digraph. | |
template<class T > | |
DfsWizard< SetPredMapBase< T > > | predMap (const T &t) |
template<class T > | |
DfsWizard< SetReachedMapBase< T > > | reachedMap (const T &t) |
template<class T > | |
DfsWizard< SetDistMapBase< T > > | distMap (const T &t) |
template<class T > | |
DfsWizard< SetProcessedMapBase < T > > | processedMap (const T &t) |
template<class T > | |
DfsWizard< SetPathBase< T > > | path (const T &t) |
DfsWizard | dist (const int &d) |
Private Types | |
typedef TR::Digraph | Digraph |
The type of the digraph the algorithm runs on. | |
typedef TR::PredMap | PredMap |
The type of the map that stores the predecessor arcs of the DFS paths. | |
typedef TR::DistMap | DistMap |
The type of the map that stores the distances of the nodes. | |
typedef TR::ReachedMap | ReachedMap |
The type of the map that indicates which nodes are reached. | |
typedef TR::ProcessedMap | ProcessedMap |
The type of the map that indicates which nodes are processed. | |
typedef TR::Path | Path |
The type of the DFS paths. |
Constructor that requires parameters. These parameters will be the default values for the traits class.
g | The digraph the algorithm runs on. |
void run | ( | Node | s | ) | [inline] |
This method runs DFS algorithm from node s
in order to compute the DFS path to each node.
bool run | ( | Node | s, |
Node | t | ||
) | [inline] |
This method runs DFS algorithm from node s
in order to compute the DFS path to node t
(it stops searching when t
is processed).
true
if t
is reachable form s
. void run | ( | ) | [inline] |
This method runs DFS algorithm in order to compute the DFS path to each node.
DfsWizard<SetPredMapBase<T> > predMap | ( | const T & | t | ) | [inline] |
Named parameter for setting PredMap object.
DfsWizard<SetReachedMapBase<T> > reachedMap | ( | const T & | t | ) | [inline] |
Named parameter for setting ReachedMap object.
DfsWizard<SetDistMapBase<T> > distMap | ( | const T & | t | ) | [inline] |
Named parameter for setting DistMap object.
DfsWizard<SetProcessedMapBase<T> > processedMap | ( | const T & | t | ) | [inline] |
Named parameter for setting ProcessedMap object.
DfsWizard<SetPathBase<T> > path | ( | const T & | t | ) | [inline] |
Named parameter for getting the DFS path to the target node.
DfsWizard dist | ( | const int & | d | ) | [inline] |
Named parameter for getting the distance of the target node.