<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_20) on Mon Sep 22 13:06:34 BRT 2014 -->
<title>FSMPlanBody</title>
<meta name="date" content="2014-09-22">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="FSMPlanBody";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/FSMPlanBody.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../bdi4jade/plan/planbody/DisposablePlanBody.html" title="interface in bdi4jade.plan.planbody"><span class="typeNameLink">Prev Class</span></a></li>
<li><a href="../../../bdi4jade/plan/planbody/OutputPlanBody.html" title="interface in bdi4jade.plan.planbody"><span class="typeNameLink">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?bdi4jade/plan/planbody/FSMPlanBody.html" target="_top">Frames</a></li>
<li><a href="FSMPlanBody.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li><a href="#nested.classes.inherited.from.class.jade.core.behaviours.Behaviour">Nested</a> | </li>
<li><a href="#fields.inherited.from.class.jade.core.behaviours.FSMBehaviour">Field</a> | </li>
<li><a href="#constructor.summary">Constr</a> | </li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li>Field | </li>
<li><a href="#constructor.detail">Constr</a> | </li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">bdi4jade.plan.planbody</div>
<h2 title="Class FSMPlanBody" class="title">Class FSMPlanBody</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>jade.core.behaviours.Behaviour</li>
<li>
<ul class="inheritance">
<li>jade.core.behaviours.CompositeBehaviour</li>
<li>
<ul class="inheritance">
<li>jade.core.behaviours.SerialBehaviour</li>
<li>
<ul class="inheritance">
<li>jade.core.behaviours.FSMBehaviour</li>
<li>
<ul class="inheritance">
<li>bdi4jade.plan.planbody.FSMPlanBody</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../bdi4jade/event/GoalListener.html" title="interface in bdi4jade.event">GoalListener</a>, <a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a>, java.io.Serializable, java.util.EventListener</dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">FSMPlanBody</span>
extends jade.core.behaviours.FSMBehaviour
implements <a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></pre>
<div class="block">This allows a plan body to inherit from both <a href="../../../bdi4jade/plan/planbody/AbstractPlanBody.html" title="class in bdi4jade.plan.planbody"><code>AbstractPlanBody</code></a> and
<code>FSMBehaviour</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Ingrid Nunes</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../serialized-form.html#bdi4jade.plan.planbody.FSMPlanBody">Serialized Form</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.jade.core.behaviours.Behaviour">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class jade.core.behaviours.Behaviour</h3>
<code>jade.core.behaviours.Behaviour.RunnableChangedEvent</code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.jade.core.behaviours.FSMBehaviour">
<!-- -->
</a>
<h3>Fields inherited from class jade.core.behaviours.FSMBehaviour</h3>
<code>currentName, lastStates</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.jade.core.behaviours.CompositeBehaviour">
<!-- -->
</a>
<h3>Fields inherited from class jade.core.behaviours.CompositeBehaviour</h3>
<code>currentExecuted</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.jade.core.behaviours.Behaviour">
<!-- -->
</a>
<h3>Fields inherited from class jade.core.behaviours.Behaviour</h3>
<code>myAgent, myEvent, NOTIFY_DOWN, NOTIFY_UP, parent, STATE_BLOCKED, STATE_READY, STATE_RUNNING</code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#FSMPlanBody--">FSMPlanBody</a></span>()</code> </td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#dispatchGoal-bdi4jade.goal.Goal-">dispatchGoal</a></span>(<a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a> goal)</code>
<div class="block">Dispatches a goal to be achieved.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#dispatchSubgoal-bdi4jade.goal.Goal-">dispatchSubgoal</a></span>(<a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a> subgoal)</code>
<div class="block">Dispatches a subgoal to be achieved.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#dispatchSubgoalAndListen-bdi4jade.goal.Goal-">dispatchSubgoalAndListen</a></span>(<a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a> subgoal)</code>
<div class="block">Dispatches a subgoal to be achieved and registers itself as a listener to
receive a notification of the end of execution of the goal.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../bdi4jade/belief/BeliefBase.html" title="class in bdi4jade.belief">BeliefBase</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getBeliefBase--">getBeliefBase</a></span>()</code>
<div class="block">Returns the belief base of the capability associated with the plan of
this plan body.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../bdi4jade/core/Capability.html" title="class in bdi4jade.core">Capability</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getCapability--">getCapability</a></span>()</code>
<div class="block">Returns the capability associated with the plan of this plan body.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../bdi4jade/plan/Plan.EndState.html" title="enum in bdi4jade.plan">Plan.EndState</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getEndState--">getEndState</a></span>()</code>
<div class="block">Returns the end state of the execution of this plan.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getGoal--">getGoal</a></span>()</code>
<div class="block">Returns the goal to be achieved by this plan body.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getGoalEvent--">getGoalEvent</a></span>()</code>
<div class="block">Returns a goal event from the queue.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getGoalEvent-boolean-">getGoalEvent</a></span>(boolean block)</code>
<div class="block">Returns a goal event from the queue.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getGoalEvent-long-">getGoalEvent</a></span>(long ms)</code>
<div class="block">Returns a goal event from the queue.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan">Plan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#getPlan--">getPlan</a></span>()</code>
<div class="block">Returns the <a href="../../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan"><code>Plan</code></a> that is associated with this plan instance.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#goalPerformed-bdi4jade.event.GoalEvent-">goalPerformed</a></span>(<a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a> event)</code>
<div class="block">Notifies the listener that a goal that was performed.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#init-bdi4jade.plan.Plan-bdi4jade.core.Intention-">init</a></span>(<a href="../../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan">Plan</a> plan,
<a href="../../../bdi4jade/core/Intention.html" title="class in bdi4jade.core">Intention</a> intention)</code>
<div class="block">Initializes this plan body.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#start--">start</a></span>()</code>
<div class="block">Starts the execution of a plan body, a <code>Behaviour</code>, associated with
this plan.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../bdi4jade/plan/planbody/FSMPlanBody.html#stop--">stop</a></span>()</code>
<div class="block">Stops the plan body, a <code>Behaviour</code>, associated with this plan.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jade.core.behaviours.FSMBehaviour">
<!-- -->
</a>
<h3>Methods inherited from class jade.core.behaviours.FSMBehaviour</h3>
<code>checkTermination, deregisterDefaultTransition, deregisterState, deregisterTransition, forceTransitionTo, getChildren, getCurrent, getLastExitValue, getName, getPrevious, getState, handleInconsistentFSM, handleStateEntered, hasDefaultTransition, onEnd, registerDefaultTransition, registerDefaultTransition, registerFirstState, registerLastState, registerState, registerTransition, registerTransition, reset, resetStates, scheduleFirst, scheduleNext, stringifyTransitionTable</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jade.core.behaviours.SerialBehaviour">
<!-- -->
</a>
<h3>Methods inherited from class jade.core.behaviours.SerialBehaviour</h3>
<code>handle</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jade.core.behaviours.CompositeBehaviour">
<!-- -->
</a>
<h3>Methods inherited from class jade.core.behaviours.CompositeBehaviour</h3>
<code>action, done, handleBlockEvent, handleRestartEvent, registerAsChild, resetChildren, setAgent</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jade.core.behaviours.Behaviour">
<!-- -->
</a>
<h3>Methods inherited from class jade.core.behaviours.Behaviour</h3>
<code>actionWrapper, block, block, getAgent, getBehaviourName, getDataStore, getExecutionState, getParent, getRestartCounter, isRunnable, onStart, restart, root, setBehaviourName, setDataStore, setExecutionState</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.bdi4jade.plan.planbody.PlanBody">
<!-- -->
</a>
<h3>Methods inherited from interface bdi4jade.plan.planbody.<a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></h3>
<code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#block--">block</a>, <a href="../../../bdi4jade/plan/planbody/PlanBody.html#onEnd--">onEnd</a>, <a href="../../../bdi4jade/plan/planbody/PlanBody.html#onStart--">onStart</a>, <a href="../../../bdi4jade/plan/planbody/PlanBody.html#reset--">reset</a>, <a href="../../../bdi4jade/plan/planbody/PlanBody.html#restart--">restart</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="FSMPlanBody--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>FSMPlanBody</h4>
<pre>public FSMPlanBody()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="dispatchGoal-bdi4jade.goal.Goal-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dispatchGoal</h4>
<pre>public boolean dispatchGoal(<a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a> goal)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#dispatchGoal-bdi4jade.goal.Goal-">PlanBody</a></code></span></div>
<div class="block">Dispatches a goal to be achieved. It is added as a top level agent goal,
that is, the dispatched goal is independent of the goal that this plan
body is trying to achieve.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#dispatchGoal-bdi4jade.goal.Goal-">dispatchGoal</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>goal</code> - the goal to be dispatched.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the goal could be dispatched, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="dispatchSubgoal-bdi4jade.goal.Goal-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dispatchSubgoal</h4>
<pre>public boolean dispatchSubgoal(<a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a> subgoal)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#dispatchSubgoal-bdi4jade.goal.Goal-">PlanBody</a></code></span></div>
<div class="block">Dispatches a subgoal to be achieved. Dispatched subgoals are goals of an
agent as long as the plan body that dispatched it is being executed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#dispatchSubgoal-bdi4jade.goal.Goal-">dispatchSubgoal</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subgoal</code> - the subgoal to be dispatched.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the goal could be dispatched, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="dispatchSubgoalAndListen-bdi4jade.goal.Goal-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dispatchSubgoalAndListen</h4>
<pre>public boolean dispatchSubgoalAndListen(<a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a> subgoal)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#dispatchSubgoalAndListen-bdi4jade.goal.Goal-">PlanBody</a></code></span></div>
<div class="block">Dispatches a subgoal to be achieved and registers itself as a listener to
receive a notification of the end of execution of the goal.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#dispatchSubgoalAndListen-bdi4jade.goal.Goal-">dispatchSubgoalAndListen</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subgoal</code> - the subgoal to be dispatched.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the goal could be dispatched, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="getBeliefBase--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBeliefBase</h4>
<pre>public <a href="../../../bdi4jade/belief/BeliefBase.html" title="class in bdi4jade.belief">BeliefBase</a> getBeliefBase()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getBeliefBase--">PlanBody</a></code></span></div>
<div class="block">Returns the belief base of the capability associated with the plan of
this plan body.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getBeliefBase--">getBeliefBase</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the belief base containing the capability beliefs.</dd>
</dl>
</li>
</ul>
<a name="getCapability--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapability</h4>
<pre>public <a href="../../../bdi4jade/core/Capability.html" title="class in bdi4jade.core">Capability</a> getCapability()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getCapability--">PlanBody</a></code></span></div>
<div class="block">Returns the capability associated with the plan of this plan body.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getCapability--">getCapability</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the capability.</dd>
</dl>
</li>
</ul>
<a name="getEndState--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEndState</h4>
<pre>public <a href="../../../bdi4jade/plan/Plan.EndState.html" title="enum in bdi4jade.plan">Plan.EndState</a> getEndState()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getEndState--">PlanBody</a></code></span></div>
<div class="block">Returns the end state of the execution of this plan.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getEndState--">getEndState</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the end state of this plan, or null if it has not finished yet.</dd>
</dl>
</li>
</ul>
<a name="getGoal--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGoal</h4>
<pre>public <a href="../../../bdi4jade/goal/Goal.html" title="interface in bdi4jade.goal">Goal</a> getGoal()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoal--">PlanBody</a></code></span></div>
<div class="block">Returns the goal to be achieved by this plan body.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoal--">getGoal</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the goal.</dd>
</dl>
</li>
</ul>
<a name="getGoalEvent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGoalEvent</h4>
<pre>public <a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a> getGoalEvent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoalEvent--">PlanBody</a></code></span></div>
<div class="block">Returns a goal event from the queue. If the queue is empty, the behavior
associated with this plan instance is blocked.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoalEvent--">getGoalEvent</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the goal event or null if the queue is empty.</dd>
</dl>
</li>
</ul>
<a name="getGoalEvent-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGoalEvent</h4>
<pre>public <a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a> getGoalEvent(boolean block)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoalEvent-boolean-">PlanBody</a></code></span></div>
<div class="block">Returns a goal event from the queue. If the queue is empty, the behavior
associated with this plan instance is going to be blocked if the
parameter passed to this method is true.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoalEvent-boolean-">getGoalEvent</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>block</code> - true if the behavior must be blocked if the queue is empty.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the goal event or null if the queue is empty.</dd>
</dl>
</li>
</ul>
<a name="getGoalEvent-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGoalEvent</h4>
<pre>public <a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a> getGoalEvent(long ms)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoalEvent-long-">PlanBody</a></code></span></div>
<div class="block">Returns a goal event from the queue. If the queue is empty, the behavior
associated with this plan instance is going to be blocked for the
specified milliseconds.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getGoalEvent-long-">getGoalEvent</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ms</code> - the maximum amount of time that the behavior must be blocked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the goal event or null if the queue is empty.</dd>
</dl>
</li>
</ul>
<a name="getPlan--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlan</h4>
<pre>public <a href="../../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan">Plan</a> getPlan()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getPlan--">PlanBody</a></code></span></div>
<div class="block">Returns the <a href="../../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan"><code>Plan</code></a> that is associated with this plan instance.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#getPlan--">getPlan</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the plan.</dd>
</dl>
</li>
</ul>
<a name="goalPerformed-bdi4jade.event.GoalEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>goalPerformed</h4>
<pre>public void goalPerformed(<a href="../../../bdi4jade/event/GoalEvent.html" title="class in bdi4jade.event">GoalEvent</a> event)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/event/GoalListener.html#goalPerformed-bdi4jade.event.GoalEvent-">GoalListener</a></code></span></div>
<div class="block">Notifies the listener that a goal that was performed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/event/GoalListener.html#goalPerformed-bdi4jade.event.GoalEvent-">goalPerformed</a></code> in interface <code><a href="../../../bdi4jade/event/GoalListener.html" title="interface in bdi4jade.event">GoalListener</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the goal event that occurred.</dd>
</dl>
</li>
</ul>
<a name="init-bdi4jade.plan.Plan-bdi4jade.core.Intention-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
<pre>public void init(<a href="../../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan">Plan</a> plan,
<a href="../../../bdi4jade/core/Intention.html" title="class in bdi4jade.core">Intention</a> intention)
throws <a href="../../../bdi4jade/exception/PlanInstantiationException.html" title="class in bdi4jade.exception">PlanInstantiationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#init-bdi4jade.plan.Plan-bdi4jade.core.Intention-">PlanBody</a></code></span></div>
<div class="block">Initializes this plan body. It associates this plan body with a plan
definition (<a href="../../../bdi4jade/plan/Plan.html" title="interface in bdi4jade.plan"><code>Plan</code></a>) and an <a href="../../../bdi4jade/core/Intention.html" title="class in bdi4jade.core"><code>Intention</code></a>. If this plan body has
already been initialized, this method throws a
<a href="../../../bdi4jade/exception/PlanInstantiationException.html" title="class in bdi4jade.exception"><code>PlanInstantiationException</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#init-bdi4jade.plan.Plan-bdi4jade.core.Intention-">init</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>plan</code> - the plan associated this this plan body.</dd>
<dd><code>intention</code> - the intention that this plan instance have to achieve.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../bdi4jade/exception/PlanInstantiationException.html" title="class in bdi4jade.exception">PlanInstantiationException</a></code> - if this plan body has already been initialized.</dd>
</dl>
</li>
</ul>
<a name="start--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre>public void start()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#start--">PlanBody</a></code></span></div>
<div class="block">Starts the execution of a plan body, a <code>Behaviour</code>, associated with
this plan.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#start--">start</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
</dl>
</li>
</ul>
<a name="stop--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>stop</h4>
<pre>public void stop()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#stop--">PlanBody</a></code></span></div>
<div class="block">Stops the plan body, a <code>Behaviour</code>, associated with this plan. If
the body implements the <a href="../../../bdi4jade/plan/planbody/DisposablePlanBody.html" title="interface in bdi4jade.plan.planbody"><code>DisposablePlanBody</code></a>, it invokes the method
to about the plan body, so it can perform finalizations.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../bdi4jade/plan/planbody/PlanBody.html#stop--">stop</a></code> in interface <code><a href="../../../bdi4jade/plan/planbody/PlanBody.html" title="interface in bdi4jade.plan.planbody">PlanBody</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/FSMPlanBody.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../bdi4jade/plan/planbody/DisposablePlanBody.html" title="interface in bdi4jade.plan.planbody"><span class="typeNameLink">Prev Class</span></a></li>
<li><a href="../../../bdi4jade/plan/planbody/OutputPlanBody.html" title="interface in bdi4jade.plan.planbody"><span class="typeNameLink">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?bdi4jade/plan/planbody/FSMPlanBody.html" target="_top">Frames</a></li>
<li><a href="FSMPlanBody.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li><a href="#nested.classes.inherited.from.class.jade.core.behaviours.Behaviour">Nested</a> | </li>
<li><a href="#fields.inherited.from.class.jade.core.behaviours.FSMBehaviour">Field</a> | </li>
<li><a href="#constructor.summary">Constr</a> | </li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li>Field | </li>
<li><a href="#constructor.detail">Constr</a> | </li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>