View Javadoc

1   package cz.cuni.amis.pogamut.base.agent.state.level0;
2   
3   import java.io.Serializable;
4   
5   public interface IAgentState extends Serializable {
6   
7   	/**
8   	 * Provides convenient method for testing whether the agent is in one of 'states'.
9   	 * <p><p>
10  	 * Returns whether this state is one of the 'states' (using instanceof).
11  	 * @param states
12  	 * @return
13  	 */
14  	public boolean isState(Class... states);
15  	
16  	/**
17  	 * Provides convenient method for testing whether the agent is not in any of 'states'.
18  	 * <p><p>
19  	 * Returns whether this state is not any of the 'states' (using instanceof).
20  	 * @param states
21  	 * @return
22  	 */
23  	public boolean isNotState(Class... states);
24  	
25  	/**
26  	 * Additional information about the state - this is inlcuded to hashCode() and equals() methods.
27  	 * @return
28  	 */
29  	public String getDescription();
30  	
31  }