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 * WeightedGraph.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: WeightedGraph.java 504 2006-07-03 02:37:26Z perfecthash $ 34 * 35 * Changes 36 * ------- 37 * 24-Jul-2003 : Initial revision (BN); 38 * 13-Aug-2003 : Included weight methods in Edge interface (BN); 39 * 11-Mar-2004 : Made generic (CH); 40 * 41 */ 42 package org.jgrapht; 43 44 /** 45 * An interface for a graph whose edges have non-uniform weights. 46 * 47 * @author Barak Naveh 48 * @since Jul 23, 2003 49 */ 50 public interface WeightedGraph<V, E> 51 extends Graph<V, E> 52 { 53 54 //~ Static fields/initializers -------------------------------------------- 55 56 /** 57 * The default weight for an edge. 58 */ 59 public static double DEFAULT_EDGE_WEIGHT = 1.0; 60 61 //~ Methods --------------------------------------------------------------- 62 63 /** 64 * Assigns a weight to an edge. 65 * 66 * @param e edge on which to set weight 67 * @param weight new weight for edge 68 */ 69 public void setEdgeWeight(E e, double weight); 70 } 71