View Javadoc

1   package cz.cuni.amis.pogamut.ut2004.agent.module.logic;
2   
3   import java.util.logging.Logger;
4   
5   import com.google.inject.Inject;
6   
7   import cz.cuni.amis.pogamut.base.agent.module.IAgentLogic;
8   import cz.cuni.amis.pogamut.base.agent.module.LogicModule;
9   import cz.cuni.amis.pogamut.base.communication.worldview.IWorldView;
10  import cz.cuni.amis.pogamut.base.communication.worldview.object.WorldObjectFuture;
11  import cz.cuni.amis.pogamut.base.component.controller.ComponentDependencies;
12  import cz.cuni.amis.pogamut.base.component.controller.ComponentDependencyType;
13  import cz.cuni.amis.pogamut.base.component.exception.ComponentCantStartException;
14  import cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004Bot;
15  import cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.Self;
16  
17  /**
18   * {@link UT2004Bot} logic module - does not synchronize the logic together with the {@link IVisionWorldView}. The module 
19   * {@link ComponentDependencyType}.STARTS_AFTER the agent's world view.
20   * 
21   * @author Jimmy
22   *
23   * @param <BOT>
24   */
25  public class AsyncUT2004BotLogic<BOT extends UT2004Bot> extends UT2004BotLogic<BOT> {
26  
27  	@Inject
28  	public AsyncUT2004BotLogic(BOT agent, IAgentLogic logic) {
29  		this(agent, logic, null, new ComponentDependencies(ComponentDependencyType.STARTS_AFTER).add(agent.getWorldView()));
30  	}
31  	
32  	public AsyncUT2004BotLogic(BOT agent, IAgentLogic logic, Logger log) {
33  		this(agent, logic, log, new ComponentDependencies(ComponentDependencyType.STARTS_AFTER).add(agent.getWorldView()));
34  	}
35  	
36  	public AsyncUT2004BotLogic(BOT agent, IAgentLogic logic, Logger log, ComponentDependencies dependencies) {
37  		super(agent, logic, log, dependencies);
38  		this.logic = logic;
39  	}
40  	
41  }