edu.cmu.cs.coral.icf.plan_based
Class PlannerController

java.lang.Object
  |
  +--edu.cmu.cs.coral.icf.plan_based.PlannerController

public class PlannerController
extends java.lang.Object
implements Controller

Represents a Controller based upon an underlying Planner.

Since:
ICF 0.0
Version:
$Id$

Field Summary
private  java.util.Map agents
          the Agent's controlled by this Controller with corresponding ActionStream's
private  FeedbackGenerator feedbackGenerator
          the source of feedback for this Controller
private  ModelFactory modelFactory
          the PlannerControllerModelFactory instance
private  Planner planner
          the Planner this Controller is based upon
 
Constructor Summary
PlannerController(Planner planner)
          Makes a new PlannerController based upon the given Planner.
 
Method Summary
 void addAgent(Agent agent)
          Adds an Agent to be controlled by this Controller.
 ActionStream getActionStream(Agent agent)
          Gets the ActionStream to control this Agent.
 ModelFactory getModelFactory()
          Gets a factory which can be used to create components of a world model of an appropriate type for the PlannerController.
 void setFeedbackGenerator(FeedbackGenerator fbg)
          Sets the source of feedback to the Controller.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

planner

private Planner planner
the Planner this Controller is based upon
Since:
ICF 0.0

modelFactory

private ModelFactory modelFactory
the PlannerControllerModelFactory instance
Since:
ICF 0.0

feedbackGenerator

private FeedbackGenerator feedbackGenerator
the source of feedback for this Controller
Since:
ICF 0.0

agents

private java.util.Map agents
the Agent's controlled by this Controller with corresponding ActionStream's
Since:
ICF 0.0
Constructor Detail

PlannerController

public PlannerController(Planner planner)
Makes a new PlannerController based upon the given Planner.
Parameters:
planner - the planner to use to make decisions.
Since:
ICF 0.0
Method Detail

getModelFactory

public ModelFactory getModelFactory()
Gets a factory which can be used to create components of a world model of an appropriate type for the PlannerController.
Specified by:
getModelFactory in interface Controller
Returns:
a ModelFactory which can generate models of the world for this Controller
Since:
ICF 0.0

setFeedbackGenerator

public void setFeedbackGenerator(FeedbackGenerator fbg)
Sets the source of feedback to the Controller.
Specified by:
setFeedbackGenerator in interface Controller
Parameters:
fbg - the FeedbackGenerator to use for Feedback
Since:
ICF 0.0

addAgent

public void addAgent(Agent agent)
Adds an Agent to be controlled by this Controller.
Specified by:
addAgent in interface Controller
Parameters:
agent - the agent to control
Since:
ICF 0.0

getActionStream

public ActionStream getActionStream(Agent agent)
Gets the ActionStream to control this Agent.
Specified by:
getActionStream in interface Controller
Parameters:
agent - the Agent to get the controlling stream for
Returns:
a stream of actions to control this agent
Since:
ICF 0.0