/* * Created on Jul 12, 2007 * * Copyright (c) 2007, the JUNG Project and the Regents of the University * of California * All rights reserved. * * This software is open-source under the BSD license; see either * "license.txt" or * http://jung.sourceforge.net/license.txt for a description. */ package edu.uci.ics.jung.algorithms.scoring; import org.apache.commons.collections15.Transformer; import edu.uci.ics.jung.algorithms.shortestpath.Distance; import edu.uci.ics.jung.graph.Hypergraph; /** * Assigns scores to each vertex according to the sum of its distances to all * other vertices. */ public class BarycenterScorer<V, E> extends DistanceCentralityScorer<V, E> { /** * Creates an instance with the specified graph and distance metric. * * @param graph * the input graph * @param distance * the distance metric to use */ public BarycenterScorer(Hypergraph<V, E> graph, Distance<V> distance) { super(graph, distance, false); } /** * Creates an instance with the specified graph and edge weights. Will * generate a <code>Distance</code> metric internally based on the edge * weights. * * @param graph * the input graph * @param edge_weights * the edge weights to use to calculate vertex/vertex distances */ public BarycenterScorer(Hypergraph<V, E> graph, Transformer<E, ? extends Number> edge_weights) { super(graph, edge_weights, false); } /** * Creates an instance with the specified graph. Will generate a * <code>Distance</code> metric internally assuming that the graph is * unweighted. * * @param graph * the input graph */ public BarycenterScorer(Hypergraph<V, E> graph) { super(graph, false); } }