com.tensegrity.graph.algorithm
Class DFSVisitorAdapter

java.lang.Object
  extended bycom.tensegrity.graph.algorithm.DFSVisitorAdapter
All Implemented Interfaces:
DFSVisitor

public class DFSVisitorAdapter
extends java.lang.Object
implements DFSVisitor

DFS Visitor pattern which has the callbacks for a DFS Visit. This is the convenience adapter class for the DFSVisitor interface.

Version:
$Id: DFSVisitorAdapter.java,v 1.3 2004/01/05 15:15:47 sr Exp $
Author:
Stepan Rutz

Constructor Summary
DFSVisitorAdapter()
          Constructs a new DFSVisitorAdapter adapter instance.
 
Method Summary
 void afterRecursion(Graph graph, Edge edge, Node node)
          Callback invoked right after the recursion in the dfs algorithm.
 void backEdge(Graph graph, Edge edge)
          Callback invoked each time a backedge is encountered for the first time.
 void beforeRecursion(Graph graph, Edge edge, Node node)
          Callback invoked right before the recursion in the dfs algorithm.
 void endGraph(Graph graph)
          Callback invoked after the dfs algorithm completed its work.
 void endNode(Graph graph, Node node, Node father)
          Callback invoked after the dfs algorithm has processed a single node (and all children recursively).
 void startDFSTree(Graph graph, Node node)
          Callback invoked each time a new dfs-tree is started in the dfs search forest.
 void startGraph(Graph graph)
          Callback invoked before the dfs algorithm starts its work.
 void startNode(Graph graph, Node node, Node father)
          Callback invoked before the dfs algorithm processes a single node.
 void usedAdjacentNodeEncountered(Graph graph, Edge edge, Node node)
          If the adjacent nodes of the current node are scanned and an already processed node is encountered, this method is invoked.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DFSVisitorAdapter

public DFSVisitorAdapter()
Constructs a new DFSVisitorAdapter adapter instance.

Method Detail

startGraph

public void startGraph(Graph graph)
Description copied from interface: DFSVisitor
Callback invoked before the dfs algorithm starts its work.

Specified by:
startGraph in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.

endGraph

public void endGraph(Graph graph)
Description copied from interface: DFSVisitor
Callback invoked after the dfs algorithm completed its work.

Specified by:
endGraph in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.

startNode

public void startNode(Graph graph,
                      Node node,
                      Node father)
Description copied from interface: DFSVisitor
Callback invoked before the dfs algorithm processes a single node.

Specified by:
startNode in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.
node - the currently processed node
father - the predecessor of the node, or null if the node has no predecessor in the dfs search order.

endNode

public void endNode(Graph graph,
                    Node node,
                    Node father)
Description copied from interface: DFSVisitor
Callback invoked after the dfs algorithm has processed a single node (and all children recursively).

Specified by:
endNode in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.
node - the currently processed node
father - the predecessor of the node, or null if the node has no predecessor in the dfs search order.

beforeRecursion

public void beforeRecursion(Graph graph,
                            Edge edge,
                            Node node)
Description copied from interface: DFSVisitor
Callback invoked right before the recursion in the dfs algorithm.

Specified by:
beforeRecursion in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.
edge - the edge that lead to the recursion.
node - the node that is going to be examined recursively next.

afterRecursion

public void afterRecursion(Graph graph,
                           Edge edge,
                           Node node)
Description copied from interface: DFSVisitor
Callback invoked right after the recursion in the dfs algorithm.

Specified by:
afterRecursion in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.
edge - the edge that lead to the recursion.
node - the node that was just recently examined recursively.

backEdge

public void backEdge(Graph graph,
                     Edge edge)
Description copied from interface: DFSVisitor
Callback invoked each time a backedge is encountered for the first time.

Specified by:
backEdge in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.
edge - the backedge.

usedAdjacentNodeEncountered

public void usedAdjacentNodeEncountered(Graph graph,
                                        Edge edge,
                                        Node node)
Description copied from interface: DFSVisitor
If the adjacent nodes of the current node are scanned and an already processed node is encountered, this method is invoked.

Specified by:
usedAdjacentNodeEncountered in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.
edge - the edge that connected the already seen node.
node - the node that was already visited.

startDFSTree

public void startDFSTree(Graph graph,
                         Node node)
Description copied from interface: DFSVisitor
Callback invoked each time a new dfs-tree is started in the dfs search forest. The passed node is the root node of the single dfs-tree.

Specified by:
startDFSTree in interface DFSVisitor
Parameters:
graph - graph the algorithm is working upon.
node - the root node of one dfs tree.


Copyright © 2005 Tensegrity Software GmbH. All Rights Reserved. Date of creation: 09.06.2006.