/* * Bee foraging simulation. Copyright by Joerg Hoehne. * For suggestions or questions email me at hoehne@thinktel.de */ package de.thinktel.foragingBee.simulation; import de.thinktel.foragingBee.masonGlue.IAgentVisualization; /** * This interface defines methods agents will expect from the simulation * environment. These methods are glue methods to allow the agents to access * MASON specific functionality. * <p> * Copyright 2009 Joerg Hoehne * * @author hoehne (<a href="mailto:hoehne@thinktel.de">Jörg Höhne</a>) * */ public interface IAgentLocator { /** * An agent will call this method to inform the simulation framework that * the agents location changed. * * @param agent */ void updateLocation(IVisualAgent agent); /** * Create a visualization object for the given agent. The type of * visualization is not known due to the usage of different simulation * environments. * * @param agent * The agent for which the visualization object will be created * for. * @return The visualization object. */ IAgentVisualization createVisual(IVisualAgent agent); /** * Remove this agent from visualization. * * @param agent * The agent to be removed. * @return Some information. */ Object removeFromVisualization(IVisualAgent agent); }