Module Detection

This module contains the DETECTION classes.

1) Detection#DETECTION_BASE class, extends Base#BASE

The Detection#DETECTION_BASE class defines the core functions to administer detected objects.

1.1) DETECTION_BASE constructor

Construct a new DETECTION_BASE instance using the Detection#DETECTION_BASE.New() method.

1.2) DETECTION_BASE initialization

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.

Use the following functions to report the objects it detected using the methods Visual, Optical, Radar, IRST, RWR, DLINK:

1.3) Obtain objects detected by DETECTION_BASE

DETECTION_BASE builds Sets of objects detected. These Set#SET_BASEs can be retrieved using the method Detection#DETECTION_BASE.GetDetectedSets(). The method will return a list (table) of Set#SET_BASE objects.


2) Detection#DETECTION_UNITGROUPS class, extends Detection#DETECTION_BASE

The Detection#DETECTION_UNITGROUPS class will detect units within the battle zone for a FAC group, and will build a list (table) of Set#SET_UNITs containing the Unit#UNITs 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.

2.1) Retrieve the Detected Unit sets and Detected Zones

The DetectedUnitSets methods are implemented in Detection#DECTECTION_BASE and the DetectedZones methods is implemented in Detection#DETECTION_UNITGROUPS.

Retrieve the DetectedUnitSets with the method Detection#DETECTION_BASE.GetDetectedSets(). A table will be return of Set#SET_UNITs. To understand the amount of sets created, use the method Detection#DETECTION_BASE.GetDetectedSetCount(). If you want to obtain a specific set from the DetectedSets, use the method Detection#DETECTION_BASE.GetDetectedSet() with a given index.

Retrieve the formed Zones as a result of the grouping the detected units within the DetectionZoneRange, use the method Detection#DETECTION_BASE.GetDetectionZones(). To understand the amount of zones created, use the method Detection#DETECTION_BASE.GetDetectionZoneCount(). If you want to obtain a specific zone from the DetectedZones, use the method Detection#DETECTION_BASE.GetDetectionZone() with a given index.

1.4) Flare or Smoke detected units

Use the methods Detection#DETECTION_UNITGROUPS.FlareDetectedUnits() or Detection#DETECTION_UNITGROUPS.SmokeDetectedUnits() to flare or smoke the detected units when a new detection has taken place.

1.5) Flare or Smoke detected zones

Use the methods Detection#DETECTION_UNITGROUPS.FlareDetectedZones() or Detection#DETECTION_UNITGROUPS.SmokeDetectedZones() to flare or smoke the detected zones when a new detection has taken place.


Global(s)

DETECTION_BASE
DETECTION_UNITGROUPS

Type DETECTION_BASE

DETECTION_BASE.ClassName
DETECTION_BASE:CreateDetectionSets()

Make a DetectionSet table.

DETECTION_BASE.DetectDLINK
DETECTION_BASE.DetectIRST
DETECTION_BASE.DetectOptical
DETECTION_BASE.DetectRWR
DETECTION_BASE.DetectRadar
DETECTION_BASE.DetectVisual
DETECTION_BASE.DetectedObjects
DETECTION_BASE.DetectedSets

A list of Set#SET_BASEs containing the objects in each set that were detected. The base class will not build the detected sets, but will leave that to the derived classes.

DETECTION_BASE.DetectedZones
DETECTION_BASE.DetectionRange

The range till which targets are accepted to be detected.

DETECTION_BASE.DetectionScheduler
DETECTION_BASE.FACGroup

The GROUP in the Forward Air Controller role.

DETECTION_BASE:GetDetectedSet(Index)

Get a SET of detected objects using a given numeric index.

DETECTION_BASE:GetDetectedSetCount()

Get the amount of SETs with detected objects.

DETECTION_BASE:GetDetectedSets()

Get the detected Set#SET_BASEs.

DETECTION_BASE:GetFACGroup()

Gets the FAC group.

DETECTION_BASE:InitDetectDLINK(DetectDLINK)

Detect DLINK.

DETECTION_BASE:InitDetectIRST(DetectIRST)

Detect IRST.

DETECTION_BASE:InitDetectOptical(DetectOptical)

Detect Optical.

DETECTION_BASE:InitDetectRWR(DetectRWR)

Detect RWR.

DETECTION_BASE:InitDetectRadar(DetectRadar)

Detect Radar.

DETECTION_BASE:InitDetectVisual(DetectVisual)

Detect Visual.

DETECTION_BASE:New(FACGroup, DetectionRange)

DETECTION constructor.

DETECTION_BASE:Schedule(DelayTime, RepeatInterval)

Schedule the DETECTION construction.

DETECTION_BASE.ScheduleDelayTime
DETECTION_BASE.ScheduleRepeatInterval
DETECTION_BASE:_DetectionScheduler(SchedulerName)

Form Sets of detected Unit#UNITs in an array of Set#SET_BASEs.

Type DETECTION_UNITGROUPS

DETECTION_UNITGROUPS.ClassName
DETECTION_UNITGROUPS:CreateDetectionSets()

Make a DetectionSet table.

DETECTION_UNITGROUPS.DetectedSets

A list of Set#SET_UNITs containing the units in each set that were detected within a DetectionZoneRange.

DETECTION_UNITGROUPS.DetectedZones

A list of Zone#ZONE_UNITs containing the zones of the reference detected units.

DETECTION_UNITGROUPS:FlareDetectedUnits()

Flare the detected units

DETECTION_UNITGROUPS:FlareDetectedZones()

Flare the detected zones

DETECTION_UNITGROUPS:GetDetectedZone(Index)

Get a SET of detected objects using a given numeric index.

DETECTION_UNITGROUPS:GetDetectedZoneCount()

Get the amount of Zone#ZONE_UNITs with detected units.

DETECTION_UNITGROUPS:GetDetectedZones()

Get the detected Zone#ZONE_UNITs.

DETECTION_UNITGROUPS:New(FACGroup, DetectionRange, DetectionZoneRange)

DETECTION_UNITGROUPS constructor.

DETECTION_UNITGROUPS:SmokeDetectedUnits()

Smoke the detected units

DETECTION_UNITGROUPS:SmokeDetectedZones()

Smoke the detected zones

DETECTION_UNITGROUPS._FlareDetectedUnits
DETECTION_UNITGROUPS._FlareDetectedZones
DETECTION_UNITGROUPS._SmokeDetectedUnits
DETECTION_UNITGROUPS._SmokeDetectedZones

Global(s)

#DETECTION_BASE DETECTION_BASE
#DETECTION_UNITGROUPS DETECTION_UNITGROUPS

Type Detection

Type DETECTION_BASE

DETECTION_BASE class

Field(s)

#string DETECTION_BASE.ClassName
DETECTION_BASE:CreateDetectionSets()

Make a DetectionSet table.

This function will be overridden in the derived clsses.

Return value

#DETECTION_BASE: self

DETECTION_BASE.DetectDLINK
DETECTION_BASE.DetectIRST
DETECTION_BASE.DetectOptical
DETECTION_BASE.DetectRWR
DETECTION_BASE.DetectRadar
DETECTION_BASE.DetectVisual
DETECTION_BASE.DetectedObjects
#DETECTION_BASE.DetectedSets DETECTION_BASE.DetectedSets

A list of Set#SET_BASEs containing the objects in each set that were detected. The base class will not build the detected sets, but will leave that to the derived classes.

DETECTION_BASE.DetectedZones
DCSTypes#Distance DETECTION_BASE.DetectionRange

The range till which targets are accepted to be detected.

DETECTION_BASE.DetectionScheduler
Group#GROUP DETECTION_BASE.FACGroup

The GROUP in the Forward Air Controller role.

DETECTION_BASE:GetDetectedSet(Index)

Get a SET of detected objects using a given numeric index.

Parameter

  • #number Index :

Return value

Set#SET_BASE:

DETECTION_BASE:GetDetectedSetCount()

Get the amount of SETs with detected objects.

Return value

#number: Count

DETECTION_BASE:GetDetectedSets()

Get the detected Set#SET_BASEs.

Return value

#DETECTION_BASE.DetectedSets: DetectedSets

DETECTION_BASE:GetFACGroup()

Gets the FAC group.

Return value

Group#GROUP: self

DETECTION_BASE:InitDetectDLINK(DetectDLINK)

Detect DLINK.

Parameter

  • #boolean DetectDLINK :

Return value

#DETECTION_BASE: self

DETECTION_BASE:InitDetectIRST(DetectIRST)

Detect IRST.

Parameter

  • #boolean DetectIRST :

Return value

#DETECTION_BASE: self

DETECTION_BASE:InitDetectOptical(DetectOptical)

Detect Optical.

Parameter

  • #boolean DetectOptical :

Return value

#DETECTION_BASE: self

DETECTION_BASE:InitDetectRWR(DetectRWR)

Detect RWR.

Parameter

  • #boolean DetectRWR :

Return value

#DETECTION_BASE: self

DETECTION_BASE:InitDetectRadar(DetectRadar)

Detect Radar.

Parameter

  • #boolean DetectRadar :

Return value

#DETECTION_BASE: self

DETECTION_BASE:InitDetectVisual(DetectVisual)

Detect Visual.

Parameter

  • #boolean DetectVisual :

Return value

#DETECTION_BASE: self

DETECTION_BASE:New(FACGroup, DetectionRange)

DETECTION constructor.

Parameters

  • Group#GROUP FACGroup : The GROUP in the Forward Air Controller role.

  • DCSTypes#Distance DetectionRange : The range till which targets are accepted to be detected.

Return value

#DETECTION_BASE: self

DETECTION_BASE:Schedule(DelayTime, RepeatInterval)

Schedule the DETECTION construction.

Parameters

  • #number DelayTime : The delay in seconds to wait the reporting.

  • #number RepeatInterval : The repeat interval in seconds for the reporting to happen repeatedly.

Return value

#DETECTION_BASE: self

DETECTION_BASE.ScheduleDelayTime
DETECTION_BASE.ScheduleRepeatInterval
DETECTION_BASE:_DetectionScheduler(SchedulerName)

Form Sets of detected Unit#UNITs in an array of Set#SET_BASEs.

Parameter

  • SchedulerName :

Type DETECTION_BASE.DetectedSets

Type DETECTION_BASE.DetectedZones

Type DETECTION_UNITGROUPS

DETECTION_UNITGROUPS class

Field(s)

#string DETECTION_UNITGROUPS.ClassName
DETECTION_UNITGROUPS:CreateDetectionSets()

Make a DetectionSet table.

This function will be overridden in the derived clsses.

Return value

#DETECTION_UNITGROUPS: self

#DETECTION_UNITGROUPS.DetectedSets DETECTION_UNITGROUPS.DetectedSets

A list of Set#SET_UNITs containing the units in each set that were detected within a DetectionZoneRange.

#DETECTION_UNITGROUPS.DetectedZones DETECTION_UNITGROUPS.DetectedZones

A list of Zone#ZONE_UNITs containing the zones of the reference detected units.

DETECTION_UNITGROUPS:FlareDetectedUnits()

Flare the detected units

Return value

#DETECTION_UNITGROUPS: self

DETECTION_UNITGROUPS:FlareDetectedZones()

Flare the detected zones

Return value

#DETECTION_UNITGROUPS: self

DETECTION_UNITGROUPS:GetDetectedZone(Index)

Get a SET of detected objects using a given numeric index.

Parameter

  • #number Index :

Return value

Zone#ZONE_UNIT:

DETECTION_UNITGROUPS:GetDetectedZoneCount()

Get the amount of Zone#ZONE_UNITs with detected units.

Return value

#number: Count

DETECTION_UNITGROUPS:GetDetectedZones()

Get the detected Zone#ZONE_UNITs.

Return value

#DETECTION_UNITGROUPS.DetectedZones: DetectedZones

DETECTION_UNITGROUPS:New(FACGroup, DetectionRange, DetectionZoneRange)

DETECTION_UNITGROUPS constructor.

Parameters

  • Group#GROUP FACGroup : The GROUP in the Forward Air Controller role.

  • DCSTypes#Distance DetectionRange : The range till which targets are accepted to be detected.

  • DCSTypes#Distance DetectionZoneRange : The range till which targets are grouped upon the first detected target.

Return value

Detection#DETECTION_UNITGROUPS: self

DETECTION_UNITGROUPS:SmokeDetectedUnits()

Smoke the detected units

Return value

#DETECTION_UNITGROUPS: self

DETECTION_UNITGROUPS:SmokeDetectedZones()

Smoke the detected zones

Return value

#DETECTION_UNITGROUPS: self

#boolean DETECTION_UNITGROUPS._FlareDetectedUnits
#boolean DETECTION_UNITGROUPS._FlareDetectedZones
#boolean DETECTION_UNITGROUPS._SmokeDetectedUnits
#boolean DETECTION_UNITGROUPS._SmokeDetectedZones

Type DETECTION_UNITGROUPS.DetectedSets

Type DETECTION_UNITGROUPS.DetectedZones