ROSE
0.11.96.11
|
Breadth-first, forward traversal for edges.
This traversal follows edges in their natural order from source to target visiting sibling edges before children. The advancing methods and operators (advance, next, etc.) stop only at edge enter events (ENTER_EDGE). Dereferencing the traversal object returns a graph edge node.
Definition at line 1211 of file GraphTraversal.h.
#include <GraphTraversal.h>
Public Member Functions | |
BreadthFirstForwardEdgeTraversal (Graph &graph, typename GraphTraits< Graph >::VertexIterator startVertex) | |
Start traversal at specified vertex. | |
BreadthFirstForwardEdgeTraversal (Graph &graph, typename GraphTraits< Graph >::EdgeIterator startEdge) | |
Start traversal at specified edge. | |
BreadthFirstForwardEdgeTraversal (Graph &graph) | |
Start traversal at edge number zero. | |
BreadthFirstForwardEdgeTraversal & | operator++ () |
Advance traversal to next event. | |
Public Member Functions inherited from Sawyer::Container::Algorithm::GraphEdgeTraversal< Graph, BreadthFirstTraversalTag, ForwardTraversalTag > | |
GraphTraits< Graph >::EdgeIterator::Reference | operator* () |
Return reference to current edge. | |
GraphTraits< Graph >::EdgeIterator::Pointer | operator-> () |
Return pointer to current edge. | |
GraphTraits< Graph >::EdgeIterator::Reference | next () |
Return reference to current edge and advance. | |
Public Member Functions inherited from Sawyer::Container::Algorithm::GraphTraversal< Graph, BreadthFirstTraversalTag, ForwardTraversalTag > | |
GraphTraversal (Graph &graph, unsigned significantEvents) | |
Construct traversal for graph. More... | |
void | start (VertexIterator startVertex) |
Restart the traversal at the specified vertex. | |
void | start (EdgeIterator startEdge) |
Restart the traversal at the specified edge. | |
Graph & | graph () const |
The graph over which iteration occurs. More... | |
TraversalEvent | event () const |
Current event on which traversal is stopped. More... | |
VertexIterator | vertex () const |
Vertex to which traversal is pointing. More... | |
EdgeIterator | edge () const |
Edge to which traversal is pointing. More... | |
bool | isAtEnd () const |
Returns true when traversal reaches the end. More... | |
bool | hasNext () const |
Returns true when a traversal can be advanced. More... | |
TraversalEvent | advance () |
Advance traversal to next interesting event. More... | |
void | skipChildren () |
Causes traversal to skip children. More... | |
void | allowRediscovery (VertexIterator vertex) |
Allow a vertex to be discovered again. More... | |
bool | isDiscovered (VertexIterator vertex) const |
True if the vertex has been discovered. More... | |
bool | isVisited (EdgeIterator edge) const |
True if the edge has been entered. More... | |
operator unspecified_bool () const | |
Type for Boolean context. More... | |
void | mapVertices (Functor &f) |
Call the specified functor for each vertex. More... | |
void | mapVertices (const Functor &f) |
Call the specified functor for each vertex. More... | |
void | mapEdges (Functor &f) |
Call the specified functor for each edge. More... | |
void | mapEdges (const Functor &f) |
Call the specified functor for each edge. More... | |