/** *
* Interface for callbacks to UI routines (drawing and other) *
* @author Michael Schuresko * @version %I%, %G% * @since 1.0 */ public interface ISimUICallback { /** * Callback function * @param arrLfState state vector (initially initial state, * overwritten with final state) * @param agent agent mapping (currently only support for homogenous swarms * ) * @param arrStates non-position components of * state of each agent (logic vars and control * function) * @param arrSensors array of sensor interfaces. * @param env environment * @param graph new communication graph (if an update is needed * pass null otherwise) * @param lfSimTime current simulated time * @return true if something unusual has happened */ public boolean doCallback(double [] arrLfState, IAgent agent, StateBundle [] arrStates, ISensor [] arrSensors, IEnvironment env , CommGraph graph, double lfSimTime); /** * In case we need more info then true/false from doCallback * @return arbitrary object (meaning depends on derived class) */ public Object getLastObject(); }