Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## ix.iplan
Class Thatcher

    java.lang.Object
      ix.icore.IXAgent
          ix.ip2.Ip2
              ix.iplan.IPlan
                  ix.iplan.PlannerBase
                      ix.iplan.Thatcher

All Implemented Interfaces:
  Planner

    public class Thatcher

extends PlannerBase

Simple, non-backtracking, pure HTN planning algorithm.

"There is no alternative."

Nested Class Summary

Nested classes/interfaces inherited from class ix.ip2.Ip2
`Ip2.AddHandlersHandler`

Field Summary

Fields inherited from class ix.ip2.Ip2
`activityViewer, agentTypeName, annotationViewer, controller, domain, frame, issueViewer, logoImage, logoLine1, logoLine2, modelManager, optionManager, resetHooks, showOptions, stateViewer`

Fields inherited from class ix.icore.IXAgent
`contactManager, displayName, eventLogger, exitHooks, initialDisplayName, ipcName, ipcStrategyName, iSimTimer, knownAgents, nameListeners, startupDate, startupHooks, symbolName, textFrame, thisAgent`

Constructor Summary
`Thatcher(boolean standAlone)`

Method Summary
`protected void` | `addHandlers()` Install any built-in issue and activity handlers.
`(package private) java.util.List` | `allActivities()`
`(package private) ActivityItem` | `findExecutable()`
`static void` | `main(java.lang.String[] argv)` Standalone main program.
`void` | `plan()` Finds a plan that is a completion of this planner's current plan and makes it the new current plan.
`(package private) boolean` | `planIsComplete()`

Methods inherited from class ix.iplan.PlannerBase
`completeStartup, getStatistics, handleInput, initOptions, isStandAlone, makeInstance, outputOwlSPlan, outputPlan, outputPlanPSGraphData, replan, startServer, startup`

Methods inherited from class ix.iplan.IPlan
`makeDefaultPlanner, makeIp2Frame, makeModelManager, setDomain`

Methods inherited from class ix.ip2.Ip2
`addAboutInfo, addForwardingHandler, addHandlers, addResetHook, addTest, addTestMenuItems, addTool, clearAllButState, clearModel, do_reloadViewers, ensureTool, exit, getActivityPatternSyntaxes, getAgentTypeName, getController, getDomain, getFrame, getIp2ModelManager, getModelManager, getOptionManager, getPlan, handleInputDirectly, handleNewActivity, handleNewChatMessage, handleNewConstraint, handleNewIssue, handleNewReport, isReloadingViewers, loadDomain, loadInitialPlan, loadPlan, loadPlan, loadPlan, makeActivityViewer, makeAnnotationViewer, makeController, makeIssueViewer, makeLogoPanel, makeStateViewer, makeViewer, processCommandLineArguments, readDomain, readDomain, reloadViewers, reset, resetAllButState, resetViewers, savePlanAs`

Methods inherited from class ix.icore.IXAgent
`addAgentNameListener, addExitHook, addStartupHook, displayMessage, do_mainStartup, fireSymbolNameChanged, getAgent, getAgentDisplayName, getAgentIPCName, getAgentStartupDate, getAgentSymbolName, getContactManager, getEventLogger, getISimTimer, getKnownAgents, handleReceivedReport, installAgentExtensions, log, mainStartup, notePossibleNewContact, pre_handleInput, preprocessInput, reportInputException, setAgentSymbolName, setupISimTimer`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface ix.iplan.Planner
`getPlan, loadPlan, setDomain`

Constructor Detail

### Thatcher

    public Thatcher(boolean standAlone)

Method Detail

### main

    public static void main(java.lang.String[] argv)

  Standalone main program. One plan in, one plan out. To specify the initial plan, use the `plan` command-line argument. The result will be written to the file specified by the `output` argument. If no output is specified, the user is asked by a dialog.

### addHandlers

    protected void addHandlers()

  Install any built-in issue and activity handlers.

  Overrides:
    `addHandlers` in class `PlannerBase`

### plan

    public void plan()

  Description copied from interface: `Planner`
  Finds a plan that is a completion of this planner's current plan and makes it the new current plan. The precise meaning of "completion" depends on the planner in question, but typically it will mean that all activities in the initial plan that might be expanded into subactions, using refinements in this planner's domain, will be expanded, and that all constraints in the initial plan or introduced by expansion will be satisfied. (Here, the initial plan is the plan that was current when plan() was called.)

  A successful call to plan() leaves this planner in a state in which `Planner.replan()` can be called.

### findExecutable

    ActivityItem findExecutable()

### allActivities

    java.util.List allActivities()

### planIsComplete

    boolean planIsComplete()

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD