FlightControl_Master b7183023c9 Documentation
2017-11-22 06:23:58 +01:00

3780 lines
77 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<link rel="stylesheet" href="stylesheet.css" type="text/css"/>
</head>
<body>
<div id="container">
<div id="product">
<div id="product_logo"></div>
<div id="product_name"><big><b></b></big></div>
<div id="product_description"></div>
</div>
<div id="main">
<div id="navigation">
<h2>Modules</h2>
<ul><li>
<a href="index.html">index</a>
</li></ul>
<ul>
<li><a href="AI_A2A.html">AI_A2A</a></li>
<li><a href="AI_A2A_Cap.html">AI_A2A_Cap</a></li>
<li><a href="AI_A2A_Dispatcher.html">AI_A2A_Dispatcher</a></li>
<li><a href="AI_A2A_GCI.html">AI_A2A_GCI</a></li>
<li><a href="AI_A2A_Patrol.html">AI_A2A_Patrol</a></li>
<li><a href="AI_Bai.html">AI_Bai</a></li>
<li><a href="AI_Balancer.html">AI_Balancer</a></li>
<li><a href="AI_Cap.html">AI_Cap</a></li>
<li><a href="AI_Cas.html">AI_Cas</a></li>
<li><a href="AI_Formation.html">AI_Formation</a></li>
<li><a href="AI_Patrol.html">AI_Patrol</a></li>
<li><a href="ATC_Ground.html">ATC_Ground</a></li>
<li><a href="Account.html">Account</a></li>
<li><a href="Airbase.html">Airbase</a></li>
<li><a href="Assign.html">Assign</a></li>
<li><a href="Base.html">Base</a></li>
<li><a href="Cargo.html">Cargo</a></li>
<li><a href="CleanUp.html">CleanUp</a></li>
<li><a href="Client.html">Client</a></li>
<li><a href="CommandCenter.html">CommandCenter</a></li>
<li><a href="Controllable.html">Controllable</a></li>
<li><a href="DCSAirbase.html">DCSAirbase</a></li>
<li><a href="DCSCoalitionObject.html">DCSCoalitionObject</a></li>
<li><a href="DCSCommand.html">DCSCommand</a></li>
<li><a href="DCSController.html">DCSController</a></li>
<li><a href="DCSGroup.html">DCSGroup</a></li>
<li><a href="DCSObject.html">DCSObject</a></li>
<li><a href="DCSTask.html">DCSTask</a></li>
<li><a href="DCSTypes.html">DCSTypes</a></li>
<li><a href="DCSUnit.html">DCSUnit</a></li>
<li><a href="DCSVec3.html">DCSVec3</a></li>
<li><a href="DCSWorld.html">DCSWorld</a></li>
<li><a href="DCSZone.html">DCSZone</a></li>
<li><a href="DCScountry.html">DCScountry</a></li>
<li><a href="DCStimer.html">DCStimer</a></li>
<li><a href="DCStrigger.html">DCStrigger</a></li>
<li><a href="Database.html">Database</a></li>
<li><a href="Designate.html">Designate</a></li>
<li><a href="Detection.html">Detection</a></li>
<li><a href="DetectionManager.html">DetectionManager</a></li>
<li><a href="Escort.html">Escort</a></li>
<li><a href="Event.html">Event</a></li>
<li><a href="Fsm.html">Fsm</a></li>
<li><a href="Goal.html">Goal</a></li>
<li><a href="Group.html">Group</a></li>
<li><a href="Identifiable.html">Identifiable</a></li>
<li><a href="Menu.html">Menu</a></li>
<li><a href="Message.html">Message</a></li>
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
<li><a href="Mission.html">Mission</a></li>
<li><a href="Movement.html">Movement</a></li>
<li><a href="Object.html">Object</a></li>
<li><a href="Point.html">Point</a></li>
<li><a href="Positionable.html">Positionable</a></li>
<li><a href="Process_JTAC.html">Process_JTAC</a></li>
<li><a href="Process_Pickup.html">Process_Pickup</a></li>
<li><a href="Protect.html">Protect</a></li>
<li><a href="Radio.html">Radio</a></li>
<li><a href="Rat.html">Rat</a></li>
<li><a href="Route.html">Route</a></li>
<li><a href="Scenery.html">Scenery</a></li>
<li><a href="ScheduleDispatcher.html">ScheduleDispatcher</a></li>
<li><a href="Scheduler.html">Scheduler</a></li>
<li><a href="Scoring.html">Scoring</a></li>
<li><a href="Sead.html">Sead</a></li>
<li><a href="Set.html">Set</a></li>
<li><a href="Settings.html">Settings</a></li>
<li><a href="Smoke.html">Smoke</a></li>
<li><a href="Spawn.html">Spawn</a></li>
<li><a href="SpawnStatic.html">SpawnStatic</a></li>
<li><a href="Spot.html">Spot</a></li>
<li><a href="Static.html">Static</a></li>
<li><a href="StaticObject.html">StaticObject</a></li>
<li>Task</li>
<li><a href="TaskZoneCapture.html">TaskZoneCapture</a></li>
<li><a href="Task_A2A.html">Task_A2A</a></li>
<li><a href="Task_A2A_Dispatcher.html">Task_A2A_Dispatcher</a></li>
<li><a href="Task_A2G.html">Task_A2G</a></li>
<li><a href="Task_A2G_Dispatcher.html">Task_A2G_Dispatcher</a></li>
<li><a href="Task_Cargo.html">Task_Cargo</a></li>
<li><a href="Task_PICKUP.html">Task_PICKUP</a></li>
<li><a href="Unit.html">Unit</a></li>
<li><a href="UserFlag.html">UserFlag</a></li>
<li><a href="UserSound.html">UserSound</a></li>
<li><a href="Utils.html">Utils</a></li>
<li><a href="Velocity.html">Velocity</a></li>
<li><a href="Zone.html">Zone</a></li>
<li><a href="ZoneCaptureCoalition.html">ZoneCaptureCoalition</a></li>
<li><a href="ZoneGoal.html">ZoneGoal</a></li>
<li><a href="ZoneGoalCargo.html">ZoneGoalCargo</a></li>
<li><a href="ZoneGoalCoalition.html">ZoneGoalCoalition</a></li>
<li><a href="env.html">env</a></li>
<li><a href="land.html">land</a></li>
<li><a href="routines.html">routines</a></li>
</ul>
</div>
<div id="content">
<h1>Module <code>Task</code></h1>
<p><strong>Tasking</strong> -- This module contains the TASK class, the main engine to run human taskings.</p>
<hr/>
<h3>Author: <strong>Sven Van de Velde (FlightControl)</strong></h3>
<h3>Contributions:</h3>
<hr/>
<h2>Global(s)</h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="#TASK">TASK</a></td>
<td class="summary">
<h1>TASK class, extends <a href="Base.html##(BASE)">Base#BASE</a></h1>
<h2>The TASK class implements the methods for task orchestration within MOOSE.</h2>
</td>
</tr>
</table>
<h2><a id="#(TASK)">Type <code>TASK</code></a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Abort">TASK:Abort()</a></td>
<td class="summary">
<p>FSM Abort synchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).AbortGroup">TASK:AbortGroup(PlayerUnit, PlayerGroup)</a></td>
<td class="summary">
<p>Abort a PlayerUnit from a Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).AddProgress">TASK:AddProgress(PlayerName, ProgressText, ProgressTime, ProgressPoints)</a></td>
<td class="summary">
<p>Add Task Progress for a Player Name</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).AssignToGroup">TASK:AssignToGroup(TaskGroup)</a></td>
<td class="summary">
<p>Assign the <a href="Task.html">Task</a> to a <a href="Group.html">Group</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).AssignToUnit">TASK:AssignToUnit(TaskUnit)</a></td>
<td class="summary">
<p>Assign the <a href="Task.html">Task</a> to an alive <a href="Unit.html">Unit</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Cancel">TASK:Cancel()</a></td>
<td class="summary">
<p>FSM Cancel synchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).ClearGroupAssignment">TASK:ClearGroupAssignment(TaskGroup)</a></td>
<td class="summary">
<p>Clear the <a href="Group.html">Group</a> assignment from the <a href="Task.html">Task</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).CommandCenter">TASK.CommandCenter</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).CrashGroup">TASK:CrashGroup(PlayerUnit, PlayerGroup)</a></td>
<td class="summary">
<p>A PlayerUnit crashed in a Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).DetectedItemIndex">TASK.DetectedItemIndex</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Detection">TASK.Detection</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Dispatcher">TASK.Dispatcher</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Fail">TASK:Fail()</a></td>
<td class="summary">
<p>FSM Fail synchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).FailProcesses">TASK:FailProcesses(TaskUnitName)</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).FsmTemplate">TASK.FsmTemplate</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetBriefing">TASK:GetBriefing()</a></td>
<td class="summary">
<p>Gets the <a href="Task.html">Task</a> briefing.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetGroups">TASK:GetGroups()</a></td>
<td class="summary">
<p>Gets the SET_GROUP assigned to the TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetID">TASK:GetID()</a></td>
<td class="summary">
<p>Gets the ID of the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetInfo">TASK:GetInfo(TaskInfo)</a></td>
<td class="summary">
<p>Gets the Information of the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetMission">TASK:GetMission()</a></td>
<td class="summary">
<p>Gets the Mission to where the TASK belongs.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetName">TASK:GetName()</a></td>
<td class="summary">
<p>Gets the Name of the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetPlayerCount">TASK:GetPlayerCount()</a></td>
<td class="summary">
<p>Create a count of the players in the Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetPlayerNames">TASK:GetPlayerNames()</a></td>
<td class="summary">
<p>Create a list of the players in the Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetPlayerProgress">TASK:GetPlayerProgress(PlayerName)</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetProcessTemplate">TASK:GetProcessTemplate(ProcessName)</a></td>
<td class="summary">
<p>Get the default or currently assigned <a href="Process.html">Process</a> template with key ProcessName.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetScoring">TASK:GetScoring()</a></td>
<td class="summary">
<p>Gets the Scoring of the task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetStateMachine">TASK:GetStateMachine(TaskUnit)</a></td>
<td class="summary">
<p>Gets the FiniteStateMachine of <a href="Task.html">Task</a> with key Task<a href="Unit.html">Unit</a></p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetStateString">TASK:GetStateString()</a></td>
<td class="summary">
<p>Gets the <a href="Task.html">Task</a> status.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetTaskBriefing">TASK:GetTaskBriefing()</a></td>
<td class="summary">
<p>Returns the <a href="Task.html">Task</a> briefing.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetTaskIndex">TASK:GetTaskIndex()</a></td>
<td class="summary">
<p>Gets the Task Index, which is a combination of the Task type, the Task name.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetTaskName">TASK:GetTaskName()</a></td>
<td class="summary">
<p>Returns the <a href="Task.html">Task</a> name.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetType">TASK:GetType()</a></td>
<td class="summary">
<p>Gets the Type of the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).GetUnitProcess">TASK:GetUnitProcess(TaskUnit)</a></td>
<td class="summary">
<p>Get the Task FSM Process Template</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Goal">TASK:Goal(PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>Goal Trigger for TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).HasAliveUnits">TASK:HasAliveUnits()</a></td>
<td class="summary">
<p>Returns if the <a href="Task.html">Task</a> has still alive and assigned Units.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).HasGroup">TASK:HasGroup(FindGroup)</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).HasStateMachine">TASK:HasStateMachine(TaskUnit)</a></td>
<td class="summary">
<p>Checks if there is a FiniteStateMachine assigned to Task<a href="Unit.html">Unit</a> for <a href="Task.html">Task</a></p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsGroupAssigned">TASK:IsGroupAssigned(TaskGroup)</a></td>
<td class="summary">
<p>Returns if the <a href="Task.html">Task</a> is assigned to the Group.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStateAborted">TASK:IsStateAborted()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Aborted</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStateAssigned">TASK:IsStateAssigned()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Assigned</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStateCancelled">TASK:IsStateCancelled()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Cancelled</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStateFailed">TASK:IsStateFailed()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Failed</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStateHold">TASK:IsStateHold()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Hold</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStatePlanned">TASK:IsStatePlanned()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Planned</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStateReplanned">TASK:IsStateReplanned()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Replanned</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).IsStateSuccess">TASK:IsStateSuccess()</a></td>
<td class="summary">
<p>Is the <a href="Task.html">Task</a> status <strong>Success</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).JoinUnit">TASK:JoinUnit(PlayerUnit, PlayerGroup)</a></td>
<td class="summary">
<p>Add a PlayerUnit to join the Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).MenuAssignToGroup">TASK:MenuAssignToGroup(TaskGroup)</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).MenuAssigned">TASK.MenuAssigned</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).MenuMarkToGroup">TASK:MenuMarkToGroup(TaskGroup)</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).MenuPlanned">TASK.MenuPlanned</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).MenuTaskAbort">TASK:MenuTaskAbort(TaskGroup)</a></td>
<td class="summary">
<p>Report the task status.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).MenuTaskStatus">TASK:MenuTaskStatus(TaskGroup)</a></td>
<td class="summary">
<p>Report the task status.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).MessageToGroups">TASK:MessageToGroups(Message)</a></td>
<td class="summary">
<p>Send a message of the <a href="Task.html">Task</a> to the assigned <a href="Group.html">Group</a>s.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Mission">TASK.Mission</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).New">TASK:New(Mission, SetGroupAssign, TaskName, TaskType, TaskBriefing)</a></td>
<td class="summary">
<p>Instantiates a new TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).OnAfterGoal">TASK:OnAfterGoal(From, Event, To, PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>Goal Handler OnAfter for TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).OnAfterPlayerAborted">TASK:OnAfterPlayerAborted(PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>FSM PlayerAborted event handler prototype for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).OnAfterPlayerCrashed">TASK:OnAfterPlayerCrashed(PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>FSM PlayerCrashed event handler prototype for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).OnAfterPlayerDead">TASK:OnAfterPlayerDead(PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>FSM PlayerDead event handler prototype for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).OnBeforeGoal">TASK:OnBeforeGoal(From, Event, To, PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>Goal Handler OnBefore for TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).RefreshMenus">TASK:RefreshMenus(TaskGroup, MenuTime)</a></td>
<td class="summary">
<p>Remove the menu option of the <a href="Task.html">Task</a> for a <a href="Group.html">Group</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).RemoveAssignedMenuForGroup">TASK:RemoveAssignedMenuForGroup(TaskGroup, MenuTime)</a></td>
<td class="summary">
<p>Remove the assigned menu option of the <a href="Task.html">Task</a> for a <a href="Group.html">Group</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).RemoveMenu">TASK:RemoveMenu(MenuTime)</a></td>
<td class="summary">
<p>Remove the menu options of the <a href="Task.html">Task</a> to all the groups in the SetGroup.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).RemoveStateMachine">TASK:RemoveStateMachine(TaskUnit)</a></td>
<td class="summary">
<p>Remove FiniteStateMachines from <a href="Task.html">Task</a> with key Task<a href="Unit.html">Unit</a></p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Replan">TASK:Replan()</a></td>
<td class="summary">
<p>FSM Replan synchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).ReportDetails">TASK:ReportDetails(TaskGroup, ReportGroup)</a></td>
<td class="summary">
<p>Create a detailed report of the Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).ReportOverview">TASK:ReportOverview(ReportGroup)</a></td>
<td class="summary">
<p>Create an overiew report of the Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).ReportSummary">TASK:ReportSummary(ReportGroup)</a></td>
<td class="summary">
<p>Create a summary report of the Task.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SendBriefingToAssignedGroups">TASK:SendBriefingToAssignedGroups()</a></td>
<td class="summary">
<p>Send the briefng message of the <a href="Task.html">Task</a> to the assigned <a href="Group.html">Group</a>s.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetAssignedMenuForGroup">TASK:SetAssignedMenuForGroup(TaskGroup, MenuTime)</a></td>
<td class="summary">
<p>Set the assigned menu options of the <a href="Task.html">Task</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetBriefing">TASK:SetBriefing(TaskBriefing)</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> briefing.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetDetection">TASK:SetDetection(Detection, DetectedItemIndex)</a></td>
<td class="summary">
<p>Set detection of a task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetDispatcher">TASK:SetDispatcher(Dispatcher)</a></td>
<td class="summary">
<p>Set dispatcher of a task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetGroup">TASK.SetGroup</a></td>
<td class="summary">
<p>The Set of Groups assigned to the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetGroupAssigned">TASK:SetGroupAssigned(TaskGroup)</a></td>
<td class="summary">
<p>Set <a href="Group.html">Group</a> assigned to the <a href="Task.html">Task</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetID">TASK:SetID(TaskID)</a></td>
<td class="summary">
<p>Sets the ID of the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetInfo">TASK:SetInfo(TaskInfo, TaskInfoText, TaskInfoOrder)</a></td>
<td class="summary">
<p>Sets the Information on the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetMenu">TASK:SetMenu(MenuTime)</a></td>
<td class="summary">
<p>Set the menu options of the <a href="Task.html">Task</a> to all the groups in the SetGroup.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetMenuForGroup">TASK:SetMenuForGroup(MenuTime, TaskGroup)</a></td>
<td class="summary">
<p>Set the Menu for a Group</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetName">TASK:SetName(TaskName)</a></td>
<td class="summary">
<p>Sets the Name of the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetPlannedMenuForGroup">TASK:SetPlannedMenuForGroup(TaskGroup, MenuText, MenuTime)</a></td>
<td class="summary">
<p>Set the planned menu option of the <a href="Task.html">Task</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetScoreOnFail">TASK:SetScoreOnFail(PlayerName, Penalty, TaskUnit)</a></td>
<td class="summary">
<p>Set a penalty when the A2A attack has failed.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetScoreOnProgress">TASK:SetScoreOnProgress(PlayerName, Score, TaskUnit)</a></td>
<td class="summary">
<p>Set a score when progress has been made by the player.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetScoreOnSuccess">TASK:SetScoreOnSuccess(PlayerName, Score, TaskUnit)</a></td>
<td class="summary">
<p>Set a score when all the targets in scope of the A2A attack, have been destroyed.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetStateMachine">TASK:SetStateMachine(TaskUnit, Fsm)</a></td>
<td class="summary">
<p>Add a FiniteStateMachine to <a href="Task.html">Task</a> with key Task<a href="Unit.html">Unit</a></p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetTimeOut">TASK:SetTimeOut(Timer)</a></td>
<td class="summary">
<p>Sets the TimeOut for the <a href="Task.html">Task</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetType">TASK:SetType(TaskType)</a></td>
<td class="summary">
<p>Sets the Type of the Task</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).SetUnitProcess">TASK:SetUnitProcess(Core, FsmTemplate)</a></td>
<td class="summary">
<p>Sets the Task FSM Process Template</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StateAborted">TASK:StateAborted()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Aborted</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StateAssigned">TASK:StateAssigned()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Assigned</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StateCancelled">TASK:StateCancelled()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Cancelled</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StateFailed">TASK:StateFailed()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Failed</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StateHold">TASK:StateHold()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Hold</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StatePlanned">TASK:StatePlanned()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Planned</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StateReplanned">TASK:StateReplanned()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Replanned</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).StateSuccess">TASK:StateSuccess()</a></td>
<td class="summary">
<p>Sets a <a href="Task.html">Task</a> to status <strong>Success</strong>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).Success">TASK:Success()</a></td>
<td class="summary">
<p>FSM Success synchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TaskBriefing">TASK.TaskBriefing</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TaskID">TASK.TaskID</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TaskInfo">TASK.TaskInfo</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TaskName">TASK.TaskName</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TaskProgress">TASK.TaskProgress</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TaskScheduler">TASK.TaskScheduler</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TaskType">TASK.TaskType</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).TimeOut">TASK.TimeOut</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).UnAssignFromGroup">TASK:UnAssignFromGroup(TaskGroup)</a></td>
<td class="summary">
<p>UnAssign the <a href="Task.html">Task</a> from a <a href="Group.html">Group</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).UnAssignFromGroups">TASK:UnAssignFromGroups()</a></td>
<td class="summary">
<p>UnAssign the <a href="Task.html">Task</a> from the <a href="Group.html">Group</a>s.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).UnAssignFromUnit">TASK:UnAssignFromUnit(TaskUnit)</a></td>
<td class="summary">
<p>UnAssign the <a href="Task.html">Task</a> from an alive <a href="Unit.html">Unit</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).__Abort">TASK:__Abort()</a></td>
<td class="summary">
<p>FSM Abort asynchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).__Cancel">TASK:__Cancel()</a></td>
<td class="summary">
<p>FSM Cancel asynchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).__Fail">TASK:__Fail()</a></td>
<td class="summary">
<p>FSM Fail asynchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).__Goal">TASK:__Goal(Delay, PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>Goal Asynchronous Trigger for TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).__Replan">TASK:__Replan()</a></td>
<td class="summary">
<p>FSM Replan asynchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).__Success">TASK:__Success()</a></td>
<td class="summary">
<p>FSM Success asynchronous event function for TASK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onafterReplan">TASK:onafterReplan(From, Event, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onbeforeTimeOut">TASK:onbeforeTimeOut(Event, From, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onenterAborted">TASK:onenterAborted(From, Event, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onenterAssigned">TASK:onenterAssigned(Event, From, To, PlayerUnit, PlayerName)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onenterCancelled">TASK:onenterCancelled(From, Event, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onenterFailed">TASK:onenterFailed(From, Event, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onenterPlanned">TASK:onenterPlanned(Event, From, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onenterSuccess">TASK:onenterSuccess(Event, From, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(TASK).onstatechange">TASK:onstatechange(Event, From, To)</a></td>
<td class="summary">
<p>FSM function for a TASK</p>
</td>
</tr>
</table>
<h2>Global(s)</h2>
<dl class="function">
<dt>
<em><a href="##(TASK)">#TASK</a></em>
<a id="TASK" >
<strong>TASK</strong>
</a>
</dt>
<dd>
<h1>TASK class, extends <a href="Base.html##(BASE)">Base#BASE</a></h1>
<h2>The TASK class implements the methods for task orchestration within MOOSE.</h2>
<p>The class provides a couple of methods to:</p>
<ul>
<li><a href="##(TASK).AssignToGroup">TASK.AssignToGroup</a>():Assign a task to a group (of players).</li>
<li><a href="##(TASK).AddProcess">TASK.AddProcess</a>():Add a <a href="Process.html">Process</a> to a task.</li>
<li><a href="##(TASK).RemoveProcesses">TASK.RemoveProcesses</a>():Remove a running <a href="Process.html">Process</a> from a running task.</li>
<li><a href="##(TASK).SetStateMachine">TASK.SetStateMachine</a>():Set a <a href="Fsm.html">Fsm</a> to a task.</li>
<li><a href="##(TASK).RemoveStateMachine">TASK.RemoveStateMachine</a>():Remove <a href="Fsm.html">Fsm</a> from a task.</li>
<li><a href="##(TASK).HasStateMachine">TASK.HasStateMachine</a>():Enquire if the task has a <a href="Fsm.html">Fsm</a></li>
<li><a href="##(TASK).AssignToUnit">TASK.AssignToUnit</a>(): Assign a task to a unit. (Needs to be implemented in the derived classes from <a href="##(TASK)">#TASK</a>.</li>
<li><a href="##(TASK).UnAssignFromUnit">TASK.UnAssignFromUnit</a>(): Unassign the task from a unit.</li>
<li><a href="##(TASK).SetTimeOut">TASK.SetTimeOut</a>(): Set timer in seconds before task gets cancelled if not assigned.</li>
</ul>
<h2>1.2) Set and enquire task status (beyond the task state machine processing).</h2>
<p>A task needs to implement as a minimum the following task states:</p>
<ul>
<li><strong>Success</strong>: Expresses the successful execution and finalization of the task.</li>
<li><strong>Failed</strong>: Expresses the failure of a task.</li>
<li><strong>Planned</strong>: Expresses that the task is created, but not yet in execution and is not assigned yet.</li>
<li><strong>Assigned</strong>: Expresses that the task is assigned to a Group of players, and that the task is in execution mode.</li>
</ul>
<p>A task may also implement the following task states:</p>
<ul>
<li><strong>Rejected</strong>: Expresses that the task is rejected by a player, who was requested to accept the task.</li>
<li><strong>Cancelled</strong>: Expresses that the task is cancelled by HQ or through a logical situation where a cancellation of the task is required.</li>
</ul>
<p>A task can implement more statusses than the ones outlined above. Please consult the documentation of the specific tasks to understand the different status modelled.</p>
<p>The status of tasks can be set by the methods <strong>State</strong> followed by the task status. An example is <code>StateAssigned()</code>.
The status of tasks can be enquired by the methods <strong>IsState</strong> followed by the task status name. An example is <code>if IsStateAssigned() then</code>.</p>
<h2>1.3) Add scoring when reaching a certain task status:</h2>
<p>Upon reaching a certain task status in a task, additional scoring can be given. If the Mission has a scoring system attached, the scores will be added to the mission scoring.
Use the method <a href="##(TASK).AddScore">TASK.AddScore</a>() to add scores when a status is reached.</p>
<h2>1.4) Task briefing:</h2>
<p>A task briefing can be given that is shown to the player when he is assigned to the task.</p>
</dd>
</dl>
<h2><a id="#(Task)" >Type <code>Task</code></a></h2>
<h2><a id="#(TASK)" >Type <code>TASK</code></a></h2>
<h3>Field(s)</h3>
<dl class="function">
<dt>
<a id="#(TASK).Abort" >
<strong>TASK:Abort()</strong>
</a>
</dt>
<dd>
<p>FSM Abort synchronous event function for TASK.</p>
<p>Use this event to Abort the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).AbortGroup" >
<strong>TASK:AbortGroup(PlayerUnit, PlayerGroup)</strong>
</a>
</dt>
<dd>
<p>Abort a PlayerUnit from a Task.</p>
<p>If the Unit was not part of the Task, false is returned.
If the Unit is part of the Task, true is returned.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The CLIENT or UNIT of the Player aborting the Task.</p>
</li>
<li>
<p><code><em> PlayerGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).AddProgress" >
<strong>TASK:AddProgress(PlayerName, ProgressText, ProgressTime, ProgressPoints)</strong>
</a>
</dt>
<dd>
<p>Add Task Progress for a Player Name</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
<li>
<p><code><em>#string ProgressText </em></code>:
The text that explains the Progress achieved.</p>
</li>
<li>
<p><code><em>#number ProgressTime </em></code>:
The time the progress was achieved.</p>
</li>
<li>
<p><code><em> ProgressPoints </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).AssignToGroup" >
<strong>TASK:AssignToGroup(TaskGroup)</strong>
</a>
</dt>
<dd>
<p>Assign the <a href="Task.html">Task</a> to a <a href="Group.html">Group</a>.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).AssignToUnit" >
<strong>TASK:AssignToUnit(TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Assign the <a href="Task.html">Task</a> to an alive <a href="Unit.html">Unit</a>.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).Cancel" >
<strong>TASK:Cancel()</strong>
</a>
</dt>
<dd>
<p>FSM Cancel synchronous event function for TASK.</p>
<p>Use this event to Cancel the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).ClearGroupAssignment" >
<strong>TASK:ClearGroupAssignment(TaskGroup)</strong>
</a>
</dt>
<dd>
<p>Clear the <a href="Group.html">Group</a> assignment from the <a href="Task.html">Task</a>.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Tasking.CommandCenter.html##(COMMANDCENTER)">Tasking.CommandCenter#COMMANDCENTER</a></em>
<a id="#(TASK).CommandCenter" >
<strong>TASK.CommandCenter</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).CrashGroup" >
<strong>TASK:CrashGroup(PlayerUnit, PlayerGroup)</strong>
</a>
</dt>
<dd>
<p>A PlayerUnit crashed in a Task.</p>
<p>Abort the Player.
If the Unit was not part of the Task, false is returned.
If the Unit is part of the Task, true is returned.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The CLIENT or UNIT of the Player aborting the Task.</p>
</li>
<li>
<p><code><em> PlayerGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).DetectedItemIndex" >
<strong>TASK.DetectedItemIndex</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).Detection" >
<strong>TASK.Detection</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).Dispatcher" >
<strong>TASK.Dispatcher</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).Fail" >
<strong>TASK:Fail()</strong>
</a>
</dt>
<dd>
<p>FSM Fail synchronous event function for TASK.</p>
<p>Use this event to Fail the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).FailProcesses" >
<strong>TASK:FailProcesses(TaskUnitName)</strong>
</a>
</dt>
<dd>
<p> TODO: Obscolete?
- Fail processes from <a href="Task.html">Task</a> with key <a href="Unit.html">Unit</a>
@param #TASK self
@param #string TaskUnitName
@return #TASK self</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> TaskUnitName </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Core.Fsm.html##(FSM_PROCESS)">Core.Fsm#FSM_PROCESS</a></em>
<a id="#(TASK).FsmTemplate" >
<strong>TASK.FsmTemplate</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetBriefing" >
<strong>TASK:GetBriefing()</strong>
</a>
</dt>
<dd>
<p>Gets the <a href="Task.html">Task</a> briefing.</p>
<h3>Return value</h3>
<p><em>#string:</em>
The briefing text.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetGroups" >
<strong>TASK:GetGroups()</strong>
</a>
</dt>
<dd>
<p>Gets the SET_GROUP assigned to the TASK.</p>
<h3>Return value</h3>
<p><em><a href="Core.Set.html##(SET_GROUP)">Core.Set#SET_GROUP</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetID" >
<strong>TASK:GetID()</strong>
</a>
</dt>
<dd>
<p>Gets the ID of the Task</p>
<h3>Return value</h3>
<p><em>#string:</em>
TaskID</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetInfo" >
<strong>TASK:GetInfo(TaskInfo)</strong>
</a>
</dt>
<dd>
<p>Gets the Information of the Task</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#string TaskInfo </em></code>:
The key and title of the task information.</p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#string:</em>
TaskInfoText The Task info text.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetMission" >
<strong>TASK:GetMission()</strong>
</a>
</dt>
<dd>
<p>Gets the Mission to where the TASK belongs.</p>
<h3>Return value</h3>
<p><em><a href="Tasking.Mission.html##(MISSION)">Tasking.Mission#MISSION</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetName" >
<strong>TASK:GetName()</strong>
</a>
</dt>
<dd>
<p>Gets the Name of the Task</p>
<h3>Return value</h3>
<p><em>#string:</em>
The Task Name</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetPlayerCount" >
<strong>TASK:GetPlayerCount()</strong>
</a>
</dt>
<dd>
<p>Create a count of the players in the Task.</p>
<h3>Return value</h3>
<p><em>#number:</em>
The total number of players in the task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetPlayerNames" >
<strong>TASK:GetPlayerNames()</strong>
</a>
</dt>
<dd>
<p>Create a list of the players in the Task.</p>
<h3>Return value</h3>
<p><em><a href="##(map)">#map</a>:</em></p>
<h1>string,Wrapper.Group#GROUP> A map of the players</h1>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetPlayerProgress" >
<strong>TASK:GetPlayerProgress(PlayerName)</strong>
</a>
</dt>
<dd>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> PlayerName </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetProcessTemplate" >
<strong>TASK:GetProcessTemplate(ProcessName)</strong>
</a>
</dt>
<dd>
<p>Get the default or currently assigned <a href="Process.html">Process</a> template with key ProcessName.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#string ProcessName </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Core.Fsm.html##(FSM_PROCESS)">Core.Fsm#FSM_PROCESS</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetScoring" >
<strong>TASK:GetScoring()</strong>
</a>
</dt>
<dd>
<p>Gets the Scoring of the task</p>
<h3>Return value</h3>
<p><em><a href="Functional.Scoring.html##(SCORING)">Functional.Scoring#SCORING</a>:</em>
Scoring</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetStateMachine" >
<strong>TASK:GetStateMachine(TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Gets the FiniteStateMachine of <a href="Task.html">Task</a> with key Task<a href="Unit.html">Unit</a></p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Core.Fsm.html##(FSM_PROCESS)">Core.Fsm#FSM_PROCESS</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetStateString" >
<strong>TASK:GetStateString()</strong>
</a>
</dt>
<dd>
<p>Gets the <a href="Task.html">Task</a> status.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetTaskBriefing" >
<strong>TASK:GetTaskBriefing()</strong>
</a>
</dt>
<dd>
<p>Returns the <a href="Task.html">Task</a> briefing.</p>
<h3>Return value</h3>
<p><em>#string:</em>
Task briefing.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetTaskIndex" >
<strong>TASK:GetTaskIndex()</strong>
</a>
</dt>
<dd>
<p>Gets the Task Index, which is a combination of the Task type, the Task name.</p>
<h3>Return value</h3>
<p><em>#string:</em>
The Task ID</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetTaskName" >
<strong>TASK:GetTaskName()</strong>
</a>
</dt>
<dd>
<p>Returns the <a href="Task.html">Task</a> name.</p>
<h3>Return value</h3>
<p><em>#string:</em>
TaskName</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetType" >
<strong>TASK:GetType()</strong>
</a>
</dt>
<dd>
<p>Gets the Type of the Task</p>
<h3>Return value</h3>
<p><em>#string:</em>
TaskType</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).GetUnitProcess" >
<strong>TASK:GetUnitProcess(TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Get the Task FSM Process Template</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Core.Fsm.html##(FSM_PROCESS)">Core.Fsm#FSM_PROCESS</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).Goal" >
<strong>TASK:Goal(PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>Goal Trigger for TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The <a href="Unit.html">Unit</a> of the player.</p>
</li>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).HasAliveUnits" >
<strong>TASK:HasAliveUnits()</strong>
</a>
</dt>
<dd>
<p>Returns if the <a href="Task.html">Task</a> has still alive and assigned Units.</p>
<h3>Return value</h3>
<p><em>#boolean:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).HasGroup" >
<strong>TASK:HasGroup(FindGroup)</strong>
</a>
</dt>
<dd>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> FindGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#boolean:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).HasStateMachine" >
<strong>TASK:HasStateMachine(TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Checks if there is a FiniteStateMachine assigned to Task<a href="Unit.html">Unit</a> for <a href="Task.html">Task</a></p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsGroupAssigned" >
<strong>TASK:IsGroupAssigned(TaskGroup)</strong>
</a>
</dt>
<dd>
<p>Returns if the <a href="Task.html">Task</a> is assigned to the Group.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#boolean:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStateAborted" >
<strong>TASK:IsStateAborted()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Aborted</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStateAssigned" >
<strong>TASK:IsStateAssigned()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Assigned</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStateCancelled" >
<strong>TASK:IsStateCancelled()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Cancelled</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStateFailed" >
<strong>TASK:IsStateFailed()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Failed</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStateHold" >
<strong>TASK:IsStateHold()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Hold</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStatePlanned" >
<strong>TASK:IsStatePlanned()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Planned</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStateReplanned" >
<strong>TASK:IsStateReplanned()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Replanned</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).IsStateSuccess" >
<strong>TASK:IsStateSuccess()</strong>
</a>
</dt>
<dd>
<p>Is the <a href="Task.html">Task</a> status <strong>Success</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).JoinUnit" >
<strong>TASK:JoinUnit(PlayerUnit, PlayerGroup)</strong>
</a>
</dt>
<dd>
<p>Add a PlayerUnit to join the Task.</p>
<p>For each Group within the Task, the Unit is checked if it can join the Task.
If the Unit was not part of the Task, false is returned.
If the Unit is part of the Task, true is returned.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The CLIENT or UNIT of the Player joining the Mission.</p>
</li>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> PlayerGroup </em></code>:
The GROUP of the player joining the Mission.</p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#boolean:</em>
true if Unit is part of the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).MenuAssignToGroup" >
<strong>TASK:MenuAssignToGroup(TaskGroup)</strong>
</a>
</dt>
<dd>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).MenuAssigned" >
<strong>TASK.MenuAssigned</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).MenuMarkToGroup" >
<strong>TASK:MenuMarkToGroup(TaskGroup)</strong>
</a>
</dt>
<dd>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).MenuPlanned" >
<strong>TASK.MenuPlanned</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).MenuTaskAbort" >
<strong>TASK:MenuTaskAbort(TaskGroup)</strong>
</a>
</dt>
<dd>
<p>Report the task status.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> TaskGroup </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).MenuTaskStatus" >
<strong>TASK:MenuTaskStatus(TaskGroup)</strong>
</a>
</dt>
<dd>
<p>Report the task status.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> TaskGroup </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).MessageToGroups" >
<strong>TASK:MessageToGroups(Message)</strong>
</a>
</dt>
<dd>
<p>Send a message of the <a href="Task.html">Task</a> to the assigned <a href="Group.html">Group</a>s.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> Message </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Tasking.Mission.html##(MISSION)">Tasking.Mission#MISSION</a></em>
<a id="#(TASK).Mission" >
<strong>TASK.Mission</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).New" >
<strong>TASK:New(Mission, SetGroupAssign, TaskName, TaskType, TaskBriefing)</strong>
</a>
</dt>
<dd>
<p>Instantiates a new TASK.</p>
<p>Should never be used. Interface Class.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Tasking.Mission.html##(MISSION)">Tasking.Mission#MISSION</a> Mission </em></code>:
The mission wherein the Task is registered.</p>
</li>
<li>
<p><code><em><a href="Core.Set.html##(SET_GROUP)">Core.Set#SET_GROUP</a> SetGroupAssign </em></code>:
The set of groups for which the Task can be assigned.</p>
</li>
<li>
<p><code><em>#string TaskName </em></code>:
The name of the Task</p>
</li>
<li>
<p><code><em>#string TaskType </em></code>:
The type of the Task</p>
</li>
<li>
<p><code><em> TaskBriefing </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).OnAfterGoal" >
<strong>TASK:OnAfterGoal(From, Event, To, PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>Goal Handler OnAfter for TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The <a href="Unit.html">Unit</a> of the player.</p>
</li>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).OnAfterPlayerAborted" >
<strong>TASK:OnAfterPlayerAborted(PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>FSM PlayerAborted event handler prototype for TASK.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The Unit of the Player when he went back to spectators or left the mission.</p>
</li>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the Player.</p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).OnAfterPlayerCrashed" >
<strong>TASK:OnAfterPlayerCrashed(PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>FSM PlayerCrashed event handler prototype for TASK.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The Unit of the Player when he crashed in the mission.</p>
</li>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the Player.</p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).OnAfterPlayerDead" >
<strong>TASK:OnAfterPlayerDead(PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>FSM PlayerDead event handler prototype for TASK.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The Unit of the Player when he died in the mission.</p>
</li>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the Player.</p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).OnBeforeGoal" >
<strong>TASK:OnBeforeGoal(From, Event, To, PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>Goal Handler OnBefore for TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The <a href="Unit.html">Unit</a> of the player.</p>
</li>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#boolean:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).RefreshMenus" >
<strong>TASK:RefreshMenus(TaskGroup, MenuTime)</strong>
</a>
</dt>
<dd>
<p>Remove the menu option of the <a href="Task.html">Task</a> for a <a href="Group.html">Group</a>.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
<li>
<p><code><em>#number MenuTime </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).RemoveAssignedMenuForGroup" >
<strong>TASK:RemoveAssignedMenuForGroup(TaskGroup, MenuTime)</strong>
</a>
</dt>
<dd>
<p>Remove the assigned menu option of the <a href="Task.html">Task</a> for a <a href="Group.html">Group</a>.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
<li>
<p><code><em>#number MenuTime </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).RemoveMenu" >
<strong>TASK:RemoveMenu(MenuTime)</strong>
</a>
</dt>
<dd>
<p>Remove the menu options of the <a href="Task.html">Task</a> to all the groups in the SetGroup.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#number MenuTime </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).RemoveStateMachine" >
<strong>TASK:RemoveStateMachine(TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Remove FiniteStateMachines from <a href="Task.html">Task</a> with key Task<a href="Unit.html">Unit</a></p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).Replan" >
<strong>TASK:Replan()</strong>
</a>
</dt>
<dd>
<p>FSM Replan synchronous event function for TASK.</p>
<p>Use this event to Replan the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).ReportDetails" >
<strong>TASK:ReportDetails(TaskGroup, ReportGroup)</strong>
</a>
</dt>
<dd>
<p>Create a detailed report of the Task.</p>
<p>List the Task Status, and the Players assigned to the Task.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
<li>
<p><code><em> ReportGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#string:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).ReportOverview" >
<strong>TASK:ReportOverview(ReportGroup)</strong>
</a>
</dt>
<dd>
<p>Create an overiew report of the Task.</p>
<p>List the Task Name and Status</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> ReportGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#string:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).ReportSummary" >
<strong>TASK:ReportSummary(ReportGroup)</strong>
</a>
</dt>
<dd>
<p>Create a summary report of the Task.</p>
<p>List the Task Name and Status</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> ReportGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#string:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SendBriefingToAssignedGroups" >
<strong>TASK:SendBriefingToAssignedGroups()</strong>
</a>
</dt>
<dd>
<p>Send the briefng message of the <a href="Task.html">Task</a> to the assigned <a href="Group.html">Group</a>s.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetAssignedMenuForGroup" >
<strong>TASK:SetAssignedMenuForGroup(TaskGroup, MenuTime)</strong>
</a>
</dt>
<dd>
<p>Set the assigned menu options of the <a href="Task.html">Task</a>.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
<li>
<p><code><em>#number MenuTime </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetBriefing" >
<strong>TASK:SetBriefing(TaskBriefing)</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> briefing.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#string TaskBriefing </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetDetection" >
<strong>TASK:SetDetection(Detection, DetectedItemIndex)</strong>
</a>
</dt>
<dd>
<p>Set detection of a task</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Function.Detection.html##(DETECTION_BASE)">Function.Detection#DETECTION_BASE</a> Detection </em></code>: </p>
</li>
<li>
<p><code><em>#number DetectedItemIndex </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetDispatcher" >
<strong>TASK:SetDispatcher(Dispatcher)</strong>
</a>
</dt>
<dd>
<p>Set dispatcher of a task</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Tasking.DetectionManager.html##(DETECTION_MANAGER)">Tasking.DetectionManager#DETECTION_MANAGER</a> Dispatcher </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Core.Set.html##(SET_GROUP)">Core.Set#SET_GROUP</a></em>
<a id="#(TASK).SetGroup" >
<strong>TASK.SetGroup</strong>
</a>
</dt>
<dd>
<p>The Set of Groups assigned to the Task</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetGroupAssigned" >
<strong>TASK:SetGroupAssigned(TaskGroup)</strong>
</a>
</dt>
<dd>
<p>Set <a href="Group.html">Group</a> assigned to the <a href="Task.html">Task</a>.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetID" >
<strong>TASK:SetID(TaskID)</strong>
</a>
</dt>
<dd>
<p>Sets the ID of the Task</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#string TaskID </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetInfo" >
<strong>TASK:SetInfo(TaskInfo, TaskInfoText, TaskInfoOrder)</strong>
</a>
</dt>
<dd>
<p>Sets the Information on the Task</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string TaskInfo </em></code>:
The key and title of the task information.</p>
</li>
<li>
<p><code><em>#string TaskInfoText </em></code>:
The Task info text.</p>
</li>
<li>
<p><code><em>#number TaskInfoOrder </em></code>:
The ordering, a number between 0 and 99.</p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetMenu" >
<strong>TASK:SetMenu(MenuTime)</strong>
</a>
</dt>
<dd>
<p>Set the menu options of the <a href="Task.html">Task</a> to all the groups in the SetGroup.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#number MenuTime </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetMenuForGroup" >
<strong>TASK:SetMenuForGroup(MenuTime, TaskGroup)</strong>
</a>
</dt>
<dd>
<p>Set the Menu for a Group</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#number MenuTime </em></code>: </p>
</li>
<li>
<p><code><em> TaskGroup </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetName" >
<strong>TASK:SetName(TaskName)</strong>
</a>
</dt>
<dd>
<p>Sets the Name of the Task</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#string TaskName </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetPlannedMenuForGroup" >
<strong>TASK:SetPlannedMenuForGroup(TaskGroup, MenuText, MenuTime)</strong>
</a>
</dt>
<dd>
<p>Set the planned menu option of the <a href="Task.html">Task</a>.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
<li>
<p><code><em>#string MenuText </em></code>:
The menu text.</p>
</li>
<li>
<p><code><em>#number MenuTime </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetScoreOnFail" >
<strong>TASK:SetScoreOnFail(PlayerName, Penalty, TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Set a penalty when the A2A attack has failed.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
<li>
<p><code><em>#number Penalty </em></code>:
The penalty in points, must be a negative value!</p>
</li>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetScoreOnProgress" >
<strong>TASK:SetScoreOnProgress(PlayerName, Score, TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Set a score when progress has been made by the player.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
<li>
<p><code><em>#number Score </em></code>:
The score in points to be granted when task process has been achieved.</p>
</li>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetScoreOnSuccess" >
<strong>TASK:SetScoreOnSuccess(PlayerName, Score, TaskUnit)</strong>
</a>
</dt>
<dd>
<p>Set a score when all the targets in scope of the A2A attack, have been destroyed.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
<li>
<p><code><em>#number Score </em></code>:
The score in points.</p>
</li>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetStateMachine" >
<strong>TASK:SetStateMachine(TaskUnit, Fsm)</strong>
</a>
</dt>
<dd>
<p>Add a FiniteStateMachine to <a href="Task.html">Task</a> with key Task<a href="Unit.html">Unit</a></p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
<li>
<p><code><em><a href="Core.Fsm.html##(FSM_PROCESS)">Core.Fsm#FSM_PROCESS</a> Fsm </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetTimeOut" >
<strong>TASK:SetTimeOut(Timer)</strong>
</a>
</dt>
<dd>
<p>Sets the TimeOut for the <a href="Task.html">Task</a>.</p>
<p>If <a href="Task.html">Task</a> stayed planned for longer than TimeOut, it gets into Cancelled status.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(integer)">#integer</a> Timer </em></code>:
in seconds</p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetType" >
<strong>TASK:SetType(TaskType)</strong>
</a>
</dt>
<dd>
<p>Sets the Type of the Task</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#string TaskType </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).SetUnitProcess" >
<strong>TASK:SetUnitProcess(Core, FsmTemplate)</strong>
</a>
</dt>
<dd>
<p>Sets the Task FSM Process Template</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em> Core </em></code>:
Fsm#FSM_PROCESS</p>
</li>
<li>
<p><code><em> FsmTemplate </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StateAborted" >
<strong>TASK:StateAborted()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Aborted</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StateAssigned" >
<strong>TASK:StateAssigned()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Assigned</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StateCancelled" >
<strong>TASK:StateCancelled()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Cancelled</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StateFailed" >
<strong>TASK:StateFailed()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Failed</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StateHold" >
<strong>TASK:StateHold()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Hold</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StatePlanned" >
<strong>TASK:StatePlanned()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Planned</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StateReplanned" >
<strong>TASK:StateReplanned()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Replanned</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).StateSuccess" >
<strong>TASK:StateSuccess()</strong>
</a>
</dt>
<dd>
<p>Sets a <a href="Task.html">Task</a> to status <strong>Success</strong>.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).Success" >
<strong>TASK:Success()</strong>
</a>
</dt>
<dd>
<p>FSM Success synchronous event function for TASK.</p>
<p>Use this event to make the Task a Success.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).TaskBriefing" >
<strong>TASK.TaskBriefing</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).TaskID" >
<strong>TASK.TaskID</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).TaskInfo" >
<strong>TASK.TaskInfo</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).TaskName" >
<strong>TASK.TaskName</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).TaskProgress" >
<strong>TASK.TaskProgress</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Core.Scheduler.html##(SCHEDULER)">Core.Scheduler#SCHEDULER</a></em>
<a id="#(TASK).TaskScheduler" >
<strong>TASK.TaskScheduler</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).TaskType" >
<strong>TASK.TaskType</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(TASK).TimeOut" >
<strong>TASK.TimeOut</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).UnAssignFromGroup" >
<strong>TASK:UnAssignFromGroup(TaskGroup)</strong>
</a>
</dt>
<dd>
<p>UnAssign the <a href="Task.html">Task</a> from a <a href="Group.html">Group</a>.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> TaskGroup </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).UnAssignFromGroups" >
<strong>TASK:UnAssignFromGroups()</strong>
</a>
</dt>
<dd>
<p>UnAssign the <a href="Task.html">Task</a> from the <a href="Group.html">Group</a>s.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).UnAssignFromUnit" >
<strong>TASK:UnAssignFromUnit(TaskUnit)</strong>
</a>
</dt>
<dd>
<p>UnAssign the <a href="Task.html">Task</a> from an alive <a href="Unit.html">Unit</a>.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> TaskUnit </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(TASK)">#TASK</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).__Abort" >
<strong>TASK:__Abort()</strong>
</a>
</dt>
<dd>
<p>FSM Abort asynchronous event function for TASK.</p>
<p>Use this event to Abort the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).__Cancel" >
<strong>TASK:__Cancel()</strong>
</a>
</dt>
<dd>
<p>FSM Cancel asynchronous event function for TASK.</p>
<p>Use this event to Cancel the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).__Fail" >
<strong>TASK:__Fail()</strong>
</a>
</dt>
<dd>
<p>FSM Fail asynchronous event function for TASK.</p>
<p>Use this event to Fail the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).__Goal" >
<strong>TASK:__Goal(Delay, PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>Goal Asynchronous Trigger for TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#number Delay </em></code>: </p>
</li>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> PlayerUnit </em></code>:
The <a href="Unit.html">Unit</a> of the player.</p>
</li>
<li>
<p><code><em>#string PlayerName </em></code>:
The name of the player.</p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).__Replan" >
<strong>TASK:__Replan()</strong>
</a>
</dt>
<dd>
<p>FSM Replan asynchronous event function for TASK.</p>
<p>Use this event to Replan the Task.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).__Success" >
<strong>TASK:__Success()</strong>
</a>
</dt>
<dd>
<p>FSM Success asynchronous event function for TASK.</p>
<p>Use this event to make the Task a Success.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onafterReplan" >
<strong>TASK:onafterReplan(From, Event, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onbeforeTimeOut" >
<strong>TASK:onbeforeTimeOut(Event, From, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onenterAborted" >
<strong>TASK:onenterAborted(From, Event, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onenterAssigned" >
<strong>TASK:onenterAssigned(Event, From, To, PlayerUnit, PlayerName)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
<li>
<p><code><em> PlayerUnit </em></code>: </p>
</li>
<li>
<p><code><em> PlayerName </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onenterCancelled" >
<strong>TASK:onenterCancelled(From, Event, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onenterFailed" >
<strong>TASK:onenterFailed(From, Event, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onenterPlanned" >
<strong>TASK:onenterPlanned(Event, From, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onenterSuccess" >
<strong>TASK:onenterSuccess(Event, From, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(TASK).onstatechange" >
<strong>TASK:onstatechange(Event, From, To)</strong>
</a>
</dt>
<dd>
<p>FSM function for a TASK</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#string Event </em></code>: </p>
</li>
<li>
<p><code><em>#string From </em></code>: </p>
</li>
<li>
<p><code><em>#string To </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<h2><a id="#(integer)" >Type <code>integer</code></a></h2>
<h2><a id="#(map)" >Type <code>map</code></a></h2>
</div>
</div>
</body>
</html>