/** *
* Interface for proximity graph functions. *
* @author Michael Schuresko * @version %I%, %G% * @since 1.0 */ public interface IProxGraph { /** * Proximity graph function: maps finite collects of points * in R^d onto graphs. Copies communication channels from * previous graph, if available. Does not know about * agent discrete state or other internal state vars. * Does know about environment (of particular importance to * "line of sight" type algorithms) * Assumes that the first d entries in the dimension array correspond * to point 0, the next d to point 1, the next d to point 2 etc. * Must be able to work without an optimization helper passed in. * @param nDimension the dimensionality the points live in, is this a graph in r^2, r^3, etc? * @param arrPoints position vector * @param optHelper optimization helper, assumed to be modified * (be sure to duplicate before passing in) * modification of this parameter is a way of returning a helper value. * @param prevGraph copy message queues (including unread messages) * from prevGraph if possible. * @param env current environment. * @return new graph corresponding to this set of points in space. */ public CommGraph getGraph(int nDimension, double arrPoints[], IProxGraphOptWrapper optHelper, CommGraph prevGraph, IEnvironment env); }