DfsWizard< TR > Class Template Reference

- Main Page
- Modules
- Classes
- Namespaces
- Files
- Related Pages

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
List of all members | Public Member Functions
DfsWizard< TR > Class Template Reference

## Detailed Description

### template<class TR>
class lemon::DfsWizard< TR >

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.

Template Parameters

  TR | The traits class that defines various types used by the algorithm.

`#include <lemon/dfs.h>`

Inherits TR.

## Public Member Functions
| DfsWizard ()
| Constructor.
| DfsWizard (const Digraph &g)
| Constructor that requires parameters. More...
| DfsWizard (const TR &b)
| Copy constructor.
void | run (Node s)
| Runs DFS algorithm from the given source node. More...
bool | run (Node s, Node t)
| Finds the DFS path between `s` and `t`. More...
void | run ()
| Runs DFS algorithm to visit all nodes in the digraph. More...
template<class T >
DfsWizard< SetPredMapBase< T > > | predMap (const T &t)
| Named parameter for setting the predecessor map. More...
template<class T >
DfsWizard< SetReachedMapBase< T > > | reachedMap (const T &t)
| Named parameter for setting the reached map. More...
template<class T >
DfsWizard< SetDistMapBase< T > > | distMap (const T &t)
| Named parameter for setting the distance map. More...
template<class T >
DfsWizard< SetProcessedMapBase < T > > | processedMap (const T &t)
| Named parameter for setting the processed map. More...
template<class T >
DfsWizard< SetPathBase< T > > | path (const T &t)
| Named parameter for getting the DFS path to the target node. More...
DfsWizard | dist (const int &d)
| Named parameter for getting the distance of the target node. More...

## Constructor & Destructor Documentation

DfsWizard | ( | const Digraph & | g | ) |
| inline

Constructor that requires parameters. These parameters will be the default values for the traits class.

Parameters

  g | The digraph the algorithm runs on.

## Member Function Documentation

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).

Returns
  `true` if `t` is reachable form `s`.

void run | ( |  | ) |
| inline

This method runs DFS algorithm in order to visit all nodes in the digraph.

DfsWizard<SetPredMapBase<T> > predMap | ( | const T & | t | ) |
| inline

Named parameter function for setting the map that stores the predecessor arcs of the nodes.

DfsWizard<SetReachedMapBase<T> > reachedMap | ( | const T & | t | ) |
| inline

Named parameter function for setting the map that indicates which nodes are reached.

DfsWizard<SetDistMapBase<T> > distMap | ( | const T & | t | ) |
| inline

Named parameter function for setting the map that stores the distances of the nodes calculated by the algorithm.

DfsWizard<SetProcessedMapBase<T> > processedMap | ( | const T & | t | ) |
| inline

Named parameter function for setting the map that indicates which nodes are processed.

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.