From d77405bf9bfa6d8d9949ea1bdae4c11ebc97c59f Mon Sep 17 00:00:00 2001 From: FlightControl Date: Wed, 15 Mar 2017 09:35:41 +0100 Subject: [PATCH] nillification of the unit processes for tasks is fixed. --- .../Moose/Actions/Act_Account.lua | 9 ------- Moose Development/Moose/Core/Base.lua | 6 +++-- Moose Development/Moose/Core/Event.lua | 22 +++++++++--------- Moose Development/Moose/Core/Fsm.lua | 1 + Moose Development/Moose/Tasking/Task.lua | 18 ++++++++------ Moose Development/Moose/Tasking/Task_A2G.lua | 3 ++- .../Moose/Tasking/Task_A2G_Dispatcher.lua | 2 +- .../l10n/DEFAULT/Moose.lua | 2 +- Moose Mission Setup/Moose.lua | 2 +- ...- A2G Task Dispatching DETECTION_AREAS.miz | Bin 36265 -> 36327 bytes ...- A2G Task Dispatching DETECTION_AREAS.miz | Bin 42435 -> 43377 bytes ...- A2G Task Dispatching DETECTION_TYPES.miz | Bin 38274 -> 38336 bytes ...- A2G Task Dispatching DETECTION_UNITS.miz | Bin 54220 -> 54204 bytes 13 files changed, 32 insertions(+), 33 deletions(-) diff --git a/Moose Development/Moose/Actions/Act_Account.lua b/Moose Development/Moose/Actions/Act_Account.lua index 24f547506..4fb1fb3f2 100644 --- a/Moose Development/Moose/Actions/Act_Account.lua +++ b/Moose Development/Moose/Actions/Act_Account.lua @@ -192,15 +192,6 @@ do -- ACT_ACCOUNT_DEADS self.TaskName = FsmAccount.TaskName end - - - function ACT_ACCOUNT_DEADS:_Destructor() - self:E("_Destructor") - - self:EventRemoveAll() - - end - --- Process Events --- StateMachine callback function diff --git a/Moose Development/Moose/Core/Base.lua b/Moose Development/Moose/Core/Base.lua index 8c1c6fad8..3a1d4219f 100644 --- a/Moose Development/Moose/Core/Base.lua +++ b/Moose Development/Moose/Core/Base.lua @@ -256,12 +256,14 @@ function BASE:_Destructor() --self:EventRemoveAll() end + +-- THIS IS WHY WE NEED LUA 5.2 ... function BASE:_SetDestructor() -- TODO: Okay, this is really technical... -- When you set a proxy to a table to catch __gc, weak tables don't behave like weak... -- Therefore, I am parking this logic until I've properly discussed all this with the community. - --[[ + local proxy = newproxy(true) local proxyMeta = getmetatable(proxy) @@ -276,7 +278,7 @@ function BASE:_SetDestructor() -- table is about to be garbage-collected - then the __gc hook -- will be invoked and the destructor called rawset( self, '__proxy', proxy ) - --]] + end --- This is the worker method to inherit from a parent class. diff --git a/Moose Development/Moose/Core/Event.lua b/Moose Development/Moose/Core/Event.lua index ebe922c58..c80e7bc62 100644 --- a/Moose Development/Moose/Core/Event.lua +++ b/Moose Development/Moose/Core/Event.lua @@ -425,11 +425,11 @@ function EVENT:Init( EventID, EventClass ) -- Each event has a subtable of EventClasses, ordered by EventPriority. local EventPriority = EventClass:GetEventPriority() if not self.Events[EventID][EventPriority] then - self.Events[EventID][EventPriority] = {} + self.Events[EventID][EventPriority] = setmetatable( {}, { __mode = "kv" } ) end if not self.Events[EventID][EventPriority][EventClass] then - self.Events[EventID][EventPriority][EventClass] = setmetatable( {}, { __mode = "k" } ) + self.Events[EventID][EventPriority][EventClass] = {} end return self.Events[EventID][EventPriority][EventClass] end @@ -517,9 +517,9 @@ end function EVENT:OnEventGeneric( EventFunction, EventClass, EventID ) self:F2( { EventID } ) - local Event = self:Init( EventID, EventClass ) - Event.EventFunction = EventFunction - Event.EventClass = EventClass + local EventData = self:Init( EventID, EventClass ) + EventData.EventFunction = EventFunction + EventData.EventClass = EventClass return self end @@ -535,13 +535,13 @@ end function EVENT:OnEventForUnit( UnitName, EventFunction, EventClass, EventID ) self:F2( UnitName ) - local Event = self:Init( EventID, EventClass ) - if not Event.EventUnit then - Event.EventUnit = {} + local EventData = self:Init( EventID, EventClass ) + if not EventData.EventUnit then + EventData.EventUnit = {} end - Event.EventUnit[UnitName] = {} - Event.EventUnit[UnitName].EventFunction = EventFunction - Event.EventUnit[UnitName].EventClass = EventClass + EventData.EventUnit[UnitName] = {} + EventData.EventUnit[UnitName].EventFunction = EventFunction + EventData.EventUnit[UnitName].EventClass = EventClass return self end diff --git a/Moose Development/Moose/Core/Fsm.lua b/Moose Development/Moose/Core/Fsm.lua index 38ffcbf02..eb3cfe937 100644 --- a/Moose Development/Moose/Core/Fsm.lua +++ b/Moose Development/Moose/Core/Fsm.lua @@ -896,6 +896,7 @@ do -- FSM_PROCESS -- @return #FSM_PROCESS function FSM_PROCESS:Copy( Controllable, Task ) self:T( { self:GetClassNameAndID() } ) + local NewFsm = self:New( Controllable, Task ) -- Core.Fsm#FSM_PROCESS diff --git a/Moose Development/Moose/Tasking/Task.lua b/Moose Development/Moose/Tasking/Task.lua index c08b72653..3c5112c60 100644 --- a/Moose Development/Moose/Tasking/Task.lua +++ b/Moose Development/Moose/Tasking/Task.lua @@ -394,6 +394,7 @@ function TASK:AssignToUnit( TaskUnit ) self:E({"Address FsmUnit", tostring( FsmUnit ) } ) FsmUnit:SetStartState( "Planned" ) + FsmUnit:Accept() -- Each Task needs to start with an Accept event to start the flow. return self @@ -404,7 +405,7 @@ end -- @param Wrapper.Unit#UNIT TaskUnit -- @return #TASK self function TASK:UnAssignFromUnit( TaskUnit ) - self:F( TaskUnit ) + self:F( TaskUnit:GetName() ) self:RemoveStateMachine( TaskUnit ) @@ -637,11 +638,10 @@ function TASK:MenuTaskStatus( TaskGroup ) end -function TASK.MenuTaskAbort( MenuParam ) +--- Report the task status. +-- @param #TASK self +function TASK:MenuTaskAbort( TaskGroup ) - local self = MenuParam.self - local TaskGroup = MenuParam.TaskGroup - self:Abort() end @@ -713,11 +713,15 @@ end function TASK:RemoveStateMachine( TaskUnit ) self:F( { TaskUnit, self.Fsm[TaskUnit] ~= nil } ) - self.Fsm[TaskUnit]:Remove() + self:E( self.Fsm ) + for TaskUnitT, Fsm in pairs( self.Fsm ) do + self:E( TaskUnitT ) + end + self.Fsm[TaskUnit] = nil collectgarbage() - self:T( "Garbage Collected, Processes should be finalized now ...") + self:E( "Garbage Collected, Processes should be finalized now ...") end --- Checks if there is a FiniteStateMachine assigned to Task@{Unit} for @{Task} diff --git a/Moose Development/Moose/Tasking/Task_A2G.lua b/Moose Development/Moose/Tasking/Task_A2G.lua index cf277252f..785f11e48 100644 --- a/Moose Development/Moose/Tasking/Task_A2G.lua +++ b/Moose Development/Moose/Tasking/Task_A2G.lua @@ -68,6 +68,7 @@ do -- TASK_A2G self:F() self.TargetSetUnit = TargetSetUnit + self.TaskType = TaskType Mission:AddTask( self ) @@ -85,7 +86,7 @@ do -- TASK_A2G Fsm:AddTransition( { "ArrivedAtRendezVous", "HoldingAtRendezVous" }, "Engage", "Engaging" ) Fsm:AddTransition( { "ArrivedAtRendezVous", "HoldingAtRendezVous" }, "HoldAtRendezVous", "HoldingAtRendezVous" ) - Fsm:AddProcess ( "Engaging", "Account", ACT_ACCOUNT_DEADS:New( self.TargetSetUnit, TaskType ), { Accounted = "Success" } ) + Fsm:AddProcess ( "Engaging", "Account", ACT_ACCOUNT_DEADS:New( self.TargetSetUnit, self.TaskType ), { Accounted = "Success" } ) Fsm:AddTransition( "Engaging", "RouteToTarget", "Engaging" ) Fsm:AddProcess( "Engaging", "RouteToTargetZone", ACT_ROUTE_ZONE:New(), {} ) Fsm:AddProcess( "Engaging", "RouteToTargetPoint", ACT_ROUTE_POINT:New(), {} ) diff --git a/Moose Development/Moose/Tasking/Task_A2G_Dispatcher.lua b/Moose Development/Moose/Tasking/Task_A2G_Dispatcher.lua index 78f21c3fa..f2d57e85f 100644 --- a/Moose Development/Moose/Tasking/Task_A2G_Dispatcher.lua +++ b/Moose Development/Moose/Tasking/Task_A2G_Dispatcher.lua @@ -233,7 +233,7 @@ do -- TASK_A2G_DISPATCHER local TargetSetUnit = self:EvaluateCAS( DetectedItem ) -- Returns a SetUnit if there are targets to be SEADed... if TargetSetUnit then local Task = TASK_CAS:New( Mission, self.SetGroup, string.format( "CAS.%03d", ItemID ), TargetSetUnit ) - Task:SetTargetZone( DetectedZone ) + --Task:SetTargetZone( DetectedZone ) CASTask = Mission:AddTask( Task ) end end diff --git a/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua b/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua index c4875bc19..1f569f182 100644 --- a/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua +++ b/Moose Mission Setup/Moose Mission Update/l10n/DEFAULT/Moose.lua @@ -1,5 +1,5 @@ env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' ) -env.info( 'Moose Generation Timestamp: 20170313_1139' ) +env.info( 'Moose Generation Timestamp: 20170315_0507' ) local base = _G diff --git a/Moose Mission Setup/Moose.lua b/Moose Mission Setup/Moose.lua index c4875bc19..1f569f182 100644 --- a/Moose Mission Setup/Moose.lua +++ b/Moose Mission Setup/Moose.lua @@ -1,5 +1,5 @@ env.info( '*** MOOSE DYNAMIC INCLUDE START *** ' ) -env.info( 'Moose Generation Timestamp: 20170313_1139' ) +env.info( 'Moose Generation Timestamp: 20170315_0507' ) local base = _G diff --git a/Moose Test Missions/TAD - Task Dispatching/TAD-100 - A2G Task Dispatching DETECTION_AREAS/TAD-100 - A2G Task Dispatching DETECTION_AREAS.miz b/Moose Test Missions/TAD - Task Dispatching/TAD-100 - A2G Task Dispatching DETECTION_AREAS/TAD-100 - A2G Task Dispatching DETECTION_AREAS.miz index 40bcf04b599b309ff4fb057e1a51303006fbb29e..099145b29065a1c42f5fd6c36587a832a5515c03 100644 GIT binary patch delta 1455 zcmZ2Eo9X#%rVRyRn>F;+I5^*Evwev7B;t$$yA|NFjowuk07Hw8a*+Y9M8VLewk(2{Isg9*t}oCbNP1788zZH1#{gldUbRiXevO>CF%IWa`@%Cog?%Ffoy>KO)>WVY@-N_q>f(<{wXIEAy@6PSeXgYwY~?pl0Ix z+UqYxM0NyRI1+J8Ol<}%R@Qpz86SDNM3OQ;{<{+1U|uDf)? zgM~9!MCQpK>zGrgX=?LAJn8l9&}0AY+!bF#=lbFBu1=(DeufBD-^p=)- z!z3Ru_Rz0y7kr)QIIsNs-WSLH{;aZK={&abh-7D_&q{W$Yi0j# zl|4^RU-Wg)M#KC7Z)O$|1_lOh4u%Q9_z>({zT&`SZXK`s+z{XVM+O3W!(Y`)Y-|tW z6j-}uchC~s87=y6nRHLaeQWYDQVp9dakEYD_v>;SPp{0=jS=%^e!pka&-=IT|F2c| z+n4GXHn_O_-ThGDm%_W{6Fh$NOx#rc@={Ewb;q%j7Cz5bKXqGkT;oHuus^)3zxd z4hp{}$+Yo7QOlcd}^_(cj|B_bQij$&ijZ0=&ol?%)?Cic^>n*bkME5z>w-o{cn|W6i&3Y+4>)3jhwap<>TNvkjf6unzR+NeRm!5q)*X`K5 zQC_9^y{T&MuRBEn$`|q%owROx&v?otJ+C6rm2sy^4ChKC&6^A6ADGK?OKz(7aWT26 zq0#cIX6&0%ZN(D%dY`<*jO1TuZpzH7w>@<4#o|*JCW&7?_)GY3mU?-Q!t2RfUnEp# z-L5oUcwwcE%@O_?>%#ZTH+8Psbn&ErzPQ!q<9_^B%F6vx8NA!Chv#~(I6Y|=|Hh(> z6;?62Vo8#%k5i4}*u86B2C<6%4_dlMqbE4`gpO9{;j2~q=3F~Dw_|T>$Ft8$^@03) zPxb4c75W^nt7Sc4I$f$GyVNB(V{+w1<6XA@wC7BI64v{V%gl&tz6WdSk|?oL=WiXD z)Y|;jLaEGOanqWMw`xUeuRV?Jx%kuU*vYoN$${ISBsdny@d*BL^`0A;#(wMXhNYYD z_8nYv`Q34oz;)G~`Y+Z+Csmk#JahTO_Xn>FUZie)dC>L5{hcc$|J&C+xWDLHna|Hj zHCO%xDsS-kv1GN>O3t~`867{?X3w{ho8WT9-uw$!-lEDs3X=-1^>|jR+1l%i|Efyo z-_iVkvx|9dz~&bk1&os|x&<~jh-C;(&h8c1e6YQod9sGS01q(bGcbY(h9t4clX{$) zZp%(yZziP^;LXTn&j89891QSs3aBuhnSnu!K?SUXfk6RC_sC6t*ewyj1?GSZlVDg} zxOu7L+)Iq@1?L@|kZ5E>;hBwzfgy&Kfx#ZdP*a7;sy&V>$c8fOud)XjdWYu%*iaZf z`D2e3Q;_mx*Et>w8K9^DFaV@f iX0|ghlqVLYX5^O^rxpizv$BD_!~=xwKp%Q_fp`F$!hN{_ delta 1408 zcmaDpn`z~2rVRyRoApa8gf{OlE?{Jp7p(5Cnmk`lvA#F>bk<=50h`+o>LY48CpUlA z*dlO3(f5u(hTN5R3#SN#L}&4A5>eSX{ZjpUmEFCQcTMO%l9irrvRX7vKJgp}|ANb} zzb0(Gc|`C`{I$zhi`Y(oeePwd3Z7Xk{{V>D6evjncu&MLBE4wuID8`yL{yik48|iiW%#r!=y%semR$8j4dh?bt zlpdN_ZhQSCr@^`fozvH+uaI5AoF?^ZPP5dExzjRQ*s4E0zdmy#e`3Y4HO}%K4_Hlt zABKG>Z|u?yVy|{x{>gg_$0Q+c(TMkoPc@Whsb{RsxyY5-S##IfdsTgJ_A$;4bN)${ zY!HZXcyPYL)A+W8a*+MXi%ns|rW?Qds;*nHF1I1@z)jQI0+z6)2@XwOU8z-@SI7FT zzqe*igZy$Od##(>o3DN6{q+8=UiZJ9p5KdhrMy0q8MiuZ_oJQPFIz~dGcBz+Y}UfE zz$NoJ|MtIg=i3XfecmhonK!_jS%5`^fq{X8fe}aw_AOs=bh3wnSAA*7>Ac$p0(;m` z*z4SJmN{TFhas1d(elEi_>8|DOXI2xGcuC}C%QB*nY%0gzN)5W*{xp*f_LuDy!mjF z0L#I*z5)lD!X=zeJ$jI6(7$l zp&XBc-f#(@yrmJj%i|2M(~=4Gc9k5>`UcOr-1z7dccFd|qcB%bOXs9^EB2l4PY;ydXY7wW^3J4y z>*A$#B1~5&Ke(h+5T6#g?amCLhuha|WY2G1P};|4ocx(5+}eaUBWjMb%66xsdgb=! zV=^t`e-3U@JGwB9^-V|ddTAD|tPPG=uCy=B&yd<5bcM}mU10l%eg7}CKMh-KwJ3SX zvt4ig`Tf_u`SqQ~-L%Hg`^p#cef~{6xs3gU=ZvRq=7G}!3JyJ;z&Ujy?|&w)57->wnDSbF8}CU)#ZTCa!i{J+J@##Pv@CpOh>Ry~dvF&+}ULz9q{$ z|FFf4Z&&6%&vDW;j*IG0pRs1Teb~c@D?dM^EZ@#O_hs>N_PGlmxqDj5?%2OK(_1Mr z^h!<3R!7&X7mMuDyDg-2FI}{Xc@RBaYsHV6)?AJ-^-M&rV*cxm6Zh%JuS&{a-Ho z!#gDZ_>uTY|1I49D=6R+`gc_qciG{uk01ryuH1gd2(W}6jPGegALsqMHHEQ9x5;SQ!}X!Fpk4{Ln@-V{(Fm(PX)9EhZ`b$#r6qlaqnW$!3%LyX7V? z>rrEJF`s;{$C&$e0|P^TK}lwQUh(9ay;>@Z+Zh1sKH<$88=H;*7mr?)AXd>4Fhokr10h>F01a3ZlP1c$UJNu_Xk z7{f(47=@RE;VvA1hNEMp>oAdF29H=*O<=b$S4*C;IydplYa3uZ29%`-#o!6{+y zeb?y}6u3~(#8(ezs4b{H;TqaG2Q@HTEzt-K_R}9aWyT1Cpb0Y}0xCrb%~Y_F;z{Ci zgVo-)*g5*8S_D@Wk;=2)114}zHILU;*`^h+8YA#6sWxtC7$?9B_HIyjEv1m)p_!;z zZXd>ooPH@aJm?o<>zh@^|34nUD3JUw@6eG%)sh4Cj#50=AA8!vb=oQ?fRaoW2UYd$ zp!JbKo_F`X=*Ld{uhUhv&Yb48Y6xt>)ijC5sl*wHc}%GXvl<{a0|<~PZ%Uv#$jg&E zARhrWlP{zzlZGG;f29(jf>f;(X%8mhOS?czvX{LelT3-#Bu2KO%l`TuPm)sFYL~Zuy2((t)hP>Po$&Cz-7Bf&R z_@ik}3Zteuf9#3#U>gJ~YOq07PBVQ&)A*I3b&yJnHh|0iZ~*I_MRP*W=$q?`yRY_> zWbVDDq)ne&4r&DYO*MH(@I648=FAPRswg0rgexIcCM6s6Gq|%s+oN*n*us;tYUe{0 z)0grQgzQ8-y8 zlTEO~*Dh61@lRFCtHL8A^1Mc7-vqmFJfC%g;Z%RLfq(_sPqdXR) zakHgCozelPP1iv}ozelPP1iv}os;XMmk>Vy6aWAK2mp{MZ%Uv#$jg%fq!t)PBLDzw zF)(f~L`6nHRZLVbR6#^7F)%fgFQhjX!A0CZL7mb8(wo;oLY>k9(wo;oLY0;-Oa6s1D~8jzD&rA7jhqLZPe6b=ml4FDJf002X!00000jmuJn delta 512 zcmV+b0{{K-(gMTF0i**420A~XL02Tm~&ZZcDl~Y|y!!Q(mZlV9- zl9#o6=)OQvd!^+9Be*e0%!CL>LK5&yeMHnr0#`jT>U&pqd!^j^ZB!-7-c zL#NyA!YYoF21sKH<$88=H;*7mr?)AXdF01a3ZlP1c$UJNu_Xk z7{jnXxa^Mx!`)ziG`u)gdM*vP~;wHAWCvQf=I5FiwCM?A@U5T1p|oM>A2g z+&+vEIsH;AA8!vbK5E>fRaoW2UYd# zp!JYJo_F`X=*LciuhUhv&Yb48Y6xt>)ijC5sl*wHc}%Gfvl<{a1G8-=L4XKGYivp% z5qpc1wx&E5I>@fnE1S{*>)4IgE1S{*>)4IgE1Q!DrLDGXlkglZ~h| z0*#B4!l*+6{fv_bsYWDqp8x=NVRB_?Z*_BJb5KhK1^@s601N;O0EYtr04AaU0001T C;OuJv diff --git a/Moose Test Missions/TAD - Task Dispatching/TAD-110 - A2G Task Dispatching DETECTION_TYPES/TAD-110 - A2G Task Dispatching DETECTION_TYPES.miz b/Moose Test Missions/TAD - Task Dispatching/TAD-110 - A2G Task Dispatching DETECTION_TYPES/TAD-110 - A2G Task Dispatching DETECTION_TYPES.miz index c407112a9596e9ebb7c8d48c756d8386c6522309..8fd4e53210ba03679e30b00e0776bd3f9ce65bc0 100644 GIT binary patch delta 1436 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 diff --git a/Moose Test Missions/TAD - Task Dispatching/TAD-120 - A2G Task Dispatching DETECTION_UNITS/TAD-120 - A2G Task Dispatching DETECTION_UNITS.miz b/Moose Test Missions/TAD - Task Dispatching/TAD-120 - A2G Task Dispatching DETECTION_UNITS/TAD-120 - A2G Task Dispatching DETECTION_UNITS.miz index 578dd1ab828a548165a510ddd550c0a6ca7f103f..2576847c6a7cc8b29bfc853252f547086915e347 100644 GIT binary patch delta 13311 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 Jc+UU;008d|t6cy9 delta 13341 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