1 package cz.cuni.amis.pogamut.base.agent; 2 3 import javax.management.MXBean; 4 5 import cz.cuni.amis.pogamut.base.communication.command.IAct; 6 import cz.cuni.amis.pogamut.base.utils.guice.AgentScoped; 7 8 /** 9 * Interface of the agent that may observe the world and can even act inside it 10 * but does not have the body (notice that in case that the world contains agents-ghosts, that are 11 * "physically" being somewhere, they would be {@link IEmbodiedAgent} not this {@link IGhostAgent}). 12 * <p><p> 13 * This would typically be "world's simulator controller". 14 * 15 * @author ik 16 */ 17 @MXBean 18 @AgentScoped 19 public interface IGhostAgent extends IObservingAgent { 20 21 /** 22 * Returns an object through which we may communicate with the world. Represents 23 * the agent effectors providing a low-level act() method. You have to instantiate 24 * CommandObject for yourself. 25 * @return 26 */ 27 public IAct getAct(); 28 }