mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
Update to the documentation generation process
Include a doc update too.
This commit is contained in:
parent
9ca007ccf4
commit
7b2f0fda9c
@ -3,6 +3,6 @@
|
||||
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
|
||||
<listEntry value="org.eclipse.ui.externaltools.launchGroup"/>
|
||||
</listAttribute>
|
||||
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/Moose_Framework/Utils/luadocumentor.bat}"/>
|
||||
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/Moose_Framework/Utils/GenerateDocumentations.bat}"/>
|
||||
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/Moose_Framework/Utils}"/>
|
||||
</launchConfiguration>
|
||||
|
||||
13
Utils/GenerateDocumentations.bat
Normal file
13
Utils/GenerateDocumentations.bat
Normal file
@ -0,0 +1,13 @@
|
||||
@echo off
|
||||
|
||||
:: Generate Luadocumentor documentation
|
||||
echo Generating LuaDocumentor Documentation
|
||||
echo --------------------------------------
|
||||
call luadocumentor.bat
|
||||
|
||||
:: Generate Slate documentation
|
||||
echo Generating Slate Documentation
|
||||
echo ------------------------------
|
||||
cd "Slate Documentation Generator"
|
||||
call Generate.bat
|
||||
cd ..
|
||||
10
Utils/Slate Documentation Generator/Generate.bat
Normal file
10
Utils/Slate Documentation Generator/Generate.bat
Normal file
@ -0,0 +1,10 @@
|
||||
:: Generate the Markdown doc
|
||||
"./bin/SlateDocGenerator2.exe" "../../../MOOSE/Moose Development/Moose" ../../../slate/source
|
||||
|
||||
:: Do some cleanup
|
||||
del /s /q "TreeHierarchySorted.csv"
|
||||
del /s /q "FuctionList.txt"
|
||||
rmdir /s /q "./bin/TEMP"
|
||||
|
||||
:: Copy the Images that go with the documentation
|
||||
robocopy ../../docs/Presentations ../../../slate/source/includes/Pictures /MIR /NJH /NJS
|
||||
BIN
Utils/Slate Documentation Generator/bin/SlateDocGenerator2.exe
Normal file
BIN
Utils/Slate Documentation Generator/bin/SlateDocGenerator2.exe
Normal file
Binary file not shown.
35
Utils/Slate Documentation Generator/bin/TreeHierarchy.csv
Normal file
35
Utils/Slate Documentation Generator/bin/TreeHierarchy.csv
Normal file
@ -0,0 +1,35 @@
|
||||
@K=function, @M=Task_A2G, @N=onafterRouteToRendezVous, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_A2G.lua, @C=5129,
|
||||
@K=function, @M=Task_A2G, @N=OnAfterArriveAtRendezVous, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_A2G.lua, @C=5789,
|
||||
@K=function, @M=Task_A2G, @N=onafterEngage, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_A2G.lua, @C=6186,
|
||||
@K=function, @M=Task_A2G, @N=onafterRouteToTarget, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_A2G.lua, @C=6508,
|
||||
@K=function, @M=Task_A2G, @N=onafterRouteToTargets, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_A2G.lua, @C=7380,
|
||||
@K=function, @M=Task_Cargo, @N=onenterWaitingForCommand, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=10431,
|
||||
@K=function, @M=Task_Cargo, @N=OnLeaveWaitingForCommand, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=12652,
|
||||
@K=function, @M=Task_Cargo, @N=onafterRouteToPickup, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=13428,
|
||||
@K=function, @M=Task_Cargo, @N=onafterArriveAtPickup, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=13882,
|
||||
@K=function, @M=Task_Cargo, @N=onafterRouteToDeploy, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=14310,
|
||||
@K=function, @M=Task_Cargo, @N=onafterArriveAtDeploy, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=14757,
|
||||
@K=function, @M=Task_Cargo, @N=onafterLand, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=15187,
|
||||
@K=function, @M=Task_Cargo, @N=onafterLanded, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=16069,
|
||||
@K=function, @M=Task_Cargo, @N=onafterPrepareBoarding, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=16762,
|
||||
@K=function, @M=Task_Cargo, @N=onafterBoard, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=17166,
|
||||
@K=function, @M=Task_Cargo, @N=onafterBoarded, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=18074,
|
||||
@K=function, @M=Task_Cargo, @N=onafterPrepareUnBoarding, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=18704,
|
||||
@K=function, @M=Task_Cargo, @N=onafterUnBoard, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=19134,
|
||||
@K=function, @M=Task_Cargo, @N=onafterUnBoarded, @P=Fsm, @F=../../../MOOSE/Moose Development/Moose\Tasking\Task_CARGO.lua, @C=19788,
|
||||
@K=function, @M=Designate, @N=OnBeforeLaseOn, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=12232,
|
||||
@K=function, @M=Designate, @N=OnAfterLaseOn, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=12480,
|
||||
@K=function, @M=Designate, @N=LaseOn, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=12701,
|
||||
@K=function, @M=Designate, @N=__LaseOn, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=12824,
|
||||
@K=function, @M=Designate, @N=OnBeforeLaseOff, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=13114,
|
||||
@K=function, @M=Designate, @N=OnAfterLaseOff, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=13364,
|
||||
@K=function, @M=Designate, @N=LaseOff, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=13587,
|
||||
@K=function, @M=Designate, @N=__LaseOff, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=13712,
|
||||
@K=function, @M=Designate, @N=OnBeforeSmoke, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=13944,
|
||||
@K=function, @M=Designate, @N=OnAfterSmoke, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=14190,
|
||||
@K=function, @M=Designate, @N=Smoke, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=14409,
|
||||
@K=function, @M=Designate, @N=__Smoke, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=14530,
|
||||
@K=function, @M=Designate, @N=OnBeforeStatus, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=15628,
|
||||
@K=function, @M=Designate, @N=OnAfterStatus, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=15876,
|
||||
@K=function, @M=Designate, @N=Status, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=16097,
|
||||
@K=function, @M=Designate, @N=__Status, @P=DESIGNATE , @F=../../../MOOSE/Moose Development/Moose\Functional\Designate.lua, @C=16220,
|
||||
|
174
Utils/Slate Documentation Generator/src/DataStorer.au3
Normal file
174
Utils/Slate Documentation Generator/src/DataStorer.au3
Normal file
@ -0,0 +1,174 @@
|
||||
; This file only constains function related to storing the hierarchy in a tree-like tructure
|
||||
|
||||
Func AddNode($Kind, $Module ,$Node, $Parent, $File, $CarretPos)
|
||||
FileSetPos($DataFile, 0, $FILE_END)
|
||||
|
||||
If $Parent == "" And $Kind == "type" Then
|
||||
$Parent = "ROOT"
|
||||
ElseIf $Kind == "module" Then
|
||||
$Module = " "
|
||||
$Parent = " "
|
||||
EndIf
|
||||
FileWrite($DataFile, "@K="&$Kind&", @M="&$Module&", @N="&$Node&", @P="&$Parent&", @F="&$File&", @C="&$CarretPos&","&@CRLF)
|
||||
EndFunc
|
||||
|
||||
; Search node by name and returns one data
|
||||
Func GetData($Node, $Data)
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
Local $CurrentLine = ""
|
||||
Local $CurrentData
|
||||
Local $RegexResult
|
||||
Local $Regex
|
||||
Switch $Data
|
||||
Case "kind"
|
||||
$Regex = "\@K=(.+?),"
|
||||
Case "parent"
|
||||
$Regex = "\@P=(.+?),"
|
||||
Case "file"
|
||||
$Regex = "\@F=(.+?),"
|
||||
Case "carretpos"
|
||||
$Regex = "\@C=(.+?),"
|
||||
EndSwitch
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
Do
|
||||
$CurrentLine = FileReadLine($DataFile)
|
||||
If @error == -1 Then
|
||||
Return ""
|
||||
ExitLoop
|
||||
EndIf
|
||||
$CurrentData = StringRegExp($CurrentLine, "\@N=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
|
||||
Until $Node == $CurrentData[0]
|
||||
$CurrentData = StringRegExp($CurrentLine, $Regex, $STR_REGEXPARRAYMATCH)
|
||||
Return $CurrentData[0]
|
||||
EndFunc
|
||||
|
||||
|
||||
; Returns an array of parent nodes, up to the root, starting with the root
|
||||
Func GetParents($Node)
|
||||
Local $CurrentParent = $Node
|
||||
Local $ParentsArray[0]
|
||||
Local $NbOfParents = 1
|
||||
|
||||
While $CurrentParent <> "ROOT"
|
||||
ReDim $ParentsArray[$NbOfParents]
|
||||
$ParentsArray[$NbOfParents-1] = $CurrentParent
|
||||
|
||||
$CurrentParent = GetData($CurrentParent, "parent")
|
||||
If $CurrentParent == "" Then
|
||||
FileWrite($Log, "ERROR : Couldn't find "&$ParentsArray[$NbOfParents-1]&"'s parent !")
|
||||
$CurrentParent = "ERROR !"
|
||||
ReDim $ParentsArray[$NbOfParents]
|
||||
$ParentsArray[$NbOfParents-1] = $CurrentParent
|
||||
ExitLoop
|
||||
EndIf
|
||||
$NbOfParents += 1
|
||||
WEnd
|
||||
|
||||
_ArrayReverse($ParentsArray)
|
||||
_ArrayDelete($ParentsArray, $NbOfParents)
|
||||
Return $ParentsArray
|
||||
EndFunc
|
||||
|
||||
|
||||
|
||||
Func DataSort()
|
||||
Local $SortedDataFile = FileOpen(@ScriptDir & "\TreeHierarchySorted.csv", $FO_OVERWRITE)
|
||||
Local $Line = ""
|
||||
Local $LineNb = 1
|
||||
Local $RegexResults
|
||||
Local $CurrentModule
|
||||
Local $CurrentType
|
||||
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
|
||||
While True
|
||||
$Line = FileReadLine($DataFile)
|
||||
If @error then ExitLoop
|
||||
|
||||
$RegexResults = StringRegExp($Line, "\@K=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
If $RegexResults[0] == "module" Then
|
||||
ConsoleWrite(".")
|
||||
$RegexResults = StringRegExp($Line, "\@N=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
$CurrentModule = $RegexResults[0]
|
||||
FileWriteLine($SortedDataFile, $Line)
|
||||
FileClose($DataFile)
|
||||
_FileWriteToLine(@ScriptDir & "\TreeHierarchy.csv", $LineNb, "", True)
|
||||
$DataFile = FileOpen(@ScriptDir & "\TreeHierarchy.csv", 1)
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
$LineNb = 1
|
||||
|
||||
While True
|
||||
$Line = FileReadLine($DataFile)
|
||||
If @error then ExitLoop
|
||||
|
||||
$RegexResults = StringRegExp($Line, "\@K=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
If $RegexResults[0] == "type" Then
|
||||
$RegexResults = StringRegExp($Line, "\@M=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
If $RegexResults[0] == $CurrentModule Then
|
||||
$RegexResults = StringRegExp($Line, "\@N=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
$CurrentType = $RegexResults[0]
|
||||
FileWriteLine($SortedDataFile, $Line)
|
||||
FileClose($DataFile)
|
||||
_FileWriteToLine(@ScriptDir & "\TreeHierarchy.csv", $LineNb, "", True)
|
||||
$DataFile = FileOpen(@ScriptDir & "\TreeHierarchy.csv", 1)
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
$LineNb = 1
|
||||
|
||||
While True
|
||||
$Line = FileReadLine($DataFile)
|
||||
If @error then ExitLoop
|
||||
|
||||
$RegexResults = StringRegExp($Line, "\@K=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
If $RegexResults[0] == "function" Then
|
||||
$RegexResults = StringRegExp($Line, "\@P=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
If $RegexResults[0] == $CurrentType Then
|
||||
FileWriteLine($SortedDataFile, $Line)
|
||||
FileClose($DataFile)
|
||||
_FileWriteToLine(@ScriptDir & "\TreeHierarchy.csv", $LineNb, "", True)
|
||||
$DataFile = FileOpen(@ScriptDir & "\TreeHierarchy.csv", 1)
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
$LineNb = 0
|
||||
EndIf
|
||||
EndIf
|
||||
$LineNb += 1
|
||||
WEnd
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
$LineNb = 0
|
||||
EndIf
|
||||
EndIf
|
||||
$LineNb += 1
|
||||
WEnd
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
$LineNb = 0
|
||||
EndIf
|
||||
$LineNb += 1
|
||||
Wend
|
||||
If FileGetSize(@ScriptDir & "\TreeHierarchy.csv") <> 0 Then
|
||||
FileWrite($Log, "ERROR : Some items couldn't be sorted. Verify them in the file TreeHierarchy.csv"&@CRLF)
|
||||
ConsoleWrite(@CRLF&"INFO : Some items couldn't be sorted. Verify them in the file TreeHierarchy.csv"&@CRLF)
|
||||
EndIf
|
||||
FileClose($DataFile)
|
||||
$DataFile = $SortedDataFile
|
||||
EndFunc
|
||||
|
||||
|
||||
Func FindInFunctionList($String)
|
||||
Local $Line = ""
|
||||
Local $TempStringArray
|
||||
FileSetPos($FunctionList, 0, $FILE_BEGIN)
|
||||
;FileWrite($Log, 'Trying to find the function prototype for : ' & $String & @CRLF)
|
||||
While 1
|
||||
$Line = FileReadLine($FunctionList)
|
||||
If @error = -1 Then
|
||||
SetError(0)
|
||||
FileWrite($Log, "ERROR : Couldn't find " & $String & " in file. Does this method exitsts ?" & @CRLF)
|
||||
Return $String
|
||||
EndIf
|
||||
If StringInStr($Line, $String) Then
|
||||
$TempStringArray = StringSplit($Line, "-")
|
||||
$Line = "[" & $TempStringArray[1] & ":" & $TempStringArray[2] & "()]" & '(#' & StringLower($Line) & ')'
|
||||
Return $Line
|
||||
EndIf
|
||||
WEnd
|
||||
EndFunc
|
||||
460
Utils/Slate Documentation Generator/src/Parser.au3
Normal file
460
Utils/Slate Documentation Generator/src/Parser.au3
Normal file
@ -0,0 +1,460 @@
|
||||
; This file include every function strictly related to the parsing of data in .lua files
|
||||
|
||||
; Get the first comment block after $CarretPos
|
||||
; We will also grab function declaration if possible/applicable
|
||||
; The return is a Array : CarretPosition|BlockContent|Declaration|CarretPositionStart
|
||||
Func ReadNextBlock($File, $CarretPos)
|
||||
local $CommentBlock = "" ; This is where we'll store the comment block
|
||||
local $Declaration = "" ; This is the next line after the comment block : usually the declaration statement
|
||||
local $CurrentLine = ""
|
||||
local $CurrentCarretPos = 0
|
||||
|
||||
local $IsCommentBlock = False
|
||||
|
||||
local $RegExResult
|
||||
local $RegexPos
|
||||
|
||||
; Start reading from $CarretPos
|
||||
FileSetPos($File, $CarretPos, $FILE_BEGIN)
|
||||
|
||||
; Read till we find a comment block
|
||||
Do
|
||||
$CurrentLine = FileReadLine($File)
|
||||
If @error Then ; We probably reached the eof
|
||||
Local $ReturnArray[3] = [$CurrentCarretPos, "", ""]
|
||||
Return $ReturnArray
|
||||
ElseIf StringInStr($CurrentLine, "---") Then
|
||||
$IsCommentBlock = True
|
||||
EndIf
|
||||
Until $IsCommentBlock
|
||||
|
||||
Local $CarretPosStart = FileGetPos($File) - StringLen($CurrentLine) - 2
|
||||
|
||||
; Add the first line to our comment block
|
||||
$RegExResult = StringRegExp($CurrentLine, "---(.*)", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then ; The first line of the comment could be empty !
|
||||
$CommentBlock &= $RegExResult[0]&@CRLF
|
||||
EndIf
|
||||
|
||||
; Read the comment block
|
||||
Do
|
||||
$CurrentCarretPos = FileGetPos($File)
|
||||
$CurrentLine = FileReadLine($File)
|
||||
If StringInStr($CurrentLine, "--") Then ; If we can't find any "--" in the line, then it's not the comment block anymore
|
||||
$RegExResult = StringRegExp($CurrentLine, "--(.*)", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then; The line of the comment could be empty !
|
||||
$CommentBlock &= $RegExResult[0]&@CRLF
|
||||
EndIf
|
||||
Else
|
||||
$IsCommentBlock = False
|
||||
EndIf
|
||||
Until Not $IsCommentBlock
|
||||
|
||||
; Ok, so now this is strange. If the comment block is class', we're going to have to check the
|
||||
; next comment block. If this next comment block contains a field, that is the same name as the class, then this
|
||||
; new comment block contains the whole informtion for the class. This is very shitty, but it's a workaround to
|
||||
; make intellisense show classes info while programing
|
||||
If ParseForOneTag($CommentBlock, "@type") Then
|
||||
Local $CommentBlock2 = ""
|
||||
Do
|
||||
$CurrentLine = FileReadLine($File)
|
||||
If @error Then
|
||||
Local $ReturnArray[3] = [$CurrentCarretPos, "", ""]
|
||||
Return $ReturnArray
|
||||
ElseIf StringInStr($CurrentLine, "---") Then
|
||||
$IsCommentBlock = True
|
||||
EndIf
|
||||
Until $IsCommentBlock
|
||||
|
||||
$RegExResult = StringRegExp($CurrentLine, "---(.*)", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then
|
||||
$CommentBlock2 &= $RegExResult[0]&@CRLF
|
||||
EndIf
|
||||
|
||||
; Yep, the next comment is the description of the class, let's read on !
|
||||
If StringInStr($CurrentLine, ParseForOneTag($CommentBlock, "@type")) And StringInStr($CurrentLine, "extend") Then
|
||||
|
||||
Do
|
||||
$CurrentLine = FileReadLine($File)
|
||||
If StringInStr($CurrentLine, "--") Then
|
||||
$RegExResult = StringRegExp($CurrentLine, "--(.*)", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then
|
||||
$CommentBlock2 &= $RegExResult[0]&@CRLF
|
||||
EndIf
|
||||
Else
|
||||
$IsCommentBlock = False
|
||||
EndIf
|
||||
Until Not $IsCommentBlock
|
||||
|
||||
; remove the line(s) with "@field" in the comment block. They are only needed for the intellisense hack
|
||||
While 1
|
||||
$RegexResult = StringRegExp($CommentBlock2, "(.*)@field(.*)", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$CommentBlock2 = StringRegExpReplace($CommentBlock2, "(.*)@field(.*)", "", 1)
|
||||
WEnd
|
||||
|
||||
; We also don't need the first line of the first comment block anymore...
|
||||
; $CommentBlock = StringRegExpReplace($CommentBlock, "(.*)", "", 1)
|
||||
|
||||
; append the description at the start of the comment block
|
||||
$CommentBlock = $CommentBlock2&$CommentBlock
|
||||
EndIf
|
||||
|
||||
|
||||
; We also need to check if the type is a list or a map. If so, the comment block does not describe a class, but a simple list / map.
|
||||
; It will have the formatting of a class, though, because it's closer closer to the actual code, even though it is highly confusing.
|
||||
; But it will only have 1 field : the list or map.
|
||||
If StringInStr($CommentBlock, "@list") Then
|
||||
$RegExResult = StringRegExp($CommentBlock, "@list\h<(.*?)>\h(.*)", $STR_REGEXPARRAYMATCH)
|
||||
if not @error Then
|
||||
$CommentBlock &= "@field #table["&$RegExResult[0]&"] "&$RegExResult[1]
|
||||
EndIf
|
||||
EndIf
|
||||
; TODO : Add support for @map the same way...
|
||||
EndIf
|
||||
|
||||
|
||||
|
||||
|
||||
; We'll take the next line, as it might be the declaration statement
|
||||
$Declaration = $CurrentLine
|
||||
|
||||
|
||||
|
||||
; let's do some cleanup
|
||||
$CommentBlock = StringRegExpReplace($CommentBlock, "(?m)^\h+", "") ;remove leading whitespaces
|
||||
$CommentBlock = StringRegExpReplace($CommentBlock, "(?m)\h+$", "") ;remove trailing whitespaces
|
||||
$CommentBlock = StringRegExpReplace($CommentBlock, "(?m)^[#]+", "##### ")
|
||||
$CommentBlock = StringRegExpReplace($CommentBlock, "(?m)^\h+", "") ;remove leading whitespaces again now that we removed the "#"s
|
||||
$CommentBlock = StringRegExpReplace($CommentBlock, "(?m)-{3,}", "") ;remove sequences of at least 3 "-" which will mess up markdown
|
||||
$CommentBlock = StringRegExpReplace($CommentBlock, "(?m)={3,}", "") ; remove sequences of at least 3 "=" which will mess up markdown
|
||||
|
||||
Local $ReturnArray[4] = [$CurrentCarretPos, $CommentBlock, $Declaration, $CarretPosStart]
|
||||
Return $ReturnArray
|
||||
EndFunc
|
||||
|
||||
; Parses the block and returns the data for one tag
|
||||
; don't use it to find the function tag !
|
||||
Func ParseForOneTag($Block, $Tag)
|
||||
Local $i = 1
|
||||
Local $DataArray[1]
|
||||
Local $RegexResult[1]
|
||||
Local $RegexPos = 1
|
||||
Local $Regex
|
||||
|
||||
; If we look for @usage, then it's a multiline data, the regex is different
|
||||
If $Tag == "@usage" Then
|
||||
$Regex = "(?s)@usage(.*)"
|
||||
$RegexResult = StringRegExp($Block, $Regex, $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
Else
|
||||
$Regex = $Tag&"\h(.*)\s"
|
||||
$RegexResult = StringRegExp($Block, $Regex, $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
Endif
|
||||
|
||||
If @error Then
|
||||
Return ""
|
||||
Else
|
||||
Return $RegexResult[0]
|
||||
EndIf
|
||||
|
||||
EndFunc ;==>ReadOneTag
|
||||
|
||||
; Parses the block and returns the data for multiple tags in an array
|
||||
; Don't use it for @param !
|
||||
Func ParseForTags($Block, $Tag)
|
||||
Local $i = 1
|
||||
Local $DataArray[1]
|
||||
Local $RegexResult[1]
|
||||
Local $RegexPos = 1
|
||||
|
||||
Local $Regex = $Tag&"(?m)\h([^\s]*)(?:\h)?([^\s]*)?(?:\h)?(.*)?$"
|
||||
; For each tag
|
||||
While True
|
||||
$RegexResult = StringRegExp($Block, $Regex, $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If $RegexPos == 0 Then ; We couldn't find any tag
|
||||
If Not $DataArray[0] Then
|
||||
Return ""
|
||||
Else
|
||||
Return $DataArray
|
||||
EndIf
|
||||
EndIf
|
||||
|
||||
; Add the tag to the array.The array looks like this : type1|param1|description1|type2...
|
||||
ReDim $DataArray[$i * 3]
|
||||
$DataArray[($i * 3) - 3] = $RegexResult[0]
|
||||
If $RegexResult[1] == "" Then
|
||||
$DataArray[($i * 3) - 2] = "self" ; if the first param doesn't have a name, then it's self
|
||||
Else
|
||||
$DataArray[($i * 3) - 2] = $RegexResult[1]
|
||||
EndIf
|
||||
$DataArray[($i * 3) - 1] = $RegexResult[2]
|
||||
$i += 1
|
||||
WEnd
|
||||
EndFunc
|
||||
|
||||
; Parses both the comment block and the declaration to find the function name and it's type
|
||||
; Compares both of them if possible, but will always return the one in the comment block if possible
|
||||
Func ParseFunctionName($CommentBlock, $Declaration)
|
||||
local $RegExResult
|
||||
local $FunctionNameFromDec
|
||||
local $FunctionNameFromComment
|
||||
local $ReturnArray[2]
|
||||
|
||||
; Parse for function name in both the comment block and the desclaration
|
||||
$RegExResult = StringRegExp($CommentBlock, "\@function\h(?:(\[.*\]\h))?(.*)", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then
|
||||
$FunctionNameFromComment = $RegExResult[1]
|
||||
EndIf
|
||||
$RegExResult = StringRegExp($Declaration, "function\h(?:.*\:)?(.*)\(.*\)", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then
|
||||
$FunctionNameFromDec = $RegExResult[0]
|
||||
EndIf
|
||||
|
||||
; compare them to each other
|
||||
If $FunctionNameFromComment Then
|
||||
If $FunctionNameFromDec <> $FunctionNameFromComment Then
|
||||
FileWrite($Log,"CAUTION : The commented function doesn't match its declaration : "&$FunctionNameFromComment& " -> "&$Declaration&@CRLF)
|
||||
EndIf
|
||||
$ReturnArray[0] = $FunctionNameFromComment
|
||||
ElseIf $FunctionNameFromDec Then
|
||||
;FileWrite($Log, "CAUTION: No data matching @function found in block, inferring the function name from its declaration : "& $FunctionNameFromDec & @CRLF)
|
||||
$ReturnArray[0] = $FunctionNameFromDec
|
||||
Else
|
||||
$ReturnArray[0] = ""
|
||||
$ReturnArray[1] = ""
|
||||
return $ReturnArray
|
||||
EndIf
|
||||
|
||||
;parses for function type in both the comment block and the desclaration
|
||||
local $TypeFromComment
|
||||
local $TypeFromDec
|
||||
|
||||
$RegExResult = StringRegExp($Declaration, "function\h(.*):", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then
|
||||
$TypeFromDec = $RegExResult[0]
|
||||
EndIf
|
||||
$RegExResult = StringRegExp($CommentBlock, "function\h\[parent=#(.*)\]", $STR_REGEXPARRAYMATCH)
|
||||
If Not @error Then
|
||||
$TypeFromComment = $RegExResult[0]
|
||||
EndIf
|
||||
|
||||
; compare them to each other
|
||||
If $TypeFromComment Then
|
||||
If $TypeFromDec <> $TypeFromComment Then
|
||||
FileWrite($Log,"CAUTION : The commented function type doesn't match its declaration : "&$TypeFromComment& " -> "&$Declaration&@CRLF)
|
||||
EndIf
|
||||
$ReturnArray[1] = $TypeFromComment
|
||||
ElseIf $TypeFromDec Then
|
||||
;FileWrite($Log, "CAUTION: No function type found in block, inferring the function type from its declaration : "& $TypeFromDec & @CRLF)
|
||||
$ReturnArray[1] = $TypeFromDec
|
||||
Else
|
||||
$ReturnArray[0] = ""
|
||||
$ReturnArray[1] = ""
|
||||
return $ReturnArray
|
||||
EndIf
|
||||
|
||||
Return $ReturnArray
|
||||
EndFunc
|
||||
|
||||
; Specifically designed to parse for @param tags
|
||||
; will verify the comment by matching with the declaration (theoretically, I'm pretty sure it's bugged)
|
||||
Func ParseParams($CommentBlock, $Declaration)
|
||||
Local $ParamsFromComment = ParseForTags($CommentBlock, "@param")
|
||||
Local $RegExResult
|
||||
Local $RegexPos = StringInStr($Declaration, "(")
|
||||
Local $ParamsFromDec[0]
|
||||
Local $NbParam = 0
|
||||
|
||||
If StringInStr($Declaration, ":") Then
|
||||
$NbParam = 1
|
||||
ReDim $ParamsFromDec[1]
|
||||
$ParamsFromDec[0] = "self"
|
||||
EndIf
|
||||
|
||||
; extract params from function decaration
|
||||
While True
|
||||
$RegExResult = StringRegExp($Declaration, "([^,\(\)\h]+)", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NbParam += 1
|
||||
Redim $ParamsFromDec[$NbParam]
|
||||
$ParamsFromDec[$NbParam-1] = $RegExResult[0]
|
||||
WEnd
|
||||
|
||||
; compare these parameters with those found in the comment block
|
||||
If UBound($ParamsFromComment) <> UBound($ParamsFromDec)*3 Then
|
||||
FileWrite($Log, "CAUTION: The number of parameters don't match between the comment block and declaration "& @CRLF)
|
||||
Else
|
||||
|
||||
For $i=0 To $NbParam-1
|
||||
If $ParamsFromDec[$i] <> $ParamsFromComment[($i*3)+1] Then
|
||||
FileWrite($Log, "CAUTION: Parameters missmatch between the comment block and declaration "& @CRLF)
|
||||
FileWrite($Log, $ParamsFromComment[($i*3)+1]& " -> " & $ParamsFromDec[$i]&@CRLF)
|
||||
ExitLoop
|
||||
EndIf
|
||||
Next
|
||||
EndIf
|
||||
|
||||
Return $ParamsFromComment
|
||||
EndFunc
|
||||
|
||||
; This does 3 things :
|
||||
; - Replace the hyperlinks with new ones
|
||||
; - change the stuff starting with # (#nil -> <u>Nil</u>)
|
||||
; - Replace pictures paths
|
||||
Func ReplaceHyperlinks($TempFile)
|
||||
Local $StringFile = ""
|
||||
Local $RegexResult
|
||||
Local $RegexPos = 1
|
||||
Local $NewURL = ""
|
||||
Local $i = 0
|
||||
FileSetPos($TempFile, 0, $FILE_BEGIN)
|
||||
|
||||
$StringFile = FileRead($TempFile)
|
||||
|
||||
; Replace HyperLinks Using Regexs
|
||||
; ---------------------------------------------------------
|
||||
While 1 ; @{File.Module}
|
||||
$RegexResult = StringRegExp($StringFile, "\@{([A-Z][^\.#}]+)\.([^\.#}]+)}", $STR_REGEXPARRAYMATCH, $RegexPos) ;
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = "[" & $RegexResult[1] & "](#" & StringLower($RegexResult[1]) & "-module-)"
|
||||
;FileWrite($Log, "Module : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{([A-Z][^\.#}]+)\.([^\.#}]+)}", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; @{Module}
|
||||
$RegexResult = StringRegExp($StringFile, "\@{([A-Z][^\.#}]+)}", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = "[" & $RegexResult[0] & "](#" & StringLower($RegexResult[0]) & "-module-)"
|
||||
;FileWrite($Log, "Module : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{([A-Z][^\.#}]+)}", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; @{File.Module#TYPE}
|
||||
$RegexResult = StringRegExp($StringFile, "\@{([A-Z][^\.#}]+)\.([A-Z][^\.#}]+)#([A-Z,_]+)}", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = "[" & $RegexResult[2] & "](#" & StringLower($RegexResult[2]) & "-class-)"
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{([A-Z][^\.#}]+)\.([A-Z][^\.#}]+)#([A-Z,_]+)}", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; @{Module#TYPE}
|
||||
$RegexResult = StringRegExp($StringFile, "\@{([A-Z][^\.#}]+)#([A-Z,_]+)}", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = "[" & $RegexResult[1] & "](#" & StringLower($RegexResult[1]) & "-class-)"
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{([A-Z][^\.#}]+)#([A-Z,_]+)}", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; @{#TYPE}
|
||||
$RegexResult = StringRegExp($StringFile, "\@{#([A-Z,_]+)}", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = "[" & $RegexResult[0] & "](#" & StringLower($RegexResult[0]) & "-class-)"
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{#([A-Z,_]+)}", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; #TYPE&@CR
|
||||
$RegexResult = StringRegExp($StringFile, "\h#([A-Z,_]+)\s", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = " [" & $RegexResult[0] & "](#" & StringLower($RegexResult[0]) & "-class-)"&@CRLF
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\h#([A-Z,_]+)\s", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; @{File.Module#TYPE.Function}(), catches the parenthesis
|
||||
$RegexResult = StringRegExp($StringFile, "\@{([A-Z][^#}\.]+)\.([A-Z][^#}\.]+)#([A-Z,_]+)\.([^#\.]+)}[\(]?[\)]?", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = FindInFunctionList($RegexResult[2] & "-" & $RegexResult[3]&"-")
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{([A-Z][^#}\.]+)\.([A-Z][^#}\.]+)#([A-Z,_]+)\.([^#\.]+)}[\(]?[\)]?", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; @{Module#TYPE.Function}(), catches the parenthesis
|
||||
$RegexResult = StringRegExp($StringFile, "\@{([A-Z][^#}\.]+)#([A-Z,_]+)\.([^#}\.]+)}[\(]?[\)]?", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = FindInFunctionList($RegexResult[1] & "-" & $RegexResult[2]&"-")
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{([A-Z][^#}\.]+)#([A-Z,_]+)\.([^#}\.]+)}[\(]?[\)]?", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; @{#TYPE.Function}(), catches the parenthesis
|
||||
$RegexResult = StringRegExp($StringFile, "\@{#([A-Z,_]+)\.([^#}\.]+)}[\(]?[\)]?", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = FindInFunctionList($RegexResult[0] & "-" & $RegexResult[1]&"-")
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\@{#([A-Z,_]+)\.([^#}\.]+)}[\(]?[\)]?", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; Module#TYPE
|
||||
$RegexResult = StringRegExp($StringFile, "\h(\w+[^\h\_])#(.*?)\h", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = " [" & $RegexResult[1] & "](#" & StringLower($RegexResult[1]) & "-class-) "
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\h(\w+[^\h\_])#(.*?)\h", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; File.Module#TYPE
|
||||
$RegexResult = StringRegExp($StringFile, "\h(\w+)\.(\w+)#(.*?)\h", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = " [" & $RegexResult[2] & "](#" & StringLower($RegexResult[2]) & "-class-) "
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\h(\w+)\.(\w+)#(.*?)\h", $NewURL, 1)
|
||||
WEnd
|
||||
While 1 ; #TYPE.type (nested type... really annoying and confusing lua stuff)
|
||||
$RegexResult = StringRegExp($StringFile, "\h#([A-Z,_]+)\.(\w+)\h", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewURL = " [" & $RegexResult[1] & "](#" &StringLower($RegexResult[0])& "-"& StringLower($RegexResult[1]) & "-class-)"
|
||||
;FileWrite($Log, "Class : " & $RegexPos & " : " & _ArrayToString($RegexResult) & " -> " & $NewURL & @CRLF)
|
||||
$StringFile = StringRegExpReplace($StringFile, "\h#([A-Z,_]+)\.(\w+)\h", $NewURL, 1)
|
||||
WEnd
|
||||
|
||||
; Clean stuff with #
|
||||
; ---------------------------------------------------------
|
||||
$StringFile = StringReplace($StringFile, "#nil", "<u>Nil</u>")
|
||||
$StringFile = StringReplace($StringFile, "#number", "<u>Number</u>")
|
||||
$StringFile = StringReplace($StringFile, "#boolean", "<u>Boolean</u>")
|
||||
$StringFile = StringReplace($StringFile, "#string", "<u>String</u>")
|
||||
$StringFile = StringReplace($StringFile, "#table", "<u>List[]</u>")
|
||||
$StringFile = StringReplace($StringFile, "#function", "<u>Function()</u>")
|
||||
|
||||
; And replace the pictures Path if any
|
||||
; ---------------------------------------------------------
|
||||
While 1
|
||||
$RegexResult = StringRegExp($StringFile, "!\[(.*)\]\(.*\\(.*)\\(.*)\)", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
$NewPic = "![" & $RegexResult[0] & "](/includes/Pictures/" & $RegexResult[1] & "/"& $RegexResult[2]&")"
|
||||
$StringFile = StringRegExpReplace($StringFile, "!\[(.*)\]\(.*\\(.*)\\(.*)\)", $NewPic, 1)
|
||||
WEnd
|
||||
|
||||
While 1
|
||||
$RegexResult = StringRegExp($StringFile, "(?m)^(\d(?:(\.\d))*\)(.*))$", $STR_REGEXPARRAYMATCH, $RegexPos)
|
||||
$RegexPos = @extended
|
||||
If @extended == 0 Then ExitLoop
|
||||
|
||||
;$StringFile = StringRegExpReplace($StringFile, "(?m)^(\d(?:(\.\d))*\)(.*))$", "<h4>"&$RegExResult[0]&"</h4>", 1)
|
||||
$StringFile = StringRegExpReplace($StringFile, "(?m)^(\d(?:(\.\d))*\)(.*))$", "##### "&$RegExResult[0], 1)
|
||||
WEnd
|
||||
|
||||
Return $StringFile
|
||||
EndFunc
|
||||
310
Utils/Slate Documentation Generator/src/SlateGenerator2.au3
Normal file
310
Utils/Slate Documentation Generator/src/SlateGenerator2.au3
Normal file
@ -0,0 +1,310 @@
|
||||
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
|
||||
#AutoIt3Wrapper_Outfile=..\bin\SlateDocGenerator2.exe
|
||||
#AutoIt3Wrapper_Change2CUI=y
|
||||
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
|
||||
#cs
|
||||
This is the main script
|
||||
|
||||
The script goal is to read .lua file, extract the documentation in comment blocks, and write .md files to be converted to html by Slate : https://github.com/lord/slate
|
||||
It works in 5 steps :
|
||||
|
||||
First, it reads the .lua files one bt one, indentifying the comment blocks. for each comment block, it determines the kind of content the comment block describes (module, class/type or function),
|
||||
find some usefull stuff (for exemple in the declaration...) and writes all of this info in the creatively named TreeHierarchy.csv, with this format :
|
||||
@K=kind, @M=ParentModule, @N=Name, @P=Parent, @F=FileWhereTheCommentBlockIsLocated, @C=CarretPositionOfTheCommentBlock
|
||||
The functions used to do this step are mostly found in Parser.au3
|
||||
|
||||
Then the second step is the longest : we sort the TreeHiearchy.csv, and put the result into TreeHierarchySorted.csv
|
||||
The idea is to have the data in this order :
|
||||
Module A
|
||||
Class A (belongs to Module A)
|
||||
Function A (belongs to Class A)
|
||||
Function B (belongs to Class A)
|
||||
Class B Class A (belongs to Module A)
|
||||
Function C (belongs to Class B)
|
||||
Function D (belongs to Class B)
|
||||
Module B ...
|
||||
The functions used to do this step are found in DataStorer.au3
|
||||
|
||||
Then, step 3 : We read each line of TreeHierarchySorted.csv, read the appropriate comment block in the .lua source files,
|
||||
and write the appropriate Markdown documentation for it in a temporary folder
|
||||
This is where the markdown documentation is actually written for the first time.
|
||||
The functions used to do this step are found in Writer.au3
|
||||
|
||||
Step 4 ! We read the newly created Markdown files, trying to find hyperlinks/picture paths... and we replace them with the new ones.
|
||||
We copy each processed file into it's final destination.
|
||||
The functions used to do this step are mostly found in Parser.au3
|
||||
|
||||
And finally Step 5 : We add the new markdown files to Slate's index and delete temporary files and folder
|
||||
#ce
|
||||
|
||||
#include <FileConstants.au3>
|
||||
#include <StringConstants.au3>
|
||||
#include <Array.au3>
|
||||
#include <File.au3>
|
||||
|
||||
; Those are the arguments that need to be passed at the start
|
||||
Global $SourceFolder = $CmdLine[1] ;"./Results"
|
||||
Global $OutputFolder = $CmdLine[2] ;"@ScriptDir&"/source/index.html.md"
|
||||
|
||||
Global $Log = FileOpen(@ScriptDir & "\SlateGenerator2.log", 2)
|
||||
Global $DataFile = FileOpen(@ScriptDir & "\TreeHierarchy.csv", 2)
|
||||
Global $FunctionList = FileOpen(@ScriptDir & "\FuctionList.txt", 2)
|
||||
|
||||
#include "Parser.au3"
|
||||
#include "DataStorer.au3"
|
||||
#include "Writer.au3"
|
||||
|
||||
|
||||
Func ExitCleanly()
|
||||
FileClose($DataFile)
|
||||
FileClose($FunctionList)
|
||||
FileWrite($Log, "SlateGenerator2 exited cleanly")
|
||||
FileClose($Log)
|
||||
EndFunc
|
||||
|
||||
|
||||
; Small function to determine if a comment block is describing a module, a type or a function
|
||||
Func IdentifyBlock($Block, $Declaration)
|
||||
Local $Kind
|
||||
Local $KindFunction
|
||||
|
||||
$Kind = ParseForOneTag($Block, "@module")
|
||||
If $Kind Then
|
||||
Return "module"
|
||||
EndIf
|
||||
|
||||
$Kind = ParseForOneTag($Block, "@type")
|
||||
If $Kind Then
|
||||
Return "type"
|
||||
EndIf
|
||||
|
||||
|
||||
$KindFunction = ParseFunctionName($Block, $Declaration)
|
||||
If $KindFunction[0] Then
|
||||
Return "function"
|
||||
EndIf
|
||||
|
||||
Return ""
|
||||
EndFunc
|
||||
|
||||
|
||||
|
||||
|
||||
; -----------------------------------------------------------------
|
||||
; Main
|
||||
; -----------------------------------------------------------------
|
||||
|
||||
; Step 1 !
|
||||
; -----------------------------------------------------------------
|
||||
|
||||
Local $SourceList = _FileListToArrayRec($SourceFolder, "*", $FLTAR_FILES, $FLTAR_RECUR, $FLTAR_NOSORT, $FLTAR_FULLPATH)
|
||||
Local $CurrentFile
|
||||
Local $CarretPos = 0
|
||||
Local $CommentBlock
|
||||
Local $CommentKind
|
||||
Local $CommentInfo[2]
|
||||
Local $CurrentModule
|
||||
|
||||
ConsoleWrite("1. Parsing Source Files... ")
|
||||
FileWrite($Log, @CRLF&@CRLF&@TAB&"INFO : Building Hierarchy" & @CRLF)
|
||||
For $i=1 To $SourceList[0] ; for each .lua source file
|
||||
|
||||
|
||||
FileWrite($Log, "DEBUG : "&$SourceList[$i])
|
||||
|
||||
; let's read the next .lua source file
|
||||
$CurrentFile = FileOpen($SourceList[$i], $FO_READ)
|
||||
FileWrite($Log, @CRLF&"INFO : Reading File "&$SourceList[$i] & @CRLF)
|
||||
While True ; for each comment block in the current .lua source file
|
||||
|
||||
; We read the next comment block. If we could not, it's probably eof, time to open the next .lua file
|
||||
$CommentBlock = ReadNextBlock($CurrentFile, $CarretPos)
|
||||
If Not $CommentBlock[1] Then
|
||||
ExitLoop
|
||||
EndIf
|
||||
|
||||
$CarretPos = $CommentBlock[0]
|
||||
$CommentKind = IdentifyBlock($CommentBlock[1], $CommentBlock[2])
|
||||
; Depending on the kind of comment block it is, we write the appropriate line in TreeHierarchy.csv
|
||||
Switch $CommentKind
|
||||
Case "function"
|
||||
$CommentInfo = ParseFunctionName($CommentBlock[1], $CommentBlock[2])
|
||||
AddNode("function", $CurrentModule, $CommentInfo[0], $CommentInfo[1], $SourceList[$i], $CommentBlock[3])
|
||||
FileWrite($Log, "INFO : Added function "&$CommentInfo[0]&" to hierarchy" & @CRLF)
|
||||
Case "type"
|
||||
$CommentInfo[0] = ParseForOneTag($CommentBlock[1], "@type")
|
||||
$CommentInfo[1] = ParseForOneTag($CommentBlock[1], "@extends")
|
||||
$CommentInfo[1] = StringRegExpReplace($CommentInfo[1], "(.*#)", "")
|
||||
AddNode("type", $CurrentModule, $CommentInfo[0], $CommentInfo[1], $SourceList[$i], $CommentBlock[3])
|
||||
FileWrite($Log, "INFO : Added type "&$CommentInfo[0]&" to hierarchy" & @CRLF)
|
||||
Case "module"
|
||||
$CurrentModule = ParseForOneTag($CommentBlock[1], "@module")
|
||||
AddNode("module", "", $CurrentModule, "", $SourceList[$i], $CommentBlock[3])
|
||||
FileWrite($Log, "INFO : Added module "&$CurrentModule&" to hierarchy" & @CRLF)
|
||||
EndSwitch
|
||||
|
||||
WEnd
|
||||
$CarretPos = 0
|
||||
FileClose($CurrentFile)
|
||||
|
||||
Next
|
||||
ConsoleWrite("Done"&@CRLF)
|
||||
|
||||
|
||||
; Step 2 !
|
||||
; -----------------------------------------------------------------
|
||||
ConsoleWrite("2. Sorting Hierarchy")
|
||||
FileWrite($Log, @CRLF&@CRLF&@TAB&"INFO : Sorting Hierarchy" & @CRLF)
|
||||
; The magic happens in DataStorer.au3
|
||||
DataSort()
|
||||
ConsoleWrite("Done"&@CRLF)
|
||||
|
||||
|
||||
|
||||
; Step 3 !
|
||||
; -----------------------------------------------------------------
|
||||
ConsoleWrite("3. Writing Markdown Documentation")
|
||||
FileWrite($Log, @CRLF&@CRLF&@TAB&"INFO : Writing Markdown Documentation" & @CRLF)
|
||||
|
||||
Local $CurrentOutput
|
||||
Local $CurrentFolder
|
||||
Local $RegexResult
|
||||
Local $Line
|
||||
Local $CarretPos = 0
|
||||
Local $Results
|
||||
Local $Output
|
||||
Local $Declaration
|
||||
|
||||
FileSetPos($DataFile, 0, $FILE_BEGIN)
|
||||
While True ; For each line in TreeHierarchySorted.csv
|
||||
|
||||
; read the next line until eof
|
||||
FileSetPos($DataFile, $CarretPos, $FILE_BEGIN)
|
||||
$Line = FileReadLine($DataFile)
|
||||
If @error Then ; eof
|
||||
ExitLoop
|
||||
Endif
|
||||
|
||||
$CarretPos = FileGetPos($DataFile)
|
||||
|
||||
; find the file/position of the next comment block referenced in the line
|
||||
$RegexResult = StringRegExp($Line, "\@F=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
$CurrentFile = FileOpen($RegexResult[0], $FO_READ)
|
||||
|
||||
$RegexResult = StringRegExp($Line, "\@C=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
$DataPos = $RegexResult[0]
|
||||
|
||||
; get the comment block itself
|
||||
$Results = ReadNextBlock($CurrentFile, $DataPos)
|
||||
$Block = $Results[1]
|
||||
$Declaration = $Results[2]
|
||||
|
||||
|
||||
; choose the right function to write mardown depending on the type of comment block
|
||||
$RegexResult = StringRegExp($Line, "\@K=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
|
||||
If $RegexResult[0] == "module" Then
|
||||
ConsoleWrite(".")
|
||||
; We need the name of the folder containing this particular source file
|
||||
$RegexResult = StringRegExp($Line, "\@F=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
$RegexResult = StringRegExp($RegexResult[0], "\\(.*)\\.*\.lua", $STR_REGEXPARRAYMATCH)
|
||||
If @error Then
|
||||
$CurrentFolder = ""
|
||||
Else
|
||||
$CurrentFolder = $RegexResult[0]
|
||||
Endif
|
||||
|
||||
; Now we can write the markdown for this module
|
||||
$CurrentOutput = WriteModule($Block, $CurrentFolder)
|
||||
EndIf
|
||||
|
||||
If $RegexResult[0] == "type" Then
|
||||
; We need the name of the Module containing the type
|
||||
$RegexResult = StringRegExp($Line, "\@M=(.+?),", $STR_REGEXPARRAYMATCH)
|
||||
|
||||
; Now we can write the markdown for this type
|
||||
WriteType($Block, $RegexResult[0], $CurrentOutput)
|
||||
EndIf
|
||||
|
||||
If $RegexResult[0] == "function" Then
|
||||
; We can write the markdown for this function
|
||||
WriteFunction($Block, $Declaration, $CurrentOutput)
|
||||
EndIf
|
||||
|
||||
FileClose($CurrentFile)
|
||||
Wend
|
||||
ConsoleWrite("Done"&@CRLF)
|
||||
|
||||
|
||||
; Step 4 !
|
||||
; -----------------------------------------------------------------
|
||||
ConsoleWrite("4. Processing Hyperlinks...")
|
||||
FileWrite($Log, @CRLF&@CRLF&@TAB&"INFO : Processing Hyperlinks" & @CRLF)
|
||||
Local $i=1
|
||||
Local $TempFilesArray = _FileListToArray(@ScriptDir & "/TEMP")
|
||||
Local $CurrentFile
|
||||
Local $FinalFile
|
||||
While $i <= $TempFilesArray[0] ; For each markdown file in the temporary folder
|
||||
|
||||
;read the file
|
||||
$CurrentFile = FileOpen(@ScriptDir & "/TEMP/" & $TempFilesArray[$i], 0)
|
||||
; The magic happens in Parser.au3
|
||||
$FinalString = ReplaceHyperlinks($CurrentFile)
|
||||
|
||||
; copy the result to the final file location
|
||||
$FinalFile = FileOpen($OutputFolder & "/includes/" & $TempFilesArray[$i], 2)
|
||||
FileWrite($FinalFile, $FinalString)
|
||||
|
||||
FileClose($FinalFile)
|
||||
FileClose($CurrentFile)
|
||||
$i += 1
|
||||
WEnd
|
||||
ConsoleWrite("Done"&@CRLF)
|
||||
|
||||
|
||||
; Step 5 !
|
||||
; -----------------------------------------------------------------
|
||||
ConsoleWrite("5. Adding new documentation to index...")
|
||||
FileWrite($Log, @CRLF&@CRLF&@TAB&"INFO : Adding new documentation to index" & @CRLF)
|
||||
|
||||
; Now this is a bit annoying : there is no way to insert a line in a document.
|
||||
; So we need to read the first half of it, read the second half, and the wipe the whole document
|
||||
; This way, in the new doc, we can write the first half, what we wanted to insert, and then the second half !
|
||||
|
||||
; Let's store the index file in $IndexString
|
||||
Local $IndexFile = $OutputFolder&"/index.html.md"
|
||||
Local $IndexFileHandle = FileOpen($IndexFile, 0)
|
||||
Local $IndexString = FileRead($IndexFileHandle)
|
||||
$IndexString = StringRegExpReplace($IndexString, "-\h[A-Z][a-z]+\.[A-Z][a-z]+\s", "")
|
||||
|
||||
; Now we slpit it into and store the results in $BeforeString and $AfterString
|
||||
Local $SearchPos = StringInStr($IndexString, "search:")
|
||||
local $BeforeString = StringTrimRight($IndexString, StringLen($IndexString) - $SearchPos + 5)
|
||||
local $AfterString = StringTrimLeft($IndexString, $SearchPos - 1)
|
||||
|
||||
; reopening the index file wiping everything
|
||||
FileClose($IndexFileHandle)
|
||||
$IndexFileHandle = FileOpen($IndexFile, 2)
|
||||
|
||||
; write the first half
|
||||
FileWrite($IndexFileHandle, $BeforeString)
|
||||
Local $IncludePos = StringInStr($IndexString, "includes:")
|
||||
FileSetPos($IndexFileHandle, $IncludePos + 10, $FILE_BEGIN)
|
||||
|
||||
; add the new markdown files to the index
|
||||
$i = 1
|
||||
While $i <= $TempFilesArray[0]
|
||||
FileWrite($Log, StringTrimRight($TempFilesArray[$i], 3)&@CRLF)
|
||||
|
||||
FileWrite($IndexFileHandle, " - "&StringTrimRight($TempFilesArray[$i], 3)&@CRLF)
|
||||
$i+=1
|
||||
WEnd
|
||||
FileWrite($IndexFileHandle, @CRLF)
|
||||
|
||||
; append the second half of the file
|
||||
FileWrite($IndexFileHandle, $AfterString)
|
||||
FileClose($IndexFileHandle)
|
||||
ConsoleWrite("Done"&@CRLF)
|
||||
|
||||
; WE ARE DONE !
|
||||
ExitCleanly()
|
||||
209
Utils/Slate Documentation Generator/src/Writer.au3
Normal file
209
Utils/Slate Documentation Generator/src/Writer.au3
Normal file
@ -0,0 +1,209 @@
|
||||
; Takes an array and returns it in a markdown flavored list
|
||||
; If the list is a retun, then, there is no variable name...
|
||||
Func ArrayToList($Array, $Return)
|
||||
$String = ""
|
||||
$i = 0
|
||||
do
|
||||
$String &= "* "
|
||||
$String &= $Array[$i] & " "
|
||||
|
||||
If $Return Then
|
||||
If $Array[$i + 2] == "" or $Array[$i + 2] == " " Then
|
||||
$String &= @CRLF
|
||||
Else
|
||||
$String &= " " & $Array[$i + 1] & " " & $Array[$i + 2] & @CRLF
|
||||
EndIf
|
||||
Else
|
||||
|
||||
$String &= $Array[$i + 1]
|
||||
If $Array[$i + 2] == "" or $Array[$i + 2] == " " Then
|
||||
$String &= @CRLF
|
||||
Else
|
||||
$String &= " : " & $Array[$i + 2] & @CRLF
|
||||
EndIf
|
||||
EndIf
|
||||
$i += 3
|
||||
Until $i >= UBound($Array)
|
||||
Return $String
|
||||
EndFunc
|
||||
|
||||
|
||||
Func WriteModule($Block, $Group)
|
||||
Local $ModuleName = ParseForOneTag($Block, "@module")
|
||||
DirCreate(@ScriptDir & "\TEMP")
|
||||
Local $Output = FileOpen(@ScriptDir & "\TEMP\" & $Group & "." & $ModuleName & ".md", $FO_OVERWRITE)
|
||||
Local $Data = ""
|
||||
Local $DataPos = 1
|
||||
|
||||
FileWrite($Log, @CRLF&@TAB&"Writing "&$Group & "." & $ModuleName & ".md" &@CRLF)
|
||||
FileWrite($Log, "Writing Module "&$ModuleName&@CRLF)
|
||||
|
||||
; Add title of Module
|
||||
FileWrite($Output, "# " & $Group & "." & $ModuleName & " Module" & @CRLF)
|
||||
|
||||
; Copy the short description
|
||||
While StringRight($Data, 1) <> @CRLF And StringRight($Data, 1) <> @CR
|
||||
If StringRight($Data, 7) == "@module" Then ; If there is no comment in the module block
|
||||
Return $Output
|
||||
EndIf
|
||||
$Data &= StringMid($Block, $DataPos, 1)
|
||||
$DataPos += 1
|
||||
WEnd
|
||||
$Data = StringTrimRight($Data, 1)
|
||||
$Block = StringTrimLeft($Block, $DataPos)
|
||||
FileWrite($Output, $Data & @CRLF)
|
||||
|
||||
; copy the long description
|
||||
$DataPos = 1
|
||||
$Data = ""
|
||||
$Omit = False
|
||||
While StringRight($Data, 7) <> "@module"
|
||||
$Data &= StringMid($Block, $DataPos, 1)
|
||||
$DataPos += 1
|
||||
WEnd
|
||||
$Data = StringTrimRight($Data, 8)
|
||||
FileWrite($Output, $Data & @CRLF)
|
||||
Return $Output
|
||||
EndFunc
|
||||
|
||||
|
||||
Func WriteType($Block, $ModuleName, $Output)
|
||||
Local $TypeName = ParseForOneTag($Block, "@type")
|
||||
Local $ParentClass = GetData($TypeName, "parent")
|
||||
Local $Fields = ParseForTags($Block, "@field")
|
||||
|
||||
FileWrite($Log, "Writing Type "&$TypeName&@CRLF)
|
||||
|
||||
; Add title of Type
|
||||
FileWrite($Output, "## " & $TypeName & " Class" & @CRLF)
|
||||
|
||||
; Add hierearchy info if necessary. Some cool ASCII drawing is going on !
|
||||
If $ParentClass <> "ROOT" Then
|
||||
FileWrite($Output, "<pre>" & @CRLF)
|
||||
FileWrite($Output, "Inheritance : The " & $TypeName & " Class inherits from the following parents :" & @CRLF)
|
||||
Local $Hierarchy = GetParents($TypeName)
|
||||
Local $String = ""
|
||||
Local $TabBuffer = @TAB
|
||||
$String &= $Hierarchy[0]&@CRLF
|
||||
For $i=1 to UBound($Hierarchy)-1
|
||||
$String &= $TabBuffer&"`-- "&$Hierarchy[$i]&@CRLF
|
||||
$TabBuffer &= @TAB
|
||||
Next
|
||||
FileWrite($Output, $String)
|
||||
FileWrite($Output, "</pre>" & @CRLF)
|
||||
Else
|
||||
FileWrite($Output, "<pre>" & @CRLF)
|
||||
FileWrite($Output, "The " & $TypeName & " class does not inherit" & @CRLF)
|
||||
FileWrite($Output, "</pre>" & @CRLF)
|
||||
EndIf
|
||||
|
||||
; Copy the long description
|
||||
Local $DataPos = 1
|
||||
Local $Data = ""
|
||||
Local $Omit = False
|
||||
|
||||
While StringRight($Data, 1) <> @CR ; We discard the first line
|
||||
$Data &= StringMid($Block, $DataPos, 1)
|
||||
$DataPos += 1
|
||||
WEnd
|
||||
; If there is a tag in the first line, there is no description
|
||||
if StringInStr($Data, "@type") == 0 and StringInStr($Data, "@extends") == 0 and StringInStr($Data, "@field") == 0 Then
|
||||
$Data = ""
|
||||
$DataPos += 1
|
||||
|
||||
While StringRight($Data, 5) <> "@type"
|
||||
$Data &= StringMid($Block, $DataPos, 1)
|
||||
$DataPos += 1
|
||||
WEnd
|
||||
$Data = StringTrimRight($Data, 5)
|
||||
FileWrite($Output, $Data & @CRLF)
|
||||
EndIf
|
||||
|
||||
; Add the Attributes
|
||||
If IsArray($Fields) Then
|
||||
FileWrite($Output, "<h4> Attributes </h4>" & @CRLF & @CRLF)
|
||||
FileWrite($Output, ArrayToList($Fields, False) & @CRLF)
|
||||
EndIf
|
||||
FileWrite($Output, @CRLF)
|
||||
Return $TypeName
|
||||
EndFunc
|
||||
|
||||
|
||||
|
||||
Func WriteFunction($Block, $Declaration, $Output)
|
||||
Local $RegexResult = ParseFunctionName($Block, $Declaration)
|
||||
Local $FunctionName = $RegexResult[0]
|
||||
Local $TypeName = $RegexResult[1]
|
||||
Local $Parameters = ParseParams($Block, $Declaration)
|
||||
Local $Returns = ParseForTags($Block, "@return")
|
||||
Local $Usage = ParseForOneTag($Block, "@usage")
|
||||
Local $RegexResult
|
||||
|
||||
FileWrite($Log, "Writing Function "&$FunctionName&@CRLF)
|
||||
|
||||
If StringLeft($FunctionName, 1) == "_" Then
|
||||
_FileWriteLog($Log, @TAB&@Tab&"Function is private. Ignored." & @CRLF)
|
||||
Return $FunctionName
|
||||
EndIf
|
||||
; Add the class before the function name
|
||||
If IsArray($Parameters) Then
|
||||
If $Parameters[1] == "self" Then
|
||||
$FunctionName = $TypeName & ":" & $FunctionName
|
||||
EndIf
|
||||
Else
|
||||
$FunctionName = $TypeName & "." & $FunctionName
|
||||
EndIf
|
||||
|
||||
; add the parameters in parenthesis
|
||||
$FunctionName &= "("
|
||||
If IsArray($Parameters) Then
|
||||
For $i = 3 To UBound($Parameters) - 3 Step 3
|
||||
$FunctionName &= $Parameters[$i + 1] & ", "
|
||||
Next
|
||||
If UBound($Parameters) > 3 Then
|
||||
$FunctionName = StringTrimRight($FunctionName, 2)
|
||||
EndIf
|
||||
EndIf
|
||||
$FunctionName &= ")"
|
||||
|
||||
;write the file name
|
||||
FileWrite($Output, "### " & $FunctionName & @CRLF)
|
||||
|
||||
;Write the exemple if any
|
||||
If $Usage <> "" Then
|
||||
FileWrite($Output, "``` lua")
|
||||
FileWrite($Output, $Usage)
|
||||
FileWrite($Output, "```" & @CRLF)
|
||||
EndIf
|
||||
|
||||
;Write the description
|
||||
FileWrite($Log, $Block)
|
||||
FileWrite($Log, StringTrimRight($Block, StringLen($Block) - StringInStr($Block, "@param") + 1) & @CRLF)
|
||||
FileWrite($Output, StringTrimRight($Block, StringLen($Block) - StringInStr($Block, "@param") + 1) & @CRLF)
|
||||
|
||||
; Write the parameters
|
||||
FileWrite($Output, "<h4> Parameters </h4>" & @CRLF)
|
||||
If IsArray($Parameters) Then
|
||||
FileWrite($Output, ArrayToList($Parameters, False) & @CRLF)
|
||||
EndIf
|
||||
|
||||
; Write the returns
|
||||
FileWrite($Output, "<h4> Returns </h4>" & @CRLF)
|
||||
If IsArray($Returns) Then
|
||||
FileWrite($Output, ArrayToList($Returns, True) & @CRLF)
|
||||
EndIf
|
||||
|
||||
FileWrite($Output, @CRLF)
|
||||
|
||||
; add to the list of function balises (useful for hyperlinks)
|
||||
$RegexResult = ParseFunctionName($Block, $Declaration)
|
||||
Local $URLBalise = $TypeName & "-" & $RegexResult[0] & "-"
|
||||
If IsArray($Parameters) Then
|
||||
For $i = 3 To UBound($Parameters) - 3 Step 3
|
||||
$URLBalise &= StringLower($Parameters[$i + 1]) & "-"
|
||||
Next
|
||||
EndIf
|
||||
$URLBalise = StringTrimRight($URLBalise, 1)
|
||||
FileWrite($FunctionList, $URLBalise & @CRLF)
|
||||
return $FunctionName
|
||||
EndFunc
|
||||
@ -951,6 +951,9 @@ Use the method <a href="##(AI_PATROL_ZONE).ManageDamage">AI<em>PATROL</em>ZONE.M
|
||||
|
||||
|
||||
|
||||
|
||||
<p> This table contains the targets detected during patrol.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -251,24 +251,60 @@
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).Add">REPORT:Add(Text)</a></td>
|
||||
<td class="summary">
|
||||
<p>Add a new line to a REPORT.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).AddIndent">REPORT:AddIndent(Text)</a></td>
|
||||
<td class="summary">
|
||||
<p>Add a new line to a REPORT.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).ClassName">REPORT.ClassName</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).HasText">REPORT:HasText()</a></td>
|
||||
<td class="summary">
|
||||
<p>Has the REPORT Text?</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).Indent">REPORT.Indent</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).New">REPORT:New(Title)</a></td>
|
||||
<td class="summary">
|
||||
<p>Create a new REPORT.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).Report">REPORT.Report</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).SetIndent">REPORT:SetIndent(Indent)</a></td>
|
||||
<td class="summary">
|
||||
<p>Set indent of a REPORT.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).Text">REPORT:Text(Delimiter)</a></td>
|
||||
<td class="summary">
|
||||
<p>Produces the text of the report, taking into account an optional delimeter, which is \n by default.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).Title">REPORT.Title</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -765,6 +801,32 @@ Group#GROUP</p>
|
||||
<p><em><a href="##(REPORT)">#REPORT</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(REPORT).AddIndent" >
|
||||
<strong>REPORT:AddIndent(Text)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Add a new line to a REPORT.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string Text </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(REPORT)">#REPORT</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -779,6 +841,38 @@ Group#GROUP</p>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(REPORT).HasText" >
|
||||
<strong>REPORT:HasText()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Has the REPORT Text?</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#boolean:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(REPORT).Indent" >
|
||||
<strong>REPORT.Indent</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -805,6 +899,46 @@ Group#GROUP</p>
|
||||
<p><em><a href="##(REPORT)">#REPORT</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(REPORT).Report" >
|
||||
<strong>REPORT.Report</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(REPORT).SetIndent" >
|
||||
<strong>REPORT:SetIndent(Indent)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Set indent of a REPORT.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Indent </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(REPORT)">#REPORT</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -832,6 +966,20 @@ Group#GROUP</p>
|
||||
<p><em>#string:</em>
|
||||
The report text.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(REPORT).Title" >
|
||||
<strong>REPORT.Title</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@ -382,7 +382,7 @@ This is different from the EnRoute tasks, where the targets of the task need to
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CONTROLLABLE).IsTargetDetected">CONTROLLABLE:IsTargetDetected(DCSObject)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(CONTROLLABLE).IsTargetDetected">CONTROLLABLE:IsTargetDetected(DCSObject, DetectVisual, DetectOptical, DetectRadar, DetectIRST, DetectRWR, DetectDLINK)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -1466,19 +1466,49 @@ WayPoints If WayPoints is given, then return the WayPoints structure.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(CONTROLLABLE).IsTargetDetected" >
|
||||
<strong>CONTROLLABLE:IsTargetDetected(DCSObject)</strong>
|
||||
<strong>CONTROLLABLE:IsTargetDetected(DCSObject, DetectVisual, DetectOptical, DetectRadar, DetectIRST, DetectRWR, DetectDLINK)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> DCSObject </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectVisual </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectOptical </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectRadar </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectIRST </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectRWR </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectDLINK </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
|
||||
@ -326,6 +326,12 @@ The following iterator methods are currently available within the DATABASE:</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DATABASE).ForEachPlayerJoined">DATABASE:ForEachPlayerJoined(IteratorFunction, ...)</a></td>
|
||||
<td class="summary">
|
||||
<p>Iterate the DATABASE and call an iterator function for each player who has joined the mission, providing the Unit of the player and optional parameters.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DATABASE).ForEachStatic">DATABASE:ForEachStatic(IteratorFunction, FinalizeFunction, ...)</a></td>
|
||||
<td class="summary">
|
||||
<p>Iterate the DATABASE and call an iterator function for each <strong>alive</strong> STATIC, providing the STATIC and optional parameters.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -1279,6 +1285,43 @@ self</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DATABASE).ForEachStatic" >
|
||||
<strong>DATABASE:ForEachStatic(IteratorFunction, FinalizeFunction, ...)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Iterate the DATABASE and call an iterator function for each <strong>alive</strong> STATIC, providing the STATIC and optional parameters.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#function IteratorFunction </em></code>:
|
||||
The function that will be called for each object in the database. The function needs to accept a STATIC parameter.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> FinalizeFunction </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> ... </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(DATABASE)">#DATABASE</a>:</em>
|
||||
self</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DATABASE).ForEachUnit" >
|
||||
<strong>DATABASE:ForEachUnit(IteratorFunction, FinalizeFunction, ...)</strong>
|
||||
</a>
|
||||
|
||||
@ -279,7 +279,7 @@ each detected set of potential targets can be lased or smoked...</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DESIGNATE).MenuStatus">DESIGNATE:MenuStatus(AttackGroup)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DESIGNATE).MenuStatus">DESIGNATE:MenuStatus(AttackGroup, Duration)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -375,7 +375,7 @@ each detected set of potential targets can be lased or smoked...</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DESIGNATE).SendStatus">DESIGNATE:SendStatus(AttackGroup, MenuAttackGroup)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DESIGNATE).SendStatus">DESIGNATE:SendStatus(AttackGroup, Duration, MenuAttackGroup)</a></td>
|
||||
<td class="summary">
|
||||
<p>Sends the status to the Attack Groups.</p>
|
||||
</td>
|
||||
@ -1065,19 +1065,24 @@ function below will use the range 1-7 just in case</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(DESIGNATE).MenuStatus" >
|
||||
<strong>DESIGNATE:MenuStatus(AttackGroup)</strong>
|
||||
<strong>DESIGNATE:MenuStatus(AttackGroup, Duration)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> Duration </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -1556,7 +1561,7 @@ The Attack collection of GROUP objects to designate and report for.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(DESIGNATE).SendStatus" >
|
||||
<strong>DESIGNATE:SendStatus(AttackGroup, MenuAttackGroup)</strong>
|
||||
<strong>DESIGNATE:SendStatus(AttackGroup, Duration, MenuAttackGroup)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -1572,6 +1577,12 @@ The Attack collection of GROUP objects to designate and report for.</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Duration </em></code>:
|
||||
The time in seconds the report should be visible.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> MenuAttackGroup </em></code>: </p>
|
||||
|
||||
</li>
|
||||
|
||||
@ -192,6 +192,12 @@ DETECTION uses the in-built detection capabilities of DCS World, but adds new fu
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).CreateDetectionItems">DETECTION_AREAS:CreateDetectionItems()</a></td>
|
||||
<td class="summary">
|
||||
<p>Make a DetectionSet table.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).DetectedItemMenu">DETECTION_AREAS:DetectedItemMenu(Index)</a></td>
|
||||
<td class="summary">
|
||||
<p>Menu of a detected item using a given numeric index.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -204,6 +210,12 @@ DETECTION uses the in-built detection capabilities of DCS World, but adds new fu
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).DetectedItems">DETECTION_AREAS.DetectedItems</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).DetectedReportDetailed">DETECTION_AREAS:DetectedReportDetailed()</a></td>
|
||||
<td class="summary">
|
||||
<p>Report detailed of a detection result.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -331,7 +343,7 @@ DETECTION uses the in-built detection capabilities of DCS World, but adds new fu
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).AddDetectedItem">DETECTION_BASE:AddDetectedItem(DetectedItemIndex, Set)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).AddDetectedItem">DETECTION_BASE:AddDetectedItem(ItemPrefix, DetectedItemIndex, Set)</a></td>
|
||||
<td class="summary">
|
||||
<p>Adds a new DetectedItem to the DetectedItems list.</p>
|
||||
</td>
|
||||
@ -424,6 +436,12 @@ DETECTION uses the in-built detection capabilities of DCS World, but adds new fu
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectedItemMax">DETECTION_BASE.DetectedItemMax</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectedItemMenu">DETECTION_BASE:DetectedItemMenu(Index)</a></td>
|
||||
<td class="summary">
|
||||
<p>Menu of a detected item using a given numeric index.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -513,12 +531,24 @@ The different values of Unit.Category can be:</p>
|
||||
</ul>
|
||||
|
||||
<p>Multiple Unit.Category entries can be given as a table and then these will be evaluated as an OR expression.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectedID">DETECTION_BASE:GetDetectedID(Index)</a></td>
|
||||
<td class="summary">
|
||||
<p>Get a detected ID using a given numeric index.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectedItem">DETECTION_BASE:GetDetectedItem(Index)</a></td>
|
||||
<td class="summary">
|
||||
<p>Get a detected item using a given numeric index.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).GetDetectedItemID">DETECTION_BASE:GetDetectedItemID(Index)</a></td>
|
||||
<td class="summary">
|
||||
<p>Get a detected ItemID using a given numeric index.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -905,6 +935,42 @@ The different values of Unit.Category can be:</p>
|
||||
<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).IsVisible">DETECTION_BASE.DetectedObject.IsVisible</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).KnowDistance">DETECTION_BASE.DetectedObject.KnowDistance</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).KnowType">DETECTION_BASE.DetectedObject.KnowType</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).LastPos">DETECTION_BASE.DetectedObject.LastPos</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).LastTime">DETECTION_BASE.DetectedObject.LastTime</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE.DetectedObject).LastVelocity">DETECTION_BASE.DetectedObject.LastVelocity</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -917,12 +983,6 @@ The different values of Unit.Category can be:</p>
|
||||
<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>
|
||||
@ -939,6 +999,12 @@ The different values of Unit.Category can be:</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_TYPES).CreateDetectionItems">DETECTION_TYPES:CreateDetectionItems()</a></td>
|
||||
<td class="summary">
|
||||
<p>Create the DetectedItems list from the DetectedObjects table.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_TYPES).DetectedItemMenu">DETECTION_TYPES:DetectedItemMenu(Index, DetectedTypeName)</a></td>
|
||||
<td class="summary">
|
||||
<p>Menu of a DetectedItem using a given numeric index.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -1015,6 +1081,12 @@ The different values of Unit.Category can be:</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_UNITS).CreateDetectionItems">DETECTION_UNITS:CreateDetectionItems()</a></td>
|
||||
<td class="summary">
|
||||
<p>Create the DetectedItems list from the DetectedObjects table.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_UNITS).DetectedItemMenu">DETECTION_UNITS:DetectedItemMenu(Index)</a></td>
|
||||
<td class="summary">
|
||||
<p>Menu of a DetectedItem using a given numeric index.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -1476,6 +1548,32 @@ self</p>
|
||||
<p><em><a href="##(DETECTION_AREAS)">#DETECTION_AREAS</a>:</em>
|
||||
self</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_AREAS).DetectedItemMenu" >
|
||||
<strong>DETECTION_AREAS:DetectedItemMenu(Index)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Menu of a detected item using a given numeric index.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> Index </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1516,6 +1614,24 @@ self</p>
|
||||
|
||||
<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>
|
||||
|
||||
<a id="#(DETECTION_AREAS).DetectedReportDetailed" >
|
||||
<strong>DETECTION_AREAS:DetectedReportDetailed()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Report detailed of a detection result.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1944,7 +2060,7 @@ self</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_BASE).AddDetectedItem" >
|
||||
<strong>DETECTION_BASE:AddDetectedItem(DetectedItemIndex, Set)</strong>
|
||||
<strong>DETECTION_BASE:AddDetectedItem(ItemPrefix, DetectedItemIndex, Set)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -1958,6 +2074,11 @@ self</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> ItemPrefix </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string DetectedItemIndex </em></code>:
|
||||
The index of the DetectedItem.</p>
|
||||
|
||||
@ -2223,6 +2344,32 @@ The index of the DetectedItem.</p>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_BASE).DetectedItemMenu" >
|
||||
<strong>DETECTION_BASE:DetectedItemMenu(Index)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Menu of a detected item using a given numeric index.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> Index </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2468,6 +2615,32 @@ self</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_BASE).GetDetectedID" >
|
||||
<strong>DETECTION_BASE:GetDetectedID(Index)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Get a detected ID 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>#string:</em>
|
||||
DetectedItemID</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_BASE).GetDetectedItem" >
|
||||
<strong>DETECTION_BASE:GetDetectedItem(Index)</strong>
|
||||
</a>
|
||||
@ -2489,6 +2662,32 @@ self</p>
|
||||
<p><em><a href="##(DETECTION_BASE.DetectedItem)">#DETECTION_BASE.DetectedItem</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_BASE).GetDetectedItemID" >
|
||||
<strong>DETECTION_BASE:GetDetectedItemID(Index)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Get a detected ItemID 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>#string:</em>
|
||||
DetectedItemID</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -4061,6 +4260,90 @@ The To State string.</p>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#boolean</em>
|
||||
<a id="#(DETECTION_BASE.DetectedObject).IsVisible" >
|
||||
<strong>DETECTION_BASE.DetectedObject.IsVisible</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#boolean</em>
|
||||
<a id="#(DETECTION_BASE.DetectedObject).KnowDistance" >
|
||||
<strong>DETECTION_BASE.DetectedObject.KnowDistance</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#boolean</em>
|
||||
<a id="#(DETECTION_BASE.DetectedObject).KnowType" >
|
||||
<strong>DETECTION_BASE.DetectedObject.KnowType</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#boolean</em>
|
||||
<a id="#(DETECTION_BASE.DetectedObject).LastPos" >
|
||||
<strong>DETECTION_BASE.DetectedObject.LastPos</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(DETECTION_BASE.DetectedObject).LastTime" >
|
||||
<strong>DETECTION_BASE.DetectedObject.LastTime</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(DETECTION_BASE.DetectedObject).LastVelocity" >
|
||||
<strong>DETECTION_BASE.DetectedObject.LastVelocity</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -4089,20 +4372,6 @@ The To State string.</p>
|
||||
|
||||
|
||||
|
||||
</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>
|
||||
|
||||
@ -4154,6 +4423,37 @@ Beware that when the amount of different types detected is large, the DetectedIt
|
||||
<p><em><a href="##(DETECTION_TYPES)">#DETECTION_TYPES</a>:</em>
|
||||
self</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_TYPES).DetectedItemMenu" >
|
||||
<strong>DETECTION_TYPES:DetectedItemMenu(Index, DetectedTypeName)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Menu of a DetectedItem using a given numeric index.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> Index </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectedTypeName </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -4389,6 +4689,32 @@ Beware that when the amount of units detected is large, the DetectedItems list w
|
||||
<p><em><a href="##(DETECTION_UNITS)">#DETECTION_UNITS</a>:</em>
|
||||
self</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_UNITS).DetectedItemMenu" >
|
||||
<strong>DETECTION_UNITS:DetectedItemMenu(Index)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Menu of a DetectedItem using a given numeric index.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> Index </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -1622,7 +1622,7 @@ A string defining the start state.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#string</em>
|
||||
<em></em>
|
||||
<a id="#(FSM)._StartState" >
|
||||
<strong>FSM._StartState</strong>
|
||||
</a>
|
||||
@ -1921,6 +1921,7 @@ A string defining the start state.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(FSM).current" >
|
||||
<strong>FSM.current</strong>
|
||||
</a>
|
||||
|
||||
@ -167,7 +167,7 @@ A <a href="CLIENT.html">CLIENT</a> needs to be registered within the <a href="MI
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).GetMenu">MISSION:GetMenu(TaskGroup)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).GetMenu">MISSION:GetMenu()</a></td>
|
||||
<td class="summary">
|
||||
<p>Gets the mission menu for the coalition.</p>
|
||||
</td>
|
||||
@ -200,6 +200,12 @@ A <a href="CLIENT.html">CLIENT</a> needs to be registered within the <a href="MI
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).GetTasks">MISSION:GetTasks()</a></td>
|
||||
<td class="summary">
|
||||
<p>Get all the TASKs from the Mission.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).GetTasksRemaining">MISSION:GetTasksRemaining()</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -209,39 +215,51 @@ A <a href="CLIENT.html">CLIENT</a> needs to be registered within the <a href="MI
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsCompleted">MISSION:IsCompleted()</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsCOMPLETED">MISSION:IsCOMPLETED()</a></td>
|
||||
<td class="summary">
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Completed</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>COMPLETED</strong>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsFailed">MISSION:IsFailed()</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsENGAGED">MISSION:IsENGAGED()</a></td>
|
||||
<td class="summary">
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Failed</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>ENGAGED</strong>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsHold">MISSION:IsHold()</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsFAILED">MISSION:IsFAILED()</a></td>
|
||||
<td class="summary">
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Hold</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>FAILED</strong>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsIdle">MISSION:IsIdle()</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsHOLD">MISSION:IsHOLD()</a></td>
|
||||
<td class="summary">
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Idle</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>HOLD</strong>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsOngoing">MISSION:IsOngoing()</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).IsIDLE">MISSION:IsIDLE()</a></td>
|
||||
<td class="summary">
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Ongoing</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>IDLE</strong>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).JoinUnit">MISSION:JoinUnit(PlayerUnit, PlayerGroup)</a></td>
|
||||
<td class="summary">
|
||||
<p>Add a Unit to join the Mission.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).MenuReportOverview">MISSION:MenuReportOverview(TaskStatus, ReportGroup)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).MenuReportSummary">MISSION:MenuReportSummary(ReportGroup)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -323,51 +341,51 @@ A <a href="CLIENT.html">CLIENT</a> needs to be registered within the <a href="MI
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterCompleted">MISSION:OnEnterCompleted(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterCOMPLETED">MISSION:OnEnterCOMPLETED(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnEnter Transition Handler for State Completed.</p>
|
||||
<p>OnEnter Transition Handler for State COMPLETED.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterFailed">MISSION:OnEnterFailed(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterENGAGED">MISSION:OnEnterENGAGED(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnEnter Transition Handler for State Failed.</p>
|
||||
<p>OnEnter Transition Handler for State ENGAGED.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterIdle">MISSION:OnEnterIdle(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterFAILED">MISSION:OnEnterFAILED(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnEnter Transition Handler for State Idle.</p>
|
||||
<p>OnEnter Transition Handler for State FAILED.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterOngoing">MISSION:OnEnterOngoing(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnEnterIDLE">MISSION:OnEnterIDLE(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnEnter Transition Handler for State Ongoing.</p>
|
||||
<p>OnEnter Transition Handler for State IDLE.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveCompleted">MISSION:OnLeaveCompleted(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveCOMPLETED">MISSION:OnLeaveCOMPLETED(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnLeave Transition Handler for State Completed.</p>
|
||||
<p>OnLeave Transition Handler for State COMPLETED.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveFailed">MISSION:OnLeaveFailed(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveENGAGED">MISSION:OnLeaveENGAGED(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnLeave Transition Handler for State Failed.</p>
|
||||
<p>OnLeave Transition Handler for State ENGAGED.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveIdle">MISSION:OnLeaveIdle(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveFAILED">MISSION:OnLeaveFAILED(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnLeave Transition Handler for State Idle.</p>
|
||||
<p>OnLeave Transition Handler for State FAILED.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveOngoing">MISSION:OnLeaveOngoing(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).OnLeaveIDLE">MISSION:OnLeaveIDLE(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
<p>OnLeave Transition Handler for State Ongoing.</p>
|
||||
<p>OnLeave Transition Handler for State IDLE.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -395,7 +413,7 @@ A <a href="CLIENT.html">CLIENT</a> needs to be registered within the <a href="MI
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).ReportOverview">MISSION:ReportOverview()</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).ReportOverview">MISSION:ReportOverview(TaskStatus)</a></td>
|
||||
<td class="summary">
|
||||
<p>Create a overview report of the Mission (multiple lines).</p>
|
||||
</td>
|
||||
@ -467,7 +485,7 @@ A <a href="CLIENT.html">CLIENT</a> needs to be registered within the <a href="MI
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).onenterCompleted">MISSION:onenterCompleted(From, Event, To)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(MISSION).onenterCOMPLETED">MISSION:onenterCOMPLETED(From, Event, To)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
@ -697,21 +715,13 @@ true if Unit is part of a Task in the Mission.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).GetMenu" >
|
||||
<strong>MISSION:GetMenu(TaskGroup)</strong>
|
||||
<strong>MISSION:GetMenu()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Gets the mission menu for the coalition.</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="Core.Menu.html##(MENU_COALITION)">Core.Menu#MENU_COALITION</a>:</em>
|
||||
@ -851,6 +861,24 @@ Returns nil if no task was found.</p>
|
||||
Tasks = Mission:GetTasks()
|
||||
env.info( "Task 2 Completion = " .. Tasks[2]:GetGoalPercentage() .. "%" )</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).GetTasksRemaining" >
|
||||
<strong>MISSION:GetTasksRemaining()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#number:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -893,13 +921,13 @@ true if the Mission has a Group.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).IsCompleted" >
|
||||
<strong>MISSION:IsCompleted()</strong>
|
||||
<a id="#(MISSION).IsCOMPLETED" >
|
||||
<strong>MISSION:IsCOMPLETED()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Completed</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>COMPLETED</strong>.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
@ -911,13 +939,13 @@ true if the Mission has a Group.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).IsFailed" >
|
||||
<strong>MISSION:IsFailed()</strong>
|
||||
<a id="#(MISSION).IsENGAGED" >
|
||||
<strong>MISSION:IsENGAGED()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Failed</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>ENGAGED</strong>.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
@ -929,13 +957,13 @@ true if the Mission has a Group.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).IsHold" >
|
||||
<strong>MISSION:IsHold()</strong>
|
||||
<a id="#(MISSION).IsFAILED" >
|
||||
<strong>MISSION:IsFAILED()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Hold</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>FAILED</strong>.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
@ -947,13 +975,13 @@ true if the Mission has a Group.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).IsIdle" >
|
||||
<strong>MISSION:IsIdle()</strong>
|
||||
<a id="#(MISSION).IsHOLD" >
|
||||
<strong>MISSION:IsHOLD()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Idle</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>HOLD</strong>.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
@ -965,13 +993,13 @@ true if the Mission has a Group.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).IsOngoing" >
|
||||
<strong>MISSION:IsOngoing()</strong>
|
||||
<a id="#(MISSION).IsIDLE" >
|
||||
<strong>MISSION:IsIDLE()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>Ongoing</strong>.</p>
|
||||
<p>Is the <a href="Mission.html">Mission</a> <strong>IDLE</strong>.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
@ -1016,6 +1044,54 @@ The GROUP of the player joining the Mission.</p>
|
||||
<p><em>#boolean:</em>
|
||||
true if Unit is part of a Task in the Mission.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).MenuReportOverview" >
|
||||
<strong>MISSION:MenuReportOverview(TaskStatus, ReportGroup)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string TaskStatus </em></code>:
|
||||
The status</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> ReportGroup </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).MenuReportSummary" >
|
||||
<strong>MISSION:MenuReportSummary(ReportGroup)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> ReportGroup </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1422,13 +1498,13 @@ Return false to cancel Transition.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnEnterCompleted" >
|
||||
<strong>MISSION:OnEnterCompleted(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnEnterCOMPLETED" >
|
||||
<strong>MISSION:OnEnterCOMPLETED(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnEnter Transition Handler for State Completed.</p>
|
||||
<p>OnEnter Transition Handler for State COMPLETED.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1456,13 +1532,13 @@ The To State string.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnEnterFailed" >
|
||||
<strong>MISSION:OnEnterFailed(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnEnterENGAGED" >
|
||||
<strong>MISSION:OnEnterENGAGED(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnEnter Transition Handler for State Failed.</p>
|
||||
<p>OnEnter Transition Handler for State ENGAGED.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1490,13 +1566,13 @@ The To State string.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnEnterIdle" >
|
||||
<strong>MISSION:OnEnterIdle(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnEnterFAILED" >
|
||||
<strong>MISSION:OnEnterFAILED(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnEnter Transition Handler for State Idle.</p>
|
||||
<p>OnEnter Transition Handler for State FAILED.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1524,13 +1600,13 @@ The To State string.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnEnterOngoing" >
|
||||
<strong>MISSION:OnEnterOngoing(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnEnterIDLE" >
|
||||
<strong>MISSION:OnEnterIDLE(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnEnter Transition Handler for State Ongoing.</p>
|
||||
<p>OnEnter Transition Handler for State IDLE.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1558,13 +1634,13 @@ The To State string.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnLeaveCompleted" >
|
||||
<strong>MISSION:OnLeaveCompleted(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnLeaveCOMPLETED" >
|
||||
<strong>MISSION:OnLeaveCOMPLETED(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnLeave Transition Handler for State Completed.</p>
|
||||
<p>OnLeave Transition Handler for State COMPLETED.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1597,13 +1673,13 @@ Return false to cancel Transition.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnLeaveFailed" >
|
||||
<strong>MISSION:OnLeaveFailed(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnLeaveENGAGED" >
|
||||
<strong>MISSION:OnLeaveENGAGED(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnLeave Transition Handler for State Failed.</p>
|
||||
<p>OnLeave Transition Handler for State ENGAGED.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1636,13 +1712,13 @@ Return false to cancel Transition.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnLeaveIdle" >
|
||||
<strong>MISSION:OnLeaveIdle(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnLeaveFAILED" >
|
||||
<strong>MISSION:OnLeaveFAILED(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnLeave Transition Handler for State Idle.</p>
|
||||
<p>OnLeave Transition Handler for State FAILED.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1675,13 +1751,13 @@ Return false to cancel Transition.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).OnLeaveOngoing" >
|
||||
<strong>MISSION:OnLeaveOngoing(From, Event, To)</strong>
|
||||
<a id="#(MISSION).OnLeaveIDLE" >
|
||||
<strong>MISSION:OnLeaveIDLE(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>OnLeave Transition Handler for State Ongoing.</p>
|
||||
<p>OnLeave Transition Handler for State IDLE.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
@ -1811,13 +1887,21 @@ self</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).ReportOverview" >
|
||||
<strong>MISSION:ReportOverview()</strong>
|
||||
<strong>MISSION:ReportOverview(TaskStatus)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Create a overview report of the Mission (multiple lines).</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> TaskStatus </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em></p>
|
||||
@ -2047,8 +2131,8 @@ The delay in seconds.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(MISSION).onenterCompleted" >
|
||||
<strong>MISSION:onenterCompleted(From, Event, To)</strong>
|
||||
<a id="#(MISSION).onenterCOMPLETED" >
|
||||
<strong>MISSION:onenterCOMPLETED(From, Event, To)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
@ -213,7 +213,6 @@ on defined intervals (currently every minute).</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(MOVEMENT).AliveUnits" >
|
||||
<strong>MOVEMENT.AliveUnits</strong>
|
||||
</a>
|
||||
@ -222,9 +221,6 @@ on defined intervals (currently every minute).</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Contains the counter how many units are currently alive</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -157,6 +157,14 @@
|
||||
|
||||
<h2>Global(s)</h2>
|
||||
<table class="function_list">
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="#COORDINATE">COORDINATE</a></td>
|
||||
<td class="summary">
|
||||
<h1>COORDINATE class, extends <a href="Point.html##(COORDINATE)">Point#COORDINATE</a></h1>
|
||||
|
||||
<p>The COORDINATE class defines a 2D coordinate in the simulator.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="#POINT_VEC2">POINT_VEC2</a></td>
|
||||
<td class="summary">
|
||||
@ -174,6 +182,107 @@
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<h2><a id="#(COORDINATE)">Type <code>COORDINATE</code></a></h2>
|
||||
<table class="function_list">
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).CoordinateMenu">COORDINATE:CoordinateMenu(RootMenu)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).LL_Accuracy">COORDINATE.LL_Accuracy</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).LL_DMS">COORDINATE.LL_DMS</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).MGRS_Accuracy">COORDINATE.MGRS_Accuracy</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).MenuLL_Accuracy">COORDINATE:MenuLL_Accuracy(LL_Accuracy)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).MenuLL_DMS">COORDINATE:MenuLL_DMS(LL_DMS)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).MenuMGRS_Accuracy">COORDINATE:MenuMGRS_Accuracy(MGRS_Accuracy)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).MenuSystem">COORDINATE:MenuSystem(System)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).New">COORDINATE:New(x, y, LandHeightAdd)</a></td>
|
||||
<td class="summary">
|
||||
<p>COORDINATE constructor.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).NewFromVec2">COORDINATE:NewFromVec2(Vec2, LandHeightAdd)</a></td>
|
||||
<td class="summary">
|
||||
<p>Create a new COORDINATE object from Vec2 coordinates.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).NewFromVec3">COORDINATE:NewFromVec3(Vec3)</a></td>
|
||||
<td class="summary">
|
||||
<p>Create a new COORDINATE object from Vec3 coordinates.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).System">COORDINATE.System</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).SystemMenu">COORDINATE.SystemMenu</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).ToString">COORDINATE:ToString()</a></td>
|
||||
<td class="summary">
|
||||
<p>Provides a coordinate string of the point, based on a coordinate format system:
|
||||
* Uses default settings in COORDINATE.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).ToStringLL">COORDINATE:ToStringLL(LL_Accuracy, LL_DMS)</a></td>
|
||||
<td class="summary">
|
||||
<p>Provides a Lat Lon string</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(COORDINATE).ToStringMGRS">COORDINATE:ToStringMGRS(MGRS_Accuracy)</a></td>
|
||||
<td class="summary">
|
||||
<p>Provides a MGRS string</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2><a id="#(POINT_VEC2)">Type <code>POINT_VEC2</code></a></h2>
|
||||
<table class="function_list">
|
||||
<tr>
|
||||
@ -622,12 +731,6 @@
|
||||
<td class="name" nowrap="nowrap"><a href="##(POINT_VEC3).ToStringBR">POINT_VEC3:ToStringBR(AngleRadians, Distance)</a></td>
|
||||
<td class="summary">
|
||||
<p>Provides a Bearing / Range string</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(POINT_VEC3).ToStringLL">POINT_VEC3:ToStringLL(AngleRadians, Distance, acc, DMS)</a></td>
|
||||
<td class="summary">
|
||||
<p>Provides a Bearing / Range string</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -702,6 +805,51 @@
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em><a href="##(COORDINATE)">#COORDINATE</a></em>
|
||||
<a id="COORDINATE" >
|
||||
<strong>COORDINATE</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<h1>COORDINATE class, extends <a href="Point.html##(COORDINATE)">Point#COORDINATE</a></h1>
|
||||
|
||||
<p>The COORDINATE class defines a 2D coordinate in the simulator.</p>
|
||||
|
||||
|
||||
<p>The height coordinate (if needed) will be the land height + an optional added height specified.
|
||||
A COORDINATE can be expressed in LL or in MGRS.</p>
|
||||
|
||||
<h2>COORDINATE constructor</h2>
|
||||
|
||||
<p>A new COORDINATE instance can be created with:</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="Point.html##(COORDINATE).New">Point#COORDINATE.New</a>(): a 2D point, taking an additional height parameter.</li>
|
||||
<li><a href="Point.html##(COORDINATE).NewFromVec2">Point#COORDINATE.NewFromVec2</a>(): a 2D point created from a <a href="DCSTypes.html##(Vec2)">DCSTypes#Vec2</a>.</li>
|
||||
</ul>
|
||||
|
||||
<h2>Manupulate the X, Altitude, Y coordinates of the 2D point</h2>
|
||||
|
||||
<p>A COORDINATE class works in 2D space, with an altitude setting. It contains internally an X, Altitude, Y coordinate.
|
||||
Methods exist to manupulate these coordinates.</p>
|
||||
|
||||
<p>The current X, Altitude, Y axis can be retrieved with the methods <a href="##(COORDINATE).GetX">COORDINATE.GetX</a>(), <a href="##(COORDINATE).GetAlt">COORDINATE.GetAlt</a>(), <a href="##(COORDINATE).GetY">COORDINATE.GetY</a>() respectively.
|
||||
The methods <a href="##(COORDINATE).SetX">COORDINATE.SetX</a>(), <a href="##(COORDINATE).SetAlt">COORDINATE.SetAlt</a>(), <a href="##(COORDINATE).SetY">COORDINATE.SetY</a>() change the respective axis with a new value.
|
||||
The current Lat(itude), Alt(itude), Lon(gitude) values can also be retrieved with the methods <a href="##(COORDINATE).GetLat">COORDINATE.GetLat</a>(), <a href="##(COORDINATE).GetAlt">COORDINATE.GetAlt</a>(), <a href="##(COORDINATE).GetLon">COORDINATE.GetLon</a>() respectively.
|
||||
The current axis values can be changed by using the methods <a href="##(COORDINATE).AddX">COORDINATE.AddX</a>(), <a href="##(COORDINATE).AddAlt">COORDINATE.AddAlt</a>(), <a href="##(COORDINATE).AddY">COORDINATE.AddY</a>()
|
||||
to add or substract a value from the current respective axis value.
|
||||
Note that the Set and Add methods return the current COORDINATE object, so these manipulation methods can be chained... For example:</p>
|
||||
|
||||
<pre><code> local Vec2 = PointVec2:AddX( 100 ):AddY( 2000 ):GetVec2()
|
||||
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em><a href="##(POINT_VEC2)">#POINT_VEC2</a></em>
|
||||
<a id="POINT_VEC2" >
|
||||
<strong>POINT_VEC2</strong>
|
||||
@ -904,6 +1052,378 @@ Note that the Set and Add methods return the current POINT_VEC3 object, so these
|
||||
</dl>
|
||||
<h2><a id="#(Point)" >Type <code>Point</code></a></h2>
|
||||
|
||||
<h2><a id="#(COORDINATE)" >Type <code>COORDINATE</code></a></h2>
|
||||
<h3>Field(s)</h3>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).CoordinateMenu" >
|
||||
<strong>COORDINATE:CoordinateMenu(RootMenu)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> RootMenu </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em>
|
||||
The coordinate Text in the configured coordinate system.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(COORDINATE).LL_Accuracy" >
|
||||
<strong>COORDINATE.LL_Accuracy</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#boolean</em>
|
||||
<a id="#(COORDINATE).LL_DMS" >
|
||||
<strong>COORDINATE.LL_DMS</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(COORDINATE).MGRS_Accuracy" >
|
||||
<strong>COORDINATE.MGRS_Accuracy</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).MenuLL_Accuracy" >
|
||||
<strong>COORDINATE:MenuLL_Accuracy(LL_Accuracy)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> LL_Accuracy </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).MenuLL_DMS" >
|
||||
<strong>COORDINATE:MenuLL_DMS(LL_DMS)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> LL_DMS </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).MenuMGRS_Accuracy" >
|
||||
<strong>COORDINATE:MenuMGRS_Accuracy(MGRS_Accuracy)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> MGRS_Accuracy </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).MenuSystem" >
|
||||
<strong>COORDINATE:MenuSystem(System)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> System </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).New" >
|
||||
<strong>COORDINATE:New(x, y, LandHeightAdd)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>COORDINATE constructor.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> x </em></code>:
|
||||
The x coordinate of the Vec3 point, pointing to the North.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> y </em></code>:
|
||||
The y coordinate of the Vec3 point, pointing to the Right.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> LandHeightAdd </em></code>:
|
||||
(optional) The default height if required to be evaluated will be the land height of the x, y coordinate. You can specify an extra height to be added to the land height.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).NewFromVec2" >
|
||||
<strong>COORDINATE:NewFromVec2(Vec2, LandHeightAdd)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Create a new COORDINATE object from Vec2 coordinates.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Vec2)">Dcs.DCSTypes#Vec2</a> Vec2 </em></code>:
|
||||
The Vec2 point.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> LandHeightAdd </em></code>:
|
||||
(optional) The default height if required to be evaluated will be the land height of the x, y coordinate. You can specify an extra height to be added to the land height.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>:</em>
|
||||
self</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).NewFromVec3" >
|
||||
<strong>COORDINATE:NewFromVec3(Vec3)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Create a new COORDINATE object from Vec3 coordinates.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Vec3)">Dcs.DCSTypes#Vec3</a> Vec3 </em></code>:
|
||||
The Vec3 point.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>:</em>
|
||||
self</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#string</em>
|
||||
<a id="#(COORDINATE).System" >
|
||||
<strong>COORDINATE.System</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).SystemMenu" >
|
||||
<strong>COORDINATE.SystemMenu</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).ToString" >
|
||||
<strong>COORDINATE:ToString()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Provides a coordinate string of the point, based on a coordinate format system:
|
||||
* Uses default settings in COORDINATE.</p>
|
||||
|
||||
|
||||
<ul>
|
||||
<li>Can be overridden if for a GROUP containing x clients, a menu was selected to override the default.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em>
|
||||
The coordinate Text in the configured coordinate system.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).ToStringLL" >
|
||||
<strong>COORDINATE:ToStringLL(LL_Accuracy, LL_DMS)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Provides a Lat Lon string</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number LL_Accuracy </em></code>:
|
||||
The accurancy of significant numbers behind the comma... So Accurancy of 2 is 0.01.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#boolean LL_DMS </em></code>:
|
||||
true = Degrees, Minutes, Seconds; false = Degrees, Minutes</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em>
|
||||
The LL Text</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(COORDINATE).ToStringMGRS" >
|
||||
<strong>COORDINATE:ToStringMGRS(MGRS_Accuracy)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Provides a MGRS string</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number MGRS_Accuracy </em></code>:
|
||||
of the 5 digit code.
|
||||
Precision depends on the Accuracy choosen:
|
||||
* 0 = no digits - precision level 100 km
|
||||
* 1 = 1 digits - precision level 10 km
|
||||
* 2 = 2 digits - precision level 1 km
|
||||
* 3 = 3 digits - precision level 100 m
|
||||
* 4 = 4 digits - precision level 10 m.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em>
|
||||
The MGRS Text</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<h2><a id="#(POINT_VEC2)" >Type <code>POINT_VEC2</code></a></h2>
|
||||
<h3>Field(s)</h3>
|
||||
<dl class="function">
|
||||
@ -2664,49 +3184,6 @@ The BR Text</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(POINT_VEC3).ToStringLL" >
|
||||
<strong>POINT_VEC3:ToStringLL(AngleRadians, Distance, acc, DMS)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Provides a Bearing / Range string</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number AngleRadians </em></code>:
|
||||
The angle in randians</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Distance </em></code>:
|
||||
The distance</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> acc </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DMS </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em>
|
||||
The BR Text</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(POINT_VEC3).Translate" >
|
||||
<strong>POINT_VEC3:Translate(Distance, Angle)</strong>
|
||||
</a>
|
||||
|
||||
@ -163,6 +163,12 @@
|
||||
<td class="name" nowrap="nowrap"><a href="##(POSITIONABLE).GetBeacon">POSITIONABLE:GetBeacon()</a></td>
|
||||
<td class="summary">
|
||||
<p>Create a <a href="Radio.html##(BEACON)">Radio#BEACON</a>, to allow this POSITIONABLE to broadcast beacon signals</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(POSITIONABLE).GetCoordinate">POSITIONABLE:GetCoordinate()</a></td>
|
||||
<td class="summary">
|
||||
<p>Returns a COORDINATE object indicating the point in 3D of the POSITIONABLE within the mission.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -457,6 +463,34 @@ Radio</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(POSITIONABLE).GetCoordinate" >
|
||||
<strong>POSITIONABLE:GetCoordinate()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Returns a COORDINATE object indicating the point in 3D of the POSITIONABLE within the mission.</p>
|
||||
|
||||
<h3>Return values</h3>
|
||||
<ol>
|
||||
<li>
|
||||
|
||||
<p><em><a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>:</em>
|
||||
The COORDINATE of the POSITIONABLE.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><em>#nil:</em>
|
||||
The POSITIONABLE is not existing or alive. </p>
|
||||
|
||||
</li>
|
||||
</ol>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(POSITIONABLE).GetHeading" >
|
||||
<strong>POSITIONABLE:GetHeading()</strong>
|
||||
</a>
|
||||
|
||||
@ -2527,9 +2527,6 @@ when nothing was spawned.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Overwrite unit names by default with group name.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2544,6 +2541,9 @@ when nothing was spawned.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> By default, no InitLimit</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2579,7 +2579,7 @@ when nothing was spawned.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<em>#number</em>
|
||||
<a id="#(SPAWN).SpawnMaxGroups" >
|
||||
<strong>SPAWN.SpawnMaxGroups</strong>
|
||||
</a>
|
||||
@ -2596,7 +2596,7 @@ when nothing was spawned.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<em>#number</em>
|
||||
<a id="#(SPAWN).SpawnMaxUnitsAlive" >
|
||||
<strong>SPAWN.SpawnMaxUnitsAlive</strong>
|
||||
</a>
|
||||
@ -2948,7 +2948,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 )
|
||||
|
||||
|
||||
|
||||
<p> Flag that indicates if all the Groups of the SpawnGroup need to be visible when Spawned.</p>
|
||||
<p> When the first Spawn executes, all the Groups need to be made visible before start.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
@ -424,6 +424,12 @@
|
||||
<td class="name" nowrap="nowrap"><a href="##(TASK).ReportDetails">TASK:ReportDetails()</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()</a></td>
|
||||
<td class="summary">
|
||||
<p>Create an overiew report of the Task.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -466,6 +472,12 @@
|
||||
<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)</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets the Information on the Task</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -1859,6 +1871,27 @@ self</p>
|
||||
<p><em>#string:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(TASK).ReportOverview" >
|
||||
<strong>TASK:ReportOverview()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Create an overiew report of the Task.</p>
|
||||
|
||||
|
||||
<p>List the Task Name and Status</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#string:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2016,6 +2049,32 @@ self</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(TASK).SetInfo" >
|
||||
<strong>TASK:SetInfo(TaskInfo, TaskInfoText)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets the Information on the Task</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string TaskInfo </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> TaskInfoText </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(TASK).SetMenu" >
|
||||
<strong>TASK:SetMenu(MenuTime)</strong>
|
||||
</a>
|
||||
|
||||
@ -182,7 +182,7 @@ Find a summary below describing for which situation a task type is created:</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(TASK_A2G_DISPATCHER).EvaluateRemoveTask">TASK_A2G_DISPATCHER:EvaluateRemoveTask(Mission, Task, DetectedItem)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(TASK_A2G_DISPATCHER).EvaluateRemoveTask">TASK_A2G_DISPATCHER:EvaluateRemoveTask(Mission, Task, DetectedItemID, DetectedItemChange, DetectedItemChanged)</a></td>
|
||||
<td class="summary">
|
||||
<p>Evaluates the removal of the Task from the Mission.</p>
|
||||
</td>
|
||||
@ -221,6 +221,12 @@ Find a summary below describing for which situation a task type is created:</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(TASK_A2G_DISPATCHER).SetGroup">TASK_A2G_DISPATCHER.SetGroup</a></td>
|
||||
<td class="summary">
|
||||
<p>The groups to which the FAC will report to.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(TASK_A2G_DISPATCHER).Tasks">TASK_A2G_DISPATCHER.Tasks</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -336,7 +342,7 @@ Find a summary below describing for which situation a task type is created:</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(TASK_A2G_DISPATCHER).EvaluateRemoveTask" >
|
||||
<strong>TASK_A2G_DISPATCHER:EvaluateRemoveTask(Mission, Task, DetectedItem)</strong>
|
||||
<strong>TASK_A2G_DISPATCHER:EvaluateRemoveTask(Mission, Task, DetectedItemID, DetectedItemChange, DetectedItemChanged)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -360,7 +366,17 @@ Find a summary below describing for which situation a task type is created:</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Functional.Detection.html##(DETECTION_AREAS.DetectedItem)">Functional.Detection#DETECTION_AREAS.DetectedItem</a> DetectedItem </em></code>: </p>
|
||||
<p><code><em>#boolean DetectedItemID </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em>#boolean DetectedItemChange </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectedItemChanged </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -548,6 +564,20 @@ Return true if you want the task assigning to continue... false will cancel the
|
||||
|
||||
<p>The groups to which the FAC will report to.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(TASK_A2G_DISPATCHER).Tasks" >
|
||||
<strong>TASK_A2G_DISPATCHER.Tasks</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
@ -299,6 +299,12 @@ use negative idp for rounding ahead of decimal place, positive for rounding afte
|
||||
<td class="name" nowrap="nowrap"><a href="##(UTILS).tostringLL">UTILS.tostringLL(lat, lon, acc, DMS)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(UTILS).tostringMGRS">UTILS.tostringMGRS(MGRS, acc)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -867,6 +873,35 @@ So:
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(UTILS).tostringMGRS" >
|
||||
<strong>UTILS.tostringMGRS(MGRS, acc)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> acc- the accuracy of each easting/northing. 0, 1, 2, 3, 4, or 5.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> MGRS </em></code>: </p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> acc </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
|
||||
@ -252,6 +252,12 @@
|
||||
<td class="name" nowrap="nowrap"><a href="##(ZONE_BASE).GetBoundingSquare">ZONE_BASE:GetBoundingSquare()</a></td>
|
||||
<td class="summary">
|
||||
<p>Get the bounding square the zone.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(ZONE_BASE).GetCoordinate">ZONE_BASE:GetCoordinate(Height)</a></td>
|
||||
<td class="summary">
|
||||
<p>Returns a <a href="Point.html##(COORDINATE)">Point#COORDINATE</a> of the zone.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -933,6 +939,33 @@ The bounding square.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(ZONE_BASE).GetCoordinate" >
|
||||
<strong>ZONE_BASE:GetCoordinate(Height)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Returns a <a href="Point.html##(COORDINATE)">Point#COORDINATE</a> of the zone.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Dcs.DCSTypes.html##(Distance)">Dcs.DCSTypes#Distance</a> Height </em></code>:
|
||||
The height to add to the land height where the center of the zone is located.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>:</em>
|
||||
The Coordinate of the zone.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(ZONE_BASE).GetName" >
|
||||
<strong>ZONE_BASE:GetName()</strong>
|
||||
</a>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user