KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jgrapht > event > TraversalListener


1 /* ==========================================
2  * JGraphT : a free Java graph-theory library
3  * ==========================================
4  *
5  * Project Info: http://jgrapht.sourceforge.net/
6  * Project Creator: Barak Naveh (http://sourceforge.net/users/barak_naveh)
7  *
8  * (C) Copyright 2003-2006, by Barak Naveh and Contributors.
9  *
10  * This library is free software; you can redistribute it and/or modify it
11  * under the terms of the GNU Lesser General Public License as published by
12  * the Free Software Foundation; either version 2.1 of the License, or
13  * (at your option) any later version.
14  *
15  * This library is distributed in the hope that it will be useful, but
16  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
17  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
18  * License for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * along with this library; if not, write to the Free Software Foundation,
22  * Inc.,
23  * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
24  */

25 /* ----------------------
26  * TraversalListener.java
27  * ----------------------
28  * (C) Copyright 2003-2006, by Barak Naveh and Contributors.
29  *
30  * Original Author: Barak Naveh
31  * Contributor(s): Christian Hammer
32  *
33  * $Id: TraversalListener.java 504 2006-07-03 02:37:26Z perfecthash $
34  *
35  * Changes
36  * -------
37  * 24-Jul-2003 : Initial revision (BN);
38  * 11-Aug-2003 : Adaptation to new event model (BN);
39  * 11-Mar-2004 : Made generic (CH);
40  *
41  */

42 package org.jgrapht.event;
43
44 /**
45  * A listener on graph iterator or on a graph traverser.
46  *
47  * @author Barak Naveh
48  * @since Jul 19, 2003
49  */

50 public interface TraversalListener<V, E>
51 {
52
53     //~ Methods ---------------------------------------------------------------
54

55     /**
56      * Called to inform listeners that the traversal of the current connected
57      * component has finished.
58      *
59      * @param e the traversal event.
60      */

61     public void connectedComponentFinished(
62         ConnectedComponentTraversalEvent e);
63
64     /**
65      * Called to inform listeners that a traversal of a new connected component
66      * has started.
67      *
68      * @param e the traversal event.
69      */

70     public void connectedComponentStarted(ConnectedComponentTraversalEvent e);
71
72     /**
73      * Called to inform the listener that the specified edge have been visited
74      * during the graph traversal. Depending on the traversal algorithm, edge
75      * might be visited more than once.
76      *
77      * @param e the edge traversal event.
78      */

79     public void edgeTraversed(EdgeTraversalEvent<V, E> e);
80
81     /**
82      * Called to inform the listener that the specified vertex have been visited
83      * during the graph traversal. Depending on the traversal algorithm, vertex
84      * might be visited more than once.
85      *
86      * @param e the vertex traversal event.
87      */

88     public void vertexTraversed(VertexTraversalEvent<V> e);
89 }
90
Popular Tags