DiaDes  0.1
DIAgnosis of Discrete-Event System
Public Types | Public Member Functions | Private Attributes | List of all members
Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut > Class Template Reference

#include <DFS.hh>

Public Types

typedef GraphSearch< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut > Search
 
typedef Search::Graph Graph
 
typedef Search::Node Node
 
typedef Search::Container Container
 
typedef Search::Opposite Opposite
 
typedef Search::Solution Solution
 
typedef Search::PathCut PathCut
 
typedef Search::Accumulator Accumulator
 
typedef Search::IncidentEdges IncidentEdges
 
- Public Types inherited from Diades::Utils::GraphSearch< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >
typedef TContainer Container
 
typedef TAccumulator Accumulator
 
typedef TMark Mark
 
typedef TIncidentEdges IncidentEdges
 
typedef TOpposite Opposite
 
typedef TSolution Solution
 
typedef TPathCut PathCut
 
typedef IncidentEdges::Graph Graph
 
typedef IncidentEdges::Node Node
 

Public Member Functions

 DFS (Graph &graph, const Container &nodes, const Opposite &opposite, Solution &s, PathCut &cut, Accumulator &results)
 
virtual ~DFS ()
 
virtual void initialize ()
 
bool finished () const
 
void next ()
 
- Public Member Functions inherited from Diades::Utils::GraphSearch< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >
 GraphSearch (Graph &graph, const Container &nodes, const Opposite &opposite, Solution &s, PathCut &cut, Accumulator &results)
 
virtual ~GraphSearch ()
 
const AccumulatorcurrentResults ()
 
bool updated () const
 

Private Attributes

std::stack< Node_stack
 

Additional Inherited Members

- Protected Attributes inherited from Diades::Utils::GraphSearch< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >
bool _updated
 
Mark _m
 
Graph_graph
 
const Container_nodes
 
const Opposite_opposite
 
Solution_s
 
PathCut_cut
 
Accumulator_results
 

Detailed Description

template<typename TIncidentEdges, typename TOpposite, typename TContainer, typename TAccumulator, typename TMark, typename TSolution, typename TPathCut>
class Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >

Implements a generic Depth-First Search (use of std::stack). Derives from GraphSearch

Definition at line 26 of file DFS.hh.

Member Typedef Documentation

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::Accumulator Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::Accumulator

Definition at line 38 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::Container Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::Container

Definition at line 34 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::Graph Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::Graph

Definition at line 32 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::IncidentEdges Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::IncidentEdges

Definition at line 39 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::Node Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::Node

Definition at line 33 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::Opposite Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::Opposite

Definition at line 35 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::PathCut Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::PathCut

Definition at line 37 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef GraphSearch<TIncidentEdges,TOpposite,TContainer,TAccumulator, TMark,TSolution,TPathCut> Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::Search

Definition at line 31 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
typedef Search::Solution Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::Solution

Definition at line 36 of file DFS.hh.

Constructor & Destructor Documentation

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::DFS ( Graph graph,
const Container nodes,
const Opposite opposite,
Solution s,
PathCut cut,
Accumulator results 
)
inline

Constructor

Parameters
graphsee GraphSearch
nodessee GraphSearch
oppositesee GraphSearch
ssee GraphSearch
cutsee GraphSearch
resultssee GraphSearch

Definition at line 61 of file DFS.hh.

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
virtual Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::~DFS ( )
inlinevirtual

destructor

Definition at line 67 of file DFS.hh.

Member Function Documentation

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
bool Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::finished ( ) const
inline
Returns
true when the BFS has stopped. All solutions (if any) are found

Definition at line 93 of file DFS.hh.

Referenced by Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::next().

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
virtual void Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::initialize ( )
inlinevirtual
template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
void Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::next ( )
inline

Member Data Documentation

template<typename TIncidentEdges , typename TOpposite , typename TContainer , typename TAccumulator , typename TMark , typename TSolution , typename TPathCut >
std::stack<Node> Diades::Utils::DFS< TIncidentEdges, TOpposite, TContainer, TAccumulator, TMark, TSolution, TPathCut >::_stack
private

Definition at line 42 of file DFS.hh.


The documentation for this class was generated from the following file: