MOOSE/docs/Documentation/Detection.html
2016-12-23 06:58:47 +01:00

2160 lines
53 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_Balancer.html">AI_Balancer</a></li>
<li><a href="Account.html">Account</a></li>
<li><a href="Airbase.html">Airbase</a></li>
<li><a href="AirbasePolice.html">AirbasePolice</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="Database.html">Database</a></li>
<li>Detection</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="Group.html">Group</a></li>
<li><a href="Identifiable.html">Identifiable</a></li>
<li><a href="MOVEMENT.html">MOVEMENT</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="Object.html">Object</a></li>
<li><a href="Patrol.html">Patrol</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="Route.html">Route</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="Smoke.html">Smoke</a></li>
<li><a href="Spawn.html">Spawn</a></li>
<li><a href="Static.html">Static</a></li>
<li><a href="Task.html">Task</a></li>
<li><a href="Task_A2G.html">Task_A2G</a></li>
<li><a href="Task_PICKUP.html">Task_PICKUP</a></li>
<li><a href="Task_SEAD.html">Task_SEAD</a></li>
<li><a href="Unit.html">Unit</a></li>
<li><a href="Utils.html">Utils</a></li>
<li><a href="Zone.html">Zone</a></li>
<li><a href="routines.html">routines</a></li>
</ul>
</div>
<div id="content">
<h1>Module <code>Detection</code></h1>
<p> This module contains the DETECTION classes.</p>
<h1> </h1>
<h1> 1) <a href="Functional.Detection.html##(DETECTION_BASE)">Functional.Detection#DETECTION_BASE</a> class, extends <a href="Core.Base.html##(BASE)">Core.Base#BASE</a></h1>
<p> The <a href="Functional.Detection.html##(DETECTION_BASE)">Functional.Detection#DETECTION_BASE</a> class defines the core functions to administer detected objects.
The <a href="Functional.Detection.html##(DETECTION_BASE)">Functional.Detection#DETECTION_BASE</a> class will detect objects within the battle zone for a list of <a href="Group.html">Group</a>s detecting targets following (a) detection method(s).</p>
<h2> 1.1) DETECTION_BASE constructor</h2>
<p> Construct a new DETECTION_BASE instance using the <a href="Functional.Detection.html##(DETECTION_BASE).New">Functional.Detection#DETECTION_BASE.New</a>() method.</p>
<h2> 1.2) DETECTION_BASE initialization</h2>
<p> By default, detection will return detected objects with all the detection sensors available.
However, you can ask how the objects were found with specific detection methods.
If you use one of the below methods, the detection will work with the detection method specified.
You can specify to apply multiple detection methods.</p>
<p> Use the following functions to report the objects it detected using the methods Visual, Optical, Radar, IRST, RWR, DLINK:</p>
<ul>
<li><a href="Functional.Detection.html##(DETECTION_BASE).InitDetectVisual">Functional.Detection#DETECTION_BASE.InitDetectVisual</a>(): Detected using Visual.</li>
<li><a href="Functional.Detection.html##(DETECTION_BASE).InitDetectOptical">Functional.Detection#DETECTION_BASE.InitDetectOptical</a>(): Detected using Optical.</li>
<li><a href="Functional.Detection.html##(DETECTION_BASE).InitDetectRadar">Functional.Detection#DETECTION_BASE.InitDetectRadar</a>(): Detected using Radar.</li>
<li><a href="Functional.Detection.html##(DETECTION_BASE).InitDetectIRST">Functional.Detection#DETECTION_BASE.InitDetectIRST</a>(): Detected using IRST.</li>
<li><a href="Functional.Detection.html##(DETECTION_BASE).InitDetectRWR">Functional.Detection#DETECTION_BASE.InitDetectRWR</a>(): Detected using RWR.</li>
<li><a href="Functional.Detection.html##(DETECTION_BASE).InitDetectDLINK">Functional.Detection#DETECTION_BASE.InitDetectDLINK</a>(): Detected using DLINK.</li>
</ul>
<h2> 1.3) Obtain objects detected by DETECTION_BASE</h2>
<p> DETECTION_BASE builds <a href="Set.html">Set</a>s of objects detected. These <a href="Core.Set.html##(SET_BASE)">Core.Set#SET_BASE</a>s can be retrieved using the method <a href="Functional.Detection.html##(DETECTION_BASE).GetDetectedSets">Functional.Detection#DETECTION_BASE.GetDetectedSets</a>().
The method will return a list (table) of <a href="Core.Set.html##(SET_BASE)">Core.Set#SET_BASE</a> objects.</p>
<hr/>
<h1> 2) <a href="Functional.Detection.html##(DETECTION_AREAS)">Functional.Detection#DETECTION_AREAS</a> class, extends <a href="Functional.Detection.html##(DETECTION_BASE)">Functional.Detection#DETECTION_BASE</a></h1>
<p> The <a href="Functional.Detection.html##(DETECTION_AREAS)">Functional.Detection#DETECTION_AREAS</a> class will detect units within the battle zone for a list of <a href="Group.html">Group</a>s detecting targets following (a) detection method(s),
and will build a list (table) of <a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a>s containing the <a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a>s detected.
The class is group the detected units within zones given a DetectedZoneRange parameter.
A set with multiple detected zones will be created as there are groups of units detected.</p>
<h2> 2.1) Retrieve the Detected Unit sets and Detected Zones</h2>
<p> The DetectedUnitSets methods are implemented in <a href="Functional.Detection.html##(DECTECTION_BASE)">Functional.Detection#DECTECTION_BASE</a> and the DetectedZones methods is implemented in <a href="Functional.Detection.html##(DETECTION_AREAS)">Functional.Detection#DETECTION_AREAS</a>.</p>
<p> Retrieve the DetectedUnitSets with the method <a href="Functional.Detection.html##(DETECTION_BASE).GetDetectedSets">Functional.Detection#DETECTION_BASE.GetDetectedSets</a>(). A table will be return of <a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a>s.
To understand the amount of sets created, use the method <a href="Functional.Detection.html##(DETECTION_BASE).GetDetectedSetCount">Functional.Detection#DETECTION_BASE.GetDetectedSetCount</a>().
If you want to obtain a specific set from the DetectedSets, use the method <a href="Functional.Detection.html##(DETECTION_BASE).GetDetectedSet">Functional.Detection#DETECTION_BASE.GetDetectedSet</a>() with a given index.</p>
<p> Retrieve the formed <a href="Zone.html">Zone</a>s as a result of the grouping the detected units within the DetectionZoneRange, use the method <a href="Functional.Detection.html##(DETECTION_BASE).GetDetectionZones">Functional.Detection#DETECTION_BASE.GetDetectionZones</a>().
To understand the amount of zones created, use the method <a href="Functional.Detection.html##(DETECTION_BASE).GetDetectionZoneCount">Functional.Detection#DETECTION_BASE.GetDetectionZoneCount</a>().
If you want to obtain a specific zone from the DetectedZones, use the method <a href="Functional.Detection.html##(DETECTION_BASE).GetDetectionZone">Functional.Detection#DETECTION_BASE.GetDetectionZone</a>() with a given index.</p>
<h2> 1.4) Flare or Smoke detected units</h2>
<p> Use the methods <a href="Functional.Detection.html##(DETECTION_AREAS).FlareDetectedUnits">Functional.Detection#DETECTION_AREAS.FlareDetectedUnits</a>() or <a href="Functional.Detection.html##(DETECTION_AREAS).SmokeDetectedUnits">Functional.Detection#DETECTION_AREAS.SmokeDetectedUnits</a>() to flare or smoke the detected units when a new detection has taken place.</p>
<h2> 1.5) Flare or Smoke detected zones</h2>
<p> Use the methods <a href="Functional.Detection.html##(DETECTION_AREAS).FlareDetectedZones">Functional.Detection#DETECTION_AREAS.FlareDetectedZones</a>() or <a href="Functional.Detection.html##(DETECTION_AREAS).SmokeDetectedZones">Functional.Detection#DETECTION_AREAS.SmokeDetectedZones</a>() to flare or smoke the detected zones when a new detection has taken place.</p>
<hr/>
<p> ### Contributions: </p>
<ul>
<li>Mechanist : Concept &amp; Testing</li>
</ul>
<p> ### Authors: </p>
<ul>
<li>FlightControl : Design &amp; Programming
</li>
</ul>
<h2>Global(s)</h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="#DETECTION_AREAS">DETECTION_AREAS</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="#DETECTION_BASE">DETECTION_BASE</a></td>
<td class="summary">
</td>
</tr>
</table>
<h2><a id="#(DETECTION_AREAS)">Type <code>DETECTION_AREAS</code></a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).AcceptChanges">DETECTION_AREAS:AcceptChanges(DetectedArea)</a></td>
<td class="summary">
<p>Accepts changes from the detected zone.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).AddChangeArea">DETECTION_AREAS:AddChangeArea(DetectedArea, ChangeCode, AreaUnitType)</a></td>
<td class="summary">
<p>Add a change to the detected zone.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).AddChangeUnit">DETECTION_AREAS:AddChangeUnit(DetectedArea, ChangeCode, ChangeUnitType)</a></td>
<td class="summary">
<p>Add a change to the detected zone.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).AddDetectedArea">DETECTION_AREAS.AddDetectedArea(Set, Zone, self)</a></td>
<td class="summary">
<p>Add a detected <a href="##(DETECTION_AREAS).DetectedArea">DETECTION_AREAS.DetectedArea</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).CalculateThreatLevelA2G">DETECTION_AREAS:CalculateThreatLevelA2G(DetectedArea)</a></td>
<td class="summary">
<p>Calculate the maxium A2G threat level of the DetectedArea.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).ClassName">DETECTION_AREAS.ClassName</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).CreateDetectionSets">DETECTION_AREAS:CreateDetectionSets()</a></td>
<td class="summary">
<p>Make a DetectionSet table.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).DetectedAreas">DETECTION_AREAS.DetectedAreas</a></td>
<td class="summary">
<p>A list of areas containing the set of <a href="Unit.html">Unit</a>s, <a href="Zone.html">Zone</a>s, the center <a href="Unit.html">Unit</a> within the zone, and ID of each area that was detected within a DetectionZoneRange.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).DetectionZoneRange">DETECTION_AREAS.DetectionZoneRange</a></td>
<td class="summary">
<p>The range till which targets are grouped upon the first detected target.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).FlareDetectedUnits">DETECTION_AREAS:FlareDetectedUnits()</a></td>
<td class="summary">
<p>Flare the detected units</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).FlareDetectedZones">DETECTION_AREAS:FlareDetectedZones()</a></td>
<td class="summary">
<p>Flare the detected zones</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).GetChangeText">DETECTION_AREAS:GetChangeText(DetectedArea)</a></td>
<td class="summary">
<p>Make text documenting the changes of the detected zone.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).GetDetectedAreaCount">DETECTION_AREAS:GetDetectedAreaCount()</a></td>
<td class="summary">
<p>Get the amount of <a href="##(DETECTION_AREAS).DetectedAreas">DETECTION_AREAS.DetectedAreas</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).GetDetectedAreas">DETECTION_AREAS:GetDetectedAreas()</a></td>
<td class="summary">
<p>Get the detected <a href="##(DETECTION_AREAS).DetectedAreas">DETECTION_AREAS.DetectedAreas</a>.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).GetDetectedSet">DETECTION_AREAS:GetDetectedSet(Index)</a></td>
<td class="summary">
<p>Get the <a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a> of a detecttion area using a given numeric index.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).GetDetectedZone">DETECTION_AREAS:GetDetectedZone(Index)</a></td>
<td class="summary">
<p>Get the <a href="Core.Zone.html##(ZONE_UNIT)">Core.Zone#ZONE_UNIT</a> of a detection area using a given numeric index.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).GetTreatLevelA2G">DETECTION_AREAS:GetTreatLevelA2G(DetectedArea)</a></td>
<td class="summary">
<p>Returns the A2G threat level of the units in the DetectedArea</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).IsFriendliesNearBy">DETECTION_AREAS:IsFriendliesNearBy(DetectedArea)</a></td>
<td class="summary">
<p>Returns if there are friendlies nearby the FAC units ...</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).NearestFAC">DETECTION_AREAS:NearestFAC(DetectedArea)</a></td>
<td class="summary">
<p>Find the nearest FAC of the DetectedArea.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).New">DETECTION_AREAS:New(DetectionSetGroup, DetectionRange, DetectionZoneRange)</a></td>
<td class="summary">
<p>DETECTION_AREAS constructor.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).RemoveDetectedArea">DETECTION_AREAS:RemoveDetectedArea(Index)</a></td>
<td class="summary">
<p>Remove a detected <a href="##(DETECTION_AREAS).DetectedArea">DETECTION_AREAS.DetectedArea</a> with a given Index.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).ReportFriendliesNearBy">DETECTION_AREAS:ReportFriendliesNearBy(ReportUnit, ReportGroupData)</a></td>
<td class="summary">
<p>Background worker function to determine if there are friendlies nearby ...</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).SmokeDetectedUnits">DETECTION_AREAS:SmokeDetectedUnits()</a></td>
<td class="summary">
<p>Smoke the detected units</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).SmokeDetectedZones">DETECTION_AREAS:SmokeDetectedZones()</a></td>
<td class="summary">
<p>Smoke the detected zones</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS)._FlareDetectedUnits">DETECTION_AREAS._FlareDetectedUnits</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS)._FlareDetectedZones">DETECTION_AREAS._FlareDetectedZones</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS)._SmokeDetectedUnits">DETECTION_AREAS._SmokeDetectedUnits</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS)._SmokeDetectedZones">DETECTION_AREAS._SmokeDetectedZones</a></td>
<td class="summary">
</td>
</tr>
</table>
<h2><a id="#(DETECTION_AREAS.DetectedArea)">Type <code>DETECTION_AREAS.DetectedArea</code></a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).AreaID">DETECTION_AREAS.DetectedArea.AreaID</a></td>
<td class="summary">
<p>-- The identifier of the detected area.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).Changed">DETECTION_AREAS.DetectedArea.Changed</a></td>
<td class="summary">
<p>Documents if the detected area has changes.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).Changes">DETECTION_AREAS.DetectedArea.Changes</a></td>
<td class="summary">
<p>A list of the changes reported on the detected area. (It is up to the user of the detected area to consume those changes).</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).FriendliesNearBy">DETECTION_AREAS.DetectedArea.FriendliesNearBy</a></td>
<td class="summary">
<p>Indicates if there are friendlies within the detected area.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).MaxThreatLevelA2G">DETECTION_AREAS.DetectedArea.MaxThreatLevelA2G</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).NearestFAC">DETECTION_AREAS.DetectedArea.NearestFAC</a></td>
<td class="summary">
<p>The nearest FAC near the Area.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).Set">DETECTION_AREAS.DetectedArea.Set</a></td>
<td class="summary">
<p>-- The Set of Units in the detected area.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS.DetectedArea).Zone">DETECTION_AREAS.DetectedArea.Zone</a></td>
<td class="summary">
<p>-- The Zone of the detected area.</p>
</td>
</tr>
</table>
<h2><a id="#(DETECTION_BASE)">Type <code>DETECTION_BASE</code></a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).ClassName">DETECTION_BASE.ClassName</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).CreateDetectionSets">DETECTION_BASE:CreateDetectionSets()</a></td>
<td class="summary">
<p>Make a DetectionSet table.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectDLINK">DETECTION_BASE.DetectDLINK</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectIRST">DETECTION_BASE.DetectIRST</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectOptical">DETECTION_BASE.DetectOptical</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectRWR">DETECTION_BASE.DetectRWR</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectRadar">DETECTION_BASE.DetectRadar</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectVisual">DETECTION_BASE.DetectVisual</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectedObjects">DETECTION_BASE.DetectedObjects</a></td>
<td class="summary">
<p>The list of detected objects.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectedObjectsIdentified">DETECTION_BASE.DetectedObjectsIdentified</a></td>
<td class="summary">
<p>Map of the DetectedObjects identified.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectionRange">DETECTION_BASE.DetectionRange</a></td>
<td class="summary">
<p>The range till which targets are accepted to be detected.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectionRun">DETECTION_BASE.DetectionRun</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectionScheduler">DETECTION_BASE.DetectionScheduler</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectionSetGroup">DETECTION_BASE.DetectionSetGroup</a></td>
<td class="summary">
<p>The <a href="Set.html">Set</a> of GROUPs in the Forward Air Controller role.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectedObject">DETECTION_BASE:GetDetectedObject(ObjectName)</a></td>
<td class="summary">
<p>Gets a detected object with a given name.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectedSet">DETECTION_BASE:GetDetectedSet(Index)</a></td>
<td class="summary">
<p>Get a SET of detected objects using a given numeric index.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectedSetCount">DETECTION_BASE:GetDetectedSetCount()</a></td>
<td class="summary">
<p>Get the amount of SETs with detected objects.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectedSets">DETECTION_BASE:GetDetectedSets()</a></td>
<td class="summary">
<p>Get the detected <a href="Core.Set.html##(SET_BASE)">Core.Set#SET_BASE</a>s.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectionSetGroup">DETECTION_BASE:GetDetectionSetGroup()</a></td>
<td class="summary">
<p>Get the detection Groups.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).IdentifyDetectedObject">DETECTION_BASE:IdentifyDetectedObject(DetectedObject)</a></td>
<td class="summary">
<p>Identifies a detected object during detection processing.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).InitDetectDLINK">DETECTION_BASE:InitDetectDLINK(DetectDLINK)</a></td>
<td class="summary">
<p>Detect DLINK.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).InitDetectIRST">DETECTION_BASE:InitDetectIRST(DetectIRST)</a></td>
<td class="summary">
<p>Detect IRST.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).InitDetectOptical">DETECTION_BASE:InitDetectOptical(DetectOptical)</a></td>
<td class="summary">
<p>Detect Optical.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).InitDetectRWR">DETECTION_BASE:InitDetectRWR(DetectRWR)</a></td>
<td class="summary">
<p>Detect RWR.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).InitDetectRadar">DETECTION_BASE:InitDetectRadar(DetectRadar)</a></td>
<td class="summary">
<p>Detect Radar.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).InitDetectVisual">DETECTION_BASE:InitDetectVisual(DetectVisual)</a></td>
<td class="summary">
<p>Detect Visual.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).IsDetectedObjectIdentified">DETECTION_BASE:IsDetectedObjectIdentified(DetectedObject)</a></td>
<td class="summary">
<p>Determines if a detected object has already been identified during detection processing.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).New">DETECTION_BASE:New(DetectionSetGroup, DetectionRange)</a></td>
<td class="summary">
<p>DETECTION constructor.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).Schedule">DETECTION_BASE:Schedule(DelayTime, RepeatInterval)</a></td>
<td class="summary">
<p>Schedule the DETECTION construction.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).ScheduleDelayTime">DETECTION_BASE.ScheduleDelayTime</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).ScheduleRepeatInterval">DETECTION_BASE.ScheduleRepeatInterval</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).UnIdentifyAllDetectedObjects">DETECTION_BASE:UnIdentifyAllDetectedObjects()</a></td>
<td class="summary">
<p>UnIdentify all detected objects during detection processing.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).UnIdentifyDetectedObject">DETECTION_BASE:UnIdentifyDetectedObject(DetectedObject)</a></td>
<td class="summary">
<p>UnIdentify a detected object during detection processing.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE)._DetectionScheduler">DETECTION_BASE:_DetectionScheduler(SchedulerName)</a></td>
<td class="summary">
<p>Form <a href="Set.html">Set</a>s of detected <a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a>s in an array of <a href="Core.Set.html##(SET_BASE)">Core.Set#SET_BASE</a>s.</p>
</td>
</tr>
</table>
<h2><a id="#(DETECTION_BASE.DetectedObject)">Type <code>DETECTION_BASE.DetectedObject</code></a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).Distance">DETECTION_BASE.DetectedObject.Distance</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).Identified">DETECTION_BASE.DetectedObject.Identified</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).Name">DETECTION_BASE.DetectedObject.Name</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).Type">DETECTION_BASE.DetectedObject.Type</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).Visible">DETECTION_BASE.DetectedObject.Visible</a></td>
<td class="summary">
</td>
</tr>
</table>
<h2>Global(s)</h2>
<dl class="function">
<dt>
<em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a></em>
<a id="DETECTION_AREAS" >
<strong>DETECTION_AREAS</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a></em>
<a id="DETECTION_BASE" >
<strong>DETECTION_BASE</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<h2><a id="#(Detection)" >Type <code>Detection</code></a></h2>
<h2><a id="#(DETECTION_AREAS)" >Type <code>DETECTION_AREAS</code></a></h2>
<p>DETECTION_AREAS class</p>
<h3>Field(s)</h3>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).AcceptChanges" >
<strong>DETECTION_AREAS:AcceptChanges(DetectedArea)</strong>
</a>
</dt>
<dd>
<p>Accepts changes from the detected zone.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a> DetectedArea </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).AddChangeArea" >
<strong>DETECTION_AREAS:AddChangeArea(DetectedArea, ChangeCode, AreaUnitType)</strong>
</a>
</dt>
<dd>
<p>Add a change to the detected zone.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a> DetectedArea </em></code>: </p>
</li>
<li>
<p><code><em>#string ChangeCode </em></code>: </p>
</li>
<li>
<p><code><em> AreaUnitType </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).AddChangeUnit" >
<strong>DETECTION_AREAS:AddChangeUnit(DetectedArea, ChangeCode, ChangeUnitType)</strong>
</a>
</dt>
<dd>
<p>Add a change to the detected zone.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a> DetectedArea </em></code>: </p>
</li>
<li>
<p><code><em>#string ChangeCode </em></code>: </p>
</li>
<li>
<p><code><em>#string ChangeUnitType </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).AddDetectedArea" >
<strong>DETECTION_AREAS.AddDetectedArea(Set, Zone, self)</strong>
</a>
</dt>
<dd>
<p>Add a detected <a href="##(DETECTION_AREAS).DetectedArea">DETECTION_AREAS.DetectedArea</a>.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a> Set </em></code>:
-- The Set of Units in the detected area.</p>
</li>
<li>
<p><code><em><a href="Core.Zone.html##(ZONE_UNIT)">Core.Zone#ZONE_UNIT</a> Zone </em></code>:
-- The Zone of the detected area.</p>
</li>
<li>
<p><code><em> self </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a>:</em>
DetectedArea</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).CalculateThreatLevelA2G" >
<strong>DETECTION_AREAS:CalculateThreatLevelA2G(DetectedArea)</strong>
</a>
</dt>
<dd>
<p>Calculate the maxium A2G threat level of the DetectedArea.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a> DetectedArea </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<em>#string</em>
<a id="#(DETECTION_AREAS).ClassName" >
<strong>DETECTION_AREAS.ClassName</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).CreateDetectionSets" >
<strong>DETECTION_AREAS:CreateDetectionSets()</strong>
</a>
</dt>
<dd>
<p>Make a DetectionSet table.</p>
<p>This function will be overridden in the derived clsses.</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="##(DETECTION_AREAS.DetectedAreas)">#DETECTION_AREAS.DetectedAreas</a></em>
<a id="#(DETECTION_AREAS).DetectedAreas" >
<strong>DETECTION_AREAS.DetectedAreas</strong>
</a>
</dt>
<dd>
<p>A list of areas containing the set of <a href="Unit.html">Unit</a>s, <a href="Zone.html">Zone</a>s, the center <a href="Unit.html">Unit</a> within the zone, and ID of each area that was detected within a DetectionZoneRange.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a></em>
<a id="#(DETECTION_AREAS).DetectionZoneRange" >
<strong>DETECTION_AREAS.DetectionZoneRange</strong>
</a>
</dt>
<dd>
<p>The range till which targets are grouped upon the first detected target.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).FlareDetectedUnits" >
<strong>DETECTION_AREAS:FlareDetectedUnits()</strong>
</a>
</dt>
<dd>
<p>Flare the detected units</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).FlareDetectedZones" >
<strong>DETECTION_AREAS:FlareDetectedZones()</strong>
</a>
</dt>
<dd>
<p>Flare the detected zones</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).GetChangeText" >
<strong>DETECTION_AREAS:GetChangeText(DetectedArea)</strong>
</a>
</dt>
<dd>
<p>Make text documenting the changes of the detected zone.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a> DetectedArea </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#string:</em>
The Changes text</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).GetDetectedAreaCount" >
<strong>DETECTION_AREAS:GetDetectedAreaCount()</strong>
</a>
</dt>
<dd>
<p>Get the amount of <a href="##(DETECTION_AREAS).DetectedAreas">DETECTION_AREAS.DetectedAreas</a>.</p>
<h3>Return value</h3>
<p><em>#number:</em>
DetectedAreaCount</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).GetDetectedAreas" >
<strong>DETECTION_AREAS:GetDetectedAreas()</strong>
</a>
</dt>
<dd>
<p>Get the detected <a href="##(DETECTION_AREAS).DetectedAreas">DETECTION_AREAS.DetectedAreas</a>.</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS.DetectedAreas)">#DETECTION_AREAS.DetectedAreas</a>:</em>
DetectedAreas</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).GetDetectedSet" >
<strong>DETECTION_AREAS:GetDetectedSet(Index)</strong>
</a>
</dt>
<dd>
<p>Get the <a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a> of a detecttion area using a given numeric index.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#number Index </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a>:</em>
DetectedSet</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).GetDetectedZone" >
<strong>DETECTION_AREAS:GetDetectedZone(Index)</strong>
</a>
</dt>
<dd>
<p>Get the <a href="Core.Zone.html##(ZONE_UNIT)">Core.Zone#ZONE_UNIT</a> of a detection area using a given numeric index.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#number Index </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Core.Zone.html##(ZONE_UNIT)">Core.Zone#ZONE_UNIT</a>:</em>
DetectedZone</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).GetTreatLevelA2G" >
<strong>DETECTION_AREAS:GetTreatLevelA2G(DetectedArea)</strong>
</a>
</dt>
<dd>
<p>Returns the A2G threat level of the units in the DetectedArea</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a> DetectedArea </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#number:</em>
a scale from 0 to 10. </p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).IsFriendliesNearBy" >
<strong>DETECTION_AREAS:IsFriendliesNearBy(DetectedArea)</strong>
</a>
</dt>
<dd>
<p>Returns if there are friendlies nearby the FAC units ...</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> DetectedArea </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#boolean:</em>
trhe if there are friendlies nearby </p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).NearestFAC" >
<strong>DETECTION_AREAS:NearestFAC(DetectedArea)</strong>
</a>
</dt>
<dd>
<p>Find the nearest FAC of the DetectedArea.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_AREAS.DetectedArea)">#DETECTION_AREAS.DetectedArea</a> DetectedArea </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a>:</em>
The nearest FAC unit</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).New" >
<strong>DETECTION_AREAS:New(DetectionSetGroup, DetectionRange, DetectionZoneRange)</strong>
</a>
</dt>
<dd>
<p>DETECTION_AREAS constructor.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Core.Set.html##(SET_GROUP)">Core.Set#SET_GROUP</a> DetectionSetGroup </em></code>:
The <a href="Set.html">Set</a> of GROUPs in the Forward Air Controller role.</p>
</li>
<li>
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> DetectionRange </em></code>:
The range till which targets are accepted to be detected.</p>
</li>
<li>
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> DetectionZoneRange </em></code>:
The range till which targets are grouped upon the first detected target.</p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Functional.Detection.html##(DETECTION_AREAS)">Functional.Detection#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).RemoveDetectedArea" >
<strong>DETECTION_AREAS:RemoveDetectedArea(Index)</strong>
</a>
</dt>
<dd>
<p>Remove a detected <a href="##(DETECTION_AREAS).DetectedArea">DETECTION_AREAS.DetectedArea</a> with a given Index.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#number Index </em></code>:
The Index of the detection are to be removed.</p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#nil:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).ReportFriendliesNearBy" >
<strong>DETECTION_AREAS:ReportFriendliesNearBy(ReportUnit, ReportGroupData)</strong>
</a>
</dt>
<dd>
<p>Background worker function to determine if there are friendlies nearby ...</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a> ReportUnit </em></code>: </p>
</li>
<li>
<p><code><em> ReportGroupData </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).SmokeDetectedUnits" >
<strong>DETECTION_AREAS:SmokeDetectedUnits()</strong>
</a>
</dt>
<dd>
<p>Smoke the detected units</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_AREAS).SmokeDetectedZones" >
<strong>DETECTION_AREAS:SmokeDetectedZones()</strong>
</a>
</dt>
<dd>
<p>Smoke the detected zones</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_AREAS)._FlareDetectedUnits" >
<strong>DETECTION_AREAS._FlareDetectedUnits</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_AREAS)._FlareDetectedZones" >
<strong>DETECTION_AREAS._FlareDetectedZones</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_AREAS)._SmokeDetectedUnits" >
<strong>DETECTION_AREAS._SmokeDetectedUnits</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_AREAS)._SmokeDetectedZones" >
<strong>DETECTION_AREAS._SmokeDetectedZones</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<h2><a id="#(DETECTION_AREAS.DetectedArea)" >Type <code>DETECTION_AREAS.DetectedArea</code></a></h2>
<h3>Field(s)</h3>
<dl class="function">
<dt>
<em>#number</em>
<a id="#(DETECTION_AREAS.DetectedArea).AreaID" >
<strong>DETECTION_AREAS.DetectedArea.AreaID</strong>
</a>
</dt>
<dd>
<p>-- The identifier of the detected area.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_AREAS.DetectedArea).Changed" >
<strong>DETECTION_AREAS.DetectedArea.Changed</strong>
</a>
</dt>
<dd>
<p>Documents if the detected area has changes.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em>#table</em>
<a id="#(DETECTION_AREAS.DetectedArea).Changes" >
<strong>DETECTION_AREAS.DetectedArea.Changes</strong>
</a>
</dt>
<dd>
<p>A list of the changes reported on the detected area. (It is up to the user of the detected area to consume those changes).</p>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_AREAS.DetectedArea).FriendliesNearBy" >
<strong>DETECTION_AREAS.DetectedArea.FriendliesNearBy</strong>
</a>
</dt>
<dd>
<p>Indicates if there are friendlies within the detected area.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_AREAS.DetectedArea).MaxThreatLevelA2G" >
<strong>DETECTION_AREAS.DetectedArea.MaxThreatLevelA2G</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a></em>
<a id="#(DETECTION_AREAS.DetectedArea).NearestFAC" >
<strong>DETECTION_AREAS.DetectedArea.NearestFAC</strong>
</a>
</dt>
<dd>
<p>The nearest FAC near the Area.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a></em>
<a id="#(DETECTION_AREAS.DetectedArea).Set" >
<strong>DETECTION_AREAS.DetectedArea.Set</strong>
</a>
</dt>
<dd>
<p>-- The Set of Units in the detected area.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Core.Zone.html##(ZONE_UNIT)">Core.Zone#ZONE_UNIT</a></em>
<a id="#(DETECTION_AREAS.DetectedArea).Zone" >
<strong>DETECTION_AREAS.DetectedArea.Zone</strong>
</a>
</dt>
<dd>
<p>-- The Zone of the detected area.</p>
</dd>
</dl>
<h2><a id="#(DETECTION_AREAS.DetectedAreas)" >Type <code>DETECTION_AREAS.DetectedAreas</code></a></h2>
<h2><a id="#(DETECTION_BASE)" >Type <code>DETECTION_BASE</code></a></h2>
<p>DETECTION_BASE class</p>
<h3>Field(s)</h3>
<dl class="function">
<dt>
<em>#string</em>
<a id="#(DETECTION_BASE).ClassName" >
<strong>DETECTION_BASE.ClassName</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).CreateDetectionSets" >
<strong>DETECTION_BASE:CreateDetectionSets()</strong>
</a>
</dt>
<dd>
<p>Make a DetectionSet table.</p>
<p>This function will be overridden in the derived clsses.</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).DetectDLINK" >
<strong>DETECTION_BASE.DetectDLINK</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).DetectIRST" >
<strong>DETECTION_BASE.DetectIRST</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).DetectOptical" >
<strong>DETECTION_BASE.DetectOptical</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).DetectRWR" >
<strong>DETECTION_BASE.DetectRWR</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).DetectRadar" >
<strong>DETECTION_BASE.DetectRadar</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).DetectVisual" >
<strong>DETECTION_BASE.DetectVisual</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="##(DETECTION_BASE.DetectedObjects)">#DETECTION_BASE.DetectedObjects</a></em>
<a id="#(DETECTION_BASE).DetectedObjects" >
<strong>DETECTION_BASE.DetectedObjects</strong>
</a>
</dt>
<dd>
<p>The list of detected objects.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em>#table</em>
<a id="#(DETECTION_BASE).DetectedObjectsIdentified" >
<strong>DETECTION_BASE.DetectedObjectsIdentified</strong>
</a>
</dt>
<dd>
<p>Map of the DetectedObjects identified.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a></em>
<a id="#(DETECTION_BASE).DetectionRange" >
<strong>DETECTION_BASE.DetectionRange</strong>
</a>
</dt>
<dd>
<p>The range till which targets are accepted to be detected.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em>#number</em>
<a id="#(DETECTION_BASE).DetectionRun" >
<strong>DETECTION_BASE.DetectionRun</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).DetectionScheduler" >
<strong>DETECTION_BASE.DetectionScheduler</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em><a href="Core.Set.html##(SET_GROUP)">Core.Set#SET_GROUP</a></em>
<a id="#(DETECTION_BASE).DetectionSetGroup" >
<strong>DETECTION_BASE.DetectionSetGroup</strong>
</a>
</dt>
<dd>
<p>The <a href="Set.html">Set</a> of GROUPs in the Forward Air Controller role.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).GetDetectedObject" >
<strong>DETECTION_BASE:GetDetectedObject(ObjectName)</strong>
</a>
</dt>
<dd>
<p>Gets a detected object with a given name.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#string ObjectName </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE.DetectedObject)">#DETECTION_BASE.DetectedObject</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).GetDetectedSet" >
<strong>DETECTION_BASE:GetDetectedSet(Index)</strong>
</a>
</dt>
<dd>
<p>Get a SET of detected objects using a given numeric index.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#number Index </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="Core.Set.html##(SET_BASE)">Core.Set#SET_BASE</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).GetDetectedSetCount" >
<strong>DETECTION_BASE:GetDetectedSetCount()</strong>
</a>
</dt>
<dd>
<p>Get the amount of SETs with detected objects.</p>
<h3>Return value</h3>
<p><em>#number:</em>
Count</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).GetDetectedSets" >
<strong>DETECTION_BASE:GetDetectedSets()</strong>
</a>
</dt>
<dd>
<p>Get the detected <a href="Core.Set.html##(SET_BASE)">Core.Set#SET_BASE</a>s.</p>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE.DetectedSets)">#DETECTION_BASE.DetectedSets</a>:</em>
DetectedSets</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).GetDetectionSetGroup" >
<strong>DETECTION_BASE:GetDetectionSetGroup()</strong>
</a>
</dt>
<dd>
<p>Get the detection Groups.</p>
<h3>Return value</h3>
<p><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a>:</em></p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).IdentifyDetectedObject" >
<strong>DETECTION_BASE:IdentifyDetectedObject(DetectedObject)</strong>
</a>
</dt>
<dd>
<p>Identifies a detected object during detection processing.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_BASE.DetectedObject)">#DETECTION_BASE.DetectedObject</a> DetectedObject </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).InitDetectDLINK" >
<strong>DETECTION_BASE:InitDetectDLINK(DetectDLINK)</strong>
</a>
</dt>
<dd>
<p>Detect DLINK.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#boolean DetectDLINK </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).InitDetectIRST" >
<strong>DETECTION_BASE:InitDetectIRST(DetectIRST)</strong>
</a>
</dt>
<dd>
<p>Detect IRST.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#boolean DetectIRST </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).InitDetectOptical" >
<strong>DETECTION_BASE:InitDetectOptical(DetectOptical)</strong>
</a>
</dt>
<dd>
<p>Detect Optical.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#boolean DetectOptical </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).InitDetectRWR" >
<strong>DETECTION_BASE:InitDetectRWR(DetectRWR)</strong>
</a>
</dt>
<dd>
<p>Detect RWR.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#boolean DetectRWR </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).InitDetectRadar" >
<strong>DETECTION_BASE:InitDetectRadar(DetectRadar)</strong>
</a>
</dt>
<dd>
<p>Detect Radar.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#boolean DetectRadar </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).InitDetectVisual" >
<strong>DETECTION_BASE:InitDetectVisual(DetectVisual)</strong>
</a>
</dt>
<dd>
<p>Detect Visual.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em>#boolean DetectVisual </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).IsDetectedObjectIdentified" >
<strong>DETECTION_BASE:IsDetectedObjectIdentified(DetectedObject)</strong>
</a>
</dt>
<dd>
<p>Determines if a detected object has already been identified during detection processing.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_BASE.DetectedObject)">#DETECTION_BASE.DetectedObject</a> DetectedObject </em></code>: </p>
</li>
</ul>
<h3>Return value</h3>
<p><em>#boolean:</em>
true if already identified.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).New" >
<strong>DETECTION_BASE:New(DetectionSetGroup, DetectionRange)</strong>
</a>
</dt>
<dd>
<p>DETECTION constructor.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Core.Set.html##(SET_GROUP)">Core.Set#SET_GROUP</a> DetectionSetGroup </em></code>:
The <a href="Set.html">Set</a> of GROUPs in the Forward Air Controller role.</p>
</li>
<li>
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> DetectionRange </em></code>:
The range till which targets are accepted to be detected.</p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).Schedule" >
<strong>DETECTION_BASE:Schedule(DelayTime, RepeatInterval)</strong>
</a>
</dt>
<dd>
<p>Schedule the DETECTION construction.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em>#number DelayTime </em></code>:
The delay in seconds to wait the reporting.</p>
</li>
<li>
<p><code><em>#number RepeatInterval </em></code>:
The repeat interval in seconds for the reporting to happen repeatedly.</p>
</li>
</ul>
<h3>Return value</h3>
<p><em><a href="##(DETECTION_BASE)">#DETECTION_BASE</a>:</em>
self</p>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).ScheduleDelayTime" >
<strong>DETECTION_BASE.ScheduleDelayTime</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(DETECTION_BASE).ScheduleRepeatInterval" >
<strong>DETECTION_BASE.ScheduleRepeatInterval</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).UnIdentifyAllDetectedObjects" >
<strong>DETECTION_BASE:UnIdentifyAllDetectedObjects()</strong>
</a>
</dt>
<dd>
<p>UnIdentify all detected objects during detection processing.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE).UnIdentifyDetectedObject" >
<strong>DETECTION_BASE:UnIdentifyDetectedObject(DetectedObject)</strong>
</a>
</dt>
<dd>
<p>UnIdentify a detected object during detection processing.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em><a href="##(DETECTION_BASE.DetectedObject)">#DETECTION_BASE.DetectedObject</a> DetectedObject </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(DETECTION_BASE)._DetectionScheduler" >
<strong>DETECTION_BASE:_DetectionScheduler(SchedulerName)</strong>
</a>
</dt>
<dd>
<p>Form <a href="Set.html">Set</a>s of detected <a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a>s in an array of <a href="Core.Set.html##(SET_BASE)">Core.Set#SET_BASE</a>s.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> SchedulerName </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<h2><a id="#(DETECTION_BASE.DetectedObject)" >Type <code>DETECTION_BASE.DetectedObject</code></a></h2>
<h3>Field(s)</h3>
<dl class="function">
<dt>
<em>#number</em>
<a id="#(DETECTION_BASE.DetectedObject).Distance" >
<strong>DETECTION_BASE.DetectedObject.Distance</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_BASE.DetectedObject).Identified" >
<strong>DETECTION_BASE.DetectedObject.Identified</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#string</em>
<a id="#(DETECTION_BASE.DetectedObject).Name" >
<strong>DETECTION_BASE.DetectedObject.Name</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#string</em>
<a id="#(DETECTION_BASE.DetectedObject).Type" >
<strong>DETECTION_BASE.DetectedObject.Type</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#boolean</em>
<a id="#(DETECTION_BASE.DetectedObject).Visible" >
<strong>DETECTION_BASE.DetectedObject.Visible</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<h2><a id="#(DETECTION_BASE.DetectedObjects)" >Type <code>DETECTION_BASE.DetectedObjects</code></a></h2>
<h2><a id="#(DETECTION_BASE.DetectedSets)" >Type <code>DETECTION_BASE.DetectedSets</code></a></h2>
</div>
</div>
</body>
</html>