Iterates a GraphWalker over the components of a Graph. The order in which components are iterated over is determined by the GraphIterator class. The GraphTraversal is the mediator between the GraphWalker and the GraphIterator.
Upon each visitation, the GraphWalker communicates to the GraphTraversal through a series of return codes, each specifying a different action to perform at that point of the travesal. The following summarizes the meaning of the codes.
Code | Action Taken | CONTINUE | The traversal continues as normal. |
SUSPEND | Suspends the traversal at some intermediate stage. This code should be returned if the traversal is intended to be resumed. |
KILL_BRANCH | Kills the current branch of the traversal. Depending on the iteration algorithm, returning this code may end the traversal. |
STOP | Stops the traversal. |
GraphTraversals are started with a call to traverse(). If the traversal is suspended at some intermediate point, an additional call to traverse() will resume the traversal.
@see GraphWalker
@see GraphIterator
@see Graph
@author Justin Deoliveira, Refractions Research Inc, jdeolive@refractions.net
@source $URL$