#include <GraphWalker.h>
Public Types | |
using | bfs_type = std::queue< edge_type > |
using | const_edge_iterator = typename math::Graph< N, E >::const_edge_iterator |
using | edge_iterator = typename math::Graph< N, E >::edge_iterator |
using | edge_list = typename math::Graph< N, E >::edge_list |
using | edge_range = std::pair< const_edge_iterator, const_edge_iterator > |
using | edge_type = typename math::Graph< N, E >::edge_type |
using | index_result = typename math::Graph< N, E >::index_result |
using | index_type = typename math::Graph< N, E >::index_type |
using | result_type = bool |
using | stack_type = std::vector< edge_range > |
using | value_type = typename math::Graph< N, E >::value_type |
Public Member Functions | |
value_type | current () const |
value_type | current_bfs () const |
result_type | firstChild () |
GraphWalker (const Graph< N, E > &) | |
creates a walker rooted by the first candidate root found in the underlying Graph More... | |
GraphWalker (const Graph< N, E > &, const N &) | |
creates a walker rooted by the node given More... | |
result_type | next () |
result_type | next_bfs () |
result_type | nextSibling () |
result_type | parent () |
void | reset () |
const stack_type & | stack () const |
Protected Attributes | |
const Graph< N, E > & | graph_ |
bfs_type | queue_ |
edge_list | root_ |
stack_type | stack_ |
Private Member Functions | |
GraphWalker ()=delete | |
a walker for an acyclic directed multigraph
Definition at line 12 of file GraphWalker.h.
using math::GraphWalker< N, E >::bfs_type = std::queue<edge_type> |
Definition at line 25 of file GraphWalker.h.
using math::GraphWalker< N, E >::const_edge_iterator = typename math::Graph<N, E>::const_edge_iterator |
Definition at line 19 of file GraphWalker.h.
using math::GraphWalker< N, E >::edge_iterator = typename math::Graph<N, E>::edge_iterator |
Definition at line 18 of file GraphWalker.h.
using math::GraphWalker< N, E >::edge_list = typename math::Graph<N, E>::edge_list |
Definition at line 17 of file GraphWalker.h.
using math::GraphWalker< N, E >::edge_range = std::pair<const_edge_iterator, const_edge_iterator> |
Definition at line 22 of file GraphWalker.h.
using math::GraphWalker< N, E >::edge_type = typename math::Graph<N, E>::edge_type |
Definition at line 16 of file GraphWalker.h.
using math::GraphWalker< N, E >::index_result = typename math::Graph<N, E>::index_result |
Definition at line 15 of file GraphWalker.h.
using math::GraphWalker< N, E >::index_type = typename math::Graph<N, E>::index_type |
Definition at line 14 of file GraphWalker.h.
using math::GraphWalker< N, E >::result_type = bool |
Definition at line 27 of file GraphWalker.h.
using math::GraphWalker< N, E >::stack_type = std::vector<edge_range> |
Definition at line 24 of file GraphWalker.h.
using math::GraphWalker< N, E >::value_type = typename math::Graph<N, E>::value_type |
Definition at line 28 of file GraphWalker.h.
math::GraphWalker< N, E >::GraphWalker | ( | const Graph< N, E > & | g | ) |
creates a walker rooted by the first candidate root found in the underlying Graph
Definition at line 68 of file GraphWalker.h.
math::GraphWalker< N, E >::GraphWalker | ( | const Graph< N, E > & | g, |
const N & | root | ||
) |
creates a walker rooted by the node given
Definition at line 77 of file GraphWalker.h.
|
privatedelete |
|
inline |
GraphWalker< N, E >::value_type math::GraphWalker< N, E >::current_bfs | ( | ) | const |
Definition at line 94 of file GraphWalker.h.
GraphWalker< N, E >::result_type math::GraphWalker< N, E >::firstChild | ( | ) |
Definition at line 110 of file GraphWalker.h.
GraphWalker< N, E >::result_type math::GraphWalker< N, E >::next | ( | void | ) |
GraphWalker< N, E >::result_type math::GraphWalker< N, E >::next_bfs | ( | ) |
Definition at line 160 of file GraphWalker.h.
GraphWalker< N, E >::result_type math::GraphWalker< N, E >::nextSibling | ( | ) |
Definition at line 121 of file GraphWalker.h.
GraphWalker< N, E >::result_type math::GraphWalker< N, E >::parent | ( | ) |
Definition at line 132 of file GraphWalker.h.
void math::GraphWalker< N, E >::reset | ( | void | ) |
|
inline |
|
protected |
Definition at line 61 of file GraphWalker.h.
|
protected |
Definition at line 59 of file GraphWalker.h.
|
protected |
Definition at line 60 of file GraphWalker.h.
|
protected |
Definition at line 58 of file GraphWalker.h.
Referenced by math::GraphWalker< DDLogicalPart, DDPosData * >::stack().