# ParametersFnHelpers.xml [[Go back to index]](..\..\..\Template_Explorer.html) Asobo\_EX1\(Base\)Helper\\ParametersFnHelpers.xml ------------------------------------------------- Source XML <ModelBehaviors> <!-- IN: PFN\_PARAM\_DEFAULT (Default parametersFn to call) --> <!-- IN: PFN\_PARAM\_NAME (Name of the parameter users can override to call a different parametersFn than the default) --> <!-- OUT: Output of the selected parametersFn --> <ParametersFn Name="ASOBO\_PFN\_Call\_Overridable\_ParametersFn\_Helper"> <Parameters Type="Default"> <\#PFN\_PARAM\_NAME\#>\#PFN\_PARAM\_DEFAULT\#</\#PFN\_PARAM\_NAME\#> </Parameters> <Parameters Type="Override"> <\_\_FN\_NAME\_\_ Process="Param">\#PFN\_PARAM\_NAME\#</\_\_FN\_NAME\_\_> </Parameters> <ReturnParameters> <UseParametersFn Name="\#\_\_FN\_NAME\_\_\#"> <PFN\_PARAM\_NAME/> </UseParametersFn> </ReturnParameters> </ParametersFn> <!-- IN: PFN\_TO\_CALL (parametersFn to call) --> <!-- IN: PFN\_PARAM\_NAME (Name of the parameter users can override to call a different parametersFn than the default) --> <!-- OUT: Output of the selected parametersFn --> <ParametersFn Name="ASOBO\_PFN\_Call\_Overridable\_ParametersFn\_No\_Default\_Helper"> <Parameters Type="Override"> <\_\_FN\_NAME\_\_ Process="Param">\#PFN\_PARAM\_NAME\#</\_\_FN\_NAME\_\_> </Parameters> <ReturnParameters> <Condition NotEmpty="\_\_FN\_NAME\_\_"> <UseParametersFn Name="\#\_\_FN\_NAME\_\_\#"> <PFN\_PARAM\_NAME/> </UseParametersFn> </Condition> </ReturnParameters> </ParametersFn> <!-- IN: IN\_PARAM\_NAME (Parameter to lookup the value of) --> <!-- IN: IN\_PARAM\_ID (Parameter ID to add) --> <!-- IN: OUT\_PARAM\_PREFIX (Prefix) --> <!-- IN: OUT\_PARAM\_SUFFIX (Suffix) --> <!-- IN (opt): APPEND\_SEPARATOR (if False will not append anything in between IN\_PARAM\_ID and OUT\_PARAM\_PREFIX & OUT\_PARAM\_SUFFIX) --> <!-- IN (opt): PREFIX\_SEPARATOR (in between OUT\_PARAM\_PREFIX and IN\_PARAM\_ID) --> <!-- IN (opt): SUFFIX\_SEPARATOR (in between IN\_PARAM\_ID and OUT\_PARAM\_SUFFIX ) --> <!-- OUT: Parameter with concatenated ID --> <ParametersFn Name="ASOBO\_PFN\_Add\_ID\_To\_Parameter\_Helper"> <Parameters Type="Default"> <Switch> <Case Valid="PREFIX\_ID"> <OUT\_PARAM\_PREFIX/> <OUT\_PARAM\_SUFFIX>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_SUFFIX> </Case> <Default> <OUT\_PARAM\_PREFIX>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_PREFIX> <OUT\_PARAM\_SUFFIX/> </Default> </Switch> <APPEND\_SEPARATOR>True</APPEND\_SEPARATOR> </Parameters> <Parameters Type="Default"> <Condition Valid="APPEND\_SEPARATOR"> <Condition NotEmpty="OUT\_PARAM\_PREFIX"> <PREFIX\_SEPARATOR>\_</PREFIX\_SEPARATOR> </Condition> <Condition NotEmpty="OUT\_PARAM\_SUFFIX"> <SUFFIX\_SEPARATOR>\_</SUFFIX\_SEPARATOR> </Condition> </Condition> </Parameters> <Parameters Type="Default"> <PREFIX\_SEPARATOR/> <SUFFIX\_SEPARATOR/> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_VALUE\_\_ Process="Param">\#IN\_PARAM\_NAME\#</\_\_PARAM\_VALUE\_\_> <\_\_PARAM\_ID\_\_>\#IN\_PARAM\_ID\#</\_\_PARAM\_ID\_\_> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_ID\_\_>\#PREFIX\_SEPARATOR\#\#\_\_PARAM\_ID\_\_\#\#SUFFIX\_SEPARATOR\#</\_\_PARAM\_ID\_\_> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_NAME\_\_>\#OUT\_PARAM\_PREFIX\#\#\_\_PARAM\_ID\_\_\#\#OUT\_PARAM\_SUFFIX\#</\_\_PARAM\_NAME\_\_> </Parameters> <ReturnParameters> <\#\_\_PARAM\_NAME\_\_\#>\#\_\_PARAM\_VALUE\_\_\#</\#\_\_PARAM\_NAME\_\_\#> </ReturnParameters> </ParametersFn> <!-- Same as ASOBO\_PFN\_Add\_ID\_To\_Parameter\_Helper but for multiple parameters at a time --> <!-- IN: Same parameters but all suffixed with an index (starting at 0) ex: IN\_PARAM\_NAME becomes IN\_PARAM\_NAME\_0, IN\_PARAM\_NAME\_1, ... --> <ParametersFn Name="ASOBO\_PFN\_Add\_ID\_To\_Parameters\_Helper"> <Parameters Type="Default"> <ELTS\_COUNT>512</ELTS\_COUNT> <FIRST\_ID>0</FIRST\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FIRST\_ID\#</From> <Inc>1</Inc> <To>\#ELTS\_COUNT\#</To> <While> <Arg Check="IN\_PARAM\_\#CUR\_ID\#\_NAME"/> </While> </Setup> <Do> <UseParametersFn Name="ASOBO\_PFN\_Add\_ID\_To\_Parameter\_Helper"> <IN\_PARAM\_NAME Process="Param">IN\_PARAM\_\#CUR\_ID\#\_NAME</IN\_PARAM\_NAME> <Condition Check="IN\_PARAM\_\#CUR\_ID\#\_ID"> <IN\_PARAM\_ID Process="Param">IN\_PARAM\_\#CUR\_ID\#\_ID</IN\_PARAM\_ID> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_PREFIX"> <OUT\_PARAM\_PREFIX Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_PREFIX</OUT\_PARAM\_PREFIX> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX"> <OUT\_PARAM\_SUFFIX Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX</OUT\_PARAM\_SUFFIX> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_PREFIX\_SEPARATOR"> <PREFIX\_SEPARATOR Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_PREFIX\_SEPARATOR</PREFIX\_SEPARATOR> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX\_SEPARATOR"> <SUFFIX\_SEPARATOR Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX\_SEPARATOR</SUFFIX\_SEPARATOR> </Condition> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> <!-- IN: IN\_PARAM\_NAME (Name of the param to unindex) --> <!-- OUT: Unindexed parameter --> <ParametersFn Name="ASOBO\_PFN\_Remove\_ID\_From\_Parameter\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_NAME> </Parameters> <ReturnParameters> <Switch> <Case Valid="PREFIXED\_ID"> <Condition Check="\#IN\_PARAM\_ID\#\_\#IN\_PARAM\_NAME\#"> <\#OUT\_PARAM\_NAME\# Process="Param">\#IN\_PARAM\_ID\#\_\#IN\_PARAM\_NAME\#</\#OUT\_PARAM\_NAME\#> </Condition> </Case> <Default> <Condition Check="\#IN\_PARAM\_NAME\#\_\#IN\_PARAM\_ID\#"> <\#OUT\_PARAM\_NAME\# Process="Param">\#IN\_PARAM\_NAME\#\_\#IN\_PARAM\_ID\#</\#OUT\_PARAM\_NAME\#> </Condition> </Default> </Switch> </ReturnParameters> </ParametersFn> <!-- IN: IN\_PARAM\_0\_NAME, IN\_PARAM\_1\_NAME, ... (Name of the params to unindex) --> <ParametersFn Name="ASOBO\_PFN\_Remove\_ID\_From\_Parameters\_Helper"> <Parameters Type="Default"> <ELTS\_COUNT>512</ELTS\_COUNT> <FIRST\_ID>0</FIRST\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FIRST\_ID\#</From> <To>\#ELTS\_COUNT\#</To> <Inc>1</Inc> <While> <Arg NotEmpty="IN\_PARAM\_\#CUR\_ID\#\_NAME"/> </While> </Setup> <Do> <UseParametersFn Name="ASOBO\_PFN\_Remove\_ID\_From\_Parameter\_Helper"> <IN\_PARAM\_NAME Process="Param">IN\_PARAM\_\#CUR\_ID\#\_NAME</IN\_PARAM\_NAME> <Condition Check="IN\_PARAM\_\#CUR\_ID\#\_ID"> <IN\_PARAM\_ID Process="Param">IN\_PARAM\_\#CUR\_ID\#\_ID</IN\_PARAM\_ID> </Condition> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> <!-- In itself doesn't do anything other than return the value as it was provided --> <!-- In practice it is used w/ ASOBO\_PFN\_Call\_Overridable\_ParametersFn\_Helper to let users change a value right before it is actually used --> <!-- IN: IN\_PARAM\_NAME (Name of the parameter to forward) --> <!-- IN (opt): OUT\_PARAM\_NAME (Output Name of the parameter to forward) --> <ParametersFn Name="ASOBO\_PFN\_Return\_Parameter\_No\_Transform\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_NAME> </Parameters> <ReturnParameters> <\#OUT\_PARAM\_NAME\# Process="Param">\#IN\_PARAM\_NAME\#</\#OUT\_PARAM\_NAME\#> </ReturnParameters> </ParametersFn> <!-- Same as ASOBO\_PFN\_Return\_Parameter\_No\_Transform\_Helper but for multiple parameters at a time --> <!-- IN: IN\_PARAM\_NAME\_0, IN\_PARAM\_NAME\_1, ... (Name of the parameters to forward) --> <ParametersFn Name="ASOBO\_PFN\_Return\_Parameters\_No\_Transform\_Helper"> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>0</From> <Inc>1</Inc> <While> <Arg Check="IN\_PARAM\_NAME\_\#CUR\_ID\#"/> </While> </Setup> <Do> <UseParametersFn Name="ASOBO\_PFN\_Return\_Parameter\_No\_Transform\_Helper"> <IN\_PARAM\_NAME Process="Param">IN\_PARAM\_NAME\_\#CUR\_ID\#</IN\_PARAM\_NAME> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> <!-- IN (opt): IN\_PARAM\_NAME\_ID (ID used for generating the SUFFIX\_ID) --> <!-- IN (opt): OUT\_PARAM\_VALUE\_PREFIX (Prefix given to the input IN\_PARAM\_NAME\_ID value) --> <!-- IN (opt): OUT\_PARAM\_VALUE\_SUFFIX (Suffix given to the input IN\_PARAM\_NAME\_ID value) --> <!-- IN (opt): OUT\_PARAM\_NAME (Name given to the parameter in the output) --> <!-- OUT: SUFFIX\_ID --> <ParametersFn Name="ASOBO\_Indexer\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_VALUE\_PREFIX>\_</OUT\_PARAM\_VALUE\_PREFIX> <OUT\_PARAM\_VALUE\_SUFFIX/> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_VALUE\_\_ Process="Param">\#IN\_PARAM\_NAME\_ID\#</\_\_PARAM\_VALUE\_\_> </Parameters> <Parameters Type="Default"> <OUT\_PARAM\_NAME>SUFFIX\_\#IN\_PARAM\_NAME\_ID\#</OUT\_PARAM\_NAME> </Parameters> <ReturnParameters> <\#OUT\_PARAM\_NAME\#>\#OUT\_PARAM\_VALUE\_PREFIX\#\#\_\_PARAM\_VALUE\_\_\#\#OUT\_PARAM\_VALUE\_SUFFIX\#</\#OUT\_PARAM\_NAME\#> <\#IN\_PARAM\_NAME\_ID\# Process="Param">\#IN\_PARAM\_NAME\_ID\#</\#IN\_PARAM\_NAME\_ID\#> </ReturnParameters> </ParametersFn> <!-- IN: PFN\_TO\_CALL (pfn to call for each element) --> <!-- IN: PFN\_GET\_PARAMETERS (PFN to call to get a list of parameters) --> <!-- IN (opt): OUT\_PARAM\_NAME (Name of the parameter containing the parameter name) --> <!-- IN (opt): OUT\_PARAM\_VALUE (Name of the parameter containing the parameter value) --> <!-- IN (opt): OUT\_PARAM\_ID (Name of the parameter containing the parameter id) --> <ParametersFn Name="ASOBO\_For\_Each\_Of\_PFN\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>PARAM\_NAME</OUT\_PARAM\_NAME> <OUT\_PARAM\_VALUE>PARAM\_VALUE</OUT\_PARAM\_VALUE> <OUT\_PARAM\_ID>PARAM\_ID</OUT\_PARAM\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>PARAM</Param> <Value>VALUE</Value> <Parameters> <UseParametersFn Name="\#PFN\_GET\_PARAMETERS\#"/> </Parameters> </Setup> <Do> <Parameters Type="Override" Lifetime="Loop"> <UseParametersFn Name="ASOBO\_Increment\_ID\_Helper"/> </Parameters> <UseParametersFn Name="\#PFN\_TO\_CALL\#"> <\#OUT\_PARAM\_NAME\#>\#PARAM\#</\#OUT\_PARAM\_NAME\#> <\#OUT\_PARAM\_ID\#>\#CUR\_ID\#</\#OUT\_PARAM\_ID\#> <\#OUT\_PARAM\_VALUE\#>\#VALUE\#</\#OUT\_PARAM\_VALUE\#> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> <!-- IN (opt): OUT\_PARAM\_ID\_NAME (Name to give to the loop index parameter) --> <!-- IN (opt): OUT\_FIRST\_ID (First ID that will be assigned if the variable doesn't exist) --> <!-- IN (opt): INCREMENT\_COUNT (How many increments) --> <ParametersFn Name="ASOBO\_Increment\_ID\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_ID\_NAME>CUR\_ID</OUT\_PARAM\_ID\_NAME> <OUT\_FIRST\_ID>0</OUT\_FIRST\_ID> <INCREMENT\_COUNT>1</INCREMENT\_COUNT> </Parameters> <Parameters Type="Override"> <Condition Check="\#OUT\_PARAM\_ID\_NAME\#"> <CUR\_VALUE Process="Param">\#OUT\_PARAM\_ID\_NAME\#</CUR\_VALUE> </Condition> </Parameters> <ReturnParameters> <Condition Check="\#OUT\_PARAM\_ID\_NAME\#"> <True> <\#OUT\_PARAM\_ID\_NAME\# Process="Int">\#CUR\_VALUE\# \#INCREMENT\_COUNT\# +</\#OUT\_PARAM\_ID\_NAME\#> </True> <False> <\#OUT\_PARAM\_ID\_NAME\#>\#OUT\_FIRST\_ID\#</\#OUT\_PARAM\_ID\_NAME\#> </False> </Condition> </ReturnParameters> </ParametersFn> <!-- IN (opt): TOKEN\_PREFIX (Param prefix to look for) --> <!-- IN (opt): TOKEN\_SUFFIX (Param suffix to look for) --> <!-- OUT: TOKEN\_COUNT (number of loop iterations) --> <!-- OUT: LAST\_TOKEN\_ID (last valid id iterated on) --> <ParametersFn Name="ASOBO\_Count\_Token\_Helper"> <Parameters Type="Default"> <FROM>0</FROM> <INC>1</INC> <TOKEN\_PREFIX/> <TOKEN\_SUFFIX/> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FROM\#</From> <Inc>\#INC\#</Inc> <While> <Arg NotEmpty="\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#"/> </While> </Setup> <Do/> <Then> <\#OUT\_PARAM\_NAME\_COUNT\# Process="Int">\#CUR\_ID\# \#FROM\# -</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_LAST\_ID\# Process="Int">\#CUR\_ID\# 1 -</\#OUT\_PARAM\_NAME\_LAST\_ID\#> </Then> </Loop> </ReturnParameters> </ParametersFn> <!-- IN: TOKEN\_COLLECTION (save containing parameters) --> <!-- IN (opt): TOKEN\_PREFIX (Param prefix to look for) --> <!-- IN (opt): TOKEN\_SUFFIX (Param suffix to look for) --> <!-- OUT: TOKEN\_COUNT (number of loop iterations) --> <ParametersFn Name="ASOBO\_Count\_Token\_In\_Save\_Helper"> <Parameters Type="Default"> <FROM>0</FROM> <INC>1</INC> <TOKEN\_PREFIX/> <TOKEN\_SUFFIX/> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> </Parameters> <Parameters Type="Override"> <LoadParameters ID="\#TOKEN\_COLLECTION\#"/> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FROM\#</From> <Inc>\#INC\#</Inc> <While> <Arg NotEmpty="\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#"/> </While> </Setup> <Do/> <Then> <\#OUT\_PARAM\_NAME\_COUNT\# Process="Int">\#CUR\_ID\# \#FROM\# -</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_LAST\_ID\# Process="Int">\#CUR\_ID\# 1 -</\#OUT\_PARAM\_NAME\_LAST\_ID\#> </Then> </Loop> </ReturnParameters> </ParametersFn> <!-- IN (opt): TOKEN\_PREFIX (Param prefix to look for) --> <!-- IN (opt): TOKEN\_SUFFIX (Param suffix to look for) --> <!-- IN (req:Number): parameters have to be numbers --> <!-- OUT: TOKEN\_MIN (Minimum value found) --> <!-- OUT: TOKEN\_MAX (Maximum value found) --> <!-- OUT: TOKEN\_COUNT (number of loop iterations) --> <!-- OUT: LAST\_TOKEN\_ID (last valid id iterated on) --> <ParametersFn Name="ASOBO\_Find\_Min\_Max\_Helper"> <Parameters Type="Default"> <MIN\_INIT\_VALUE>1000000</MIN\_INIT\_VALUE> <MAX\_INIT\_VALUE>-1000000</MAX\_INIT\_VALUE> <FROM>0</FROM> <INC>1</INC> <TOKEN\_PREFIX/> <TOKEN\_SUFFIX/> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> <OUT\_PARAM\_NAME\_MIN>TOKEN\_MIN</OUT\_PARAM\_NAME\_MIN> <OUT\_PARAM\_NAME\_MAX>TOKEN\_MAX</OUT\_PARAM\_NAME\_MAX> </Parameters> <Parameters Type="Override"> <\_\_MIN\_\_>\#MIN\_INIT\_VALUE\#</\_\_MIN\_\_> <\_\_MAX\_\_>\#MAX\_INIT\_VALUE\#</\_\_MAX\_\_> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FROM\#</From> <Inc>\#INC\#</Inc> <While> <Arg Check="\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#"/> </While> </Setup> <Do> <Parameters Type="Override"> <PARAM\_VALUE Process="Param">\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#</PARAM\_VALUE> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <Condition> <Test> <Lower> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MIN\_\_\#</Number> </Lower> </Test> <True> <\_\_MIN\_\_>\#PARAM\_VALUE\#</\_\_MIN\_\_> </True> </Condition> <Condition> <Test> <Greater> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MAX\_\_\#</Number> </Greater> </Test> <True> <\_\_MAX\_\_>\#PARAM\_VALUE\#</\_\_MAX\_\_> </True> </Condition> </Parameters> </Do> <Then> <\#OUT\_PARAM\_NAME\_LAST\_ID\# Process="Int">\#CUR\_ID\# 1 -</\#OUT\_PARAM\_NAME\_LAST\_ID\#> <\#OUT\_PARAM\_NAME\_COUNT\#>\#CUR\_ID\#</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_MIN\#>\#\_\_MIN\_\_\#</\#OUT\_PARAM\_NAME\_MIN\#> <\#OUT\_PARAM\_NAME\_MAX\#>\#\_\_MAX\_\_\#</\#OUT\_PARAM\_NAME\_MAX\#> </Then> </Loop> </ReturnParameters> </ParametersFn> <!-- Same as ASOBO\_Find\_Min\_Max\_Helper but looking for a specific save --> <!-- IN : SAVED\_PARAMETERS (Param prefix to look for) --> <!-- OUT: TOKEN\_MIN (Minimum value found) --> <!-- OUT: TOKEN\_MAX (Maximum value found) --> <!-- OUT: TOKEN\_COUNT (number of loop iterations) --> <!-- OUT: LAST\_TOKEN\_ID (last valid id iterated on) --> <ParametersFn Name="ASOBO\_Find\_Min\_Max\_Helper\_In"> <Parameters Type="Default"> <MIN\_INIT\_VALUE>1000000</MIN\_INIT\_VALUE> <MAX\_INIT\_VALUE>-1000000</MAX\_INIT\_VALUE> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> <OUT\_PARAM\_NAME\_MIN>TOKEN\_MIN</OUT\_PARAM\_NAME\_MIN> <OUT\_PARAM\_NAME\_MAX>TOKEN\_MAX</OUT\_PARAM\_NAME\_MAX> </Parameters> <Parameters Type="Override"> <\_\_MIN\_\_>\#MIN\_INIT\_VALUE\#</\_\_MIN\_\_> <\_\_MAX\_\_>\#MAX\_INIT\_VALUE\#</\_\_MAX\_\_> </Parameters> <ReturnParameters> <Loop> <Setup> <Value>PARAM\_VALUE</Value> <Parameters> <LoadParameters ID="\#SAVED\_PARAMETERS\#"/> </Parameters> </Setup> <Do> <Parameters Type="Override" Lifetime="Loop"> <UseParametersFn Name="ASOBO\_Increment\_ID\_Helper"/> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <Condition> <Test> <Lower> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MIN\_\_\#</Number> </Lower> </Test> <True> <\_\_MIN\_\_>\#PARAM\_VALUE\#</\_\_MIN\_\_> </True> </Condition> <Condition> <Test> <Greater> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MAX\_\_\#</Number> </Greater> </Test> <True> <\_\_MAX\_\_>\#PARAM\_VALUE\#</\_\_MAX\_\_> </True> </Condition> </Parameters> </Do> <Then> <\#OUT\_PARAM\_NAME\_LAST\_ID\#>\#CUR\_ID\#</\#OUT\_PARAM\_NAME\_LAST\_ID\#> <\#OUT\_PARAM\_NAME\_COUNT\# Process="Int">\#CUR\_ID\# 1 +</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_MIN\#>\#\_\_MIN\_\_\#</\#OUT\_PARAM\_NAME\_MIN\#> <\#OUT\_PARAM\_NAME\_MAX\#>\#\_\_MAX\_\_\#</\#OUT\_PARAM\_NAME\_MAX\#> </Then> </Loop> </ReturnParameters> </ParametersFn> <!-- IN: SAVED\_PARAMETERS (name of the saved parameters to load) --> <!-- OUT: loaded parameters with original save removed by default --> <ParametersFn Name="ASOBO\_Load\_Then\_Remove\_Parameters\_Helper"> <Parameters Type="Default"> <REMOVE\_\#SAVED\_PARAMETERS\#>True</REMOVE\_\#SAVED\_PARAMETERS\#> </Parameters> <Parameters Type="Override"> <\_\_SAVED\_PARAMETERS\_\_ Process="Param">\#SAVED\_PARAMETERS\#</\_\_SAVED\_PARAMETERS\_\_> </Parameters> <ReturnParameters> <Condition CheckSavedParameters="\#\_\_SAVED\_PARAMETERS\_\_\#"> <LoadParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> <Condition Valid="REMOVE\_\#SAVED\_PARAMETERS\#"> <RemoveSavedParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> </Condition> </Condition> </ReturnParameters> </ParametersFn> <!-- IN: SAVED\_PARAMETERS (name of the saved parameters to load) --> <!-- IN: SAVE\_TO (name of the saved parameters to load) --> <!-- OUT: loaded parameters with original save removed by default --> <ParametersFn Name="ASOBO\_Save\_To\_Then\_Remove\_Parameters\_Helper"> <Parameters Type="Default"> <REMOVE\_\#SAVED\_PARAMETERS\#>True</REMOVE\_\#SAVED\_PARAMETERS\#> <APPEND>Override</APPEND> </Parameters> <Parameters Type="Override"> <\_\_SAVED\_PARAMETERS\_\_ Process="Param">\#SAVED\_PARAMETERS\#</\_\_SAVED\_PARAMETERS\_\_> </Parameters> <ReturnParameters> <Condition CheckSavedParameters="\#\_\_SAVED\_PARAMETERS\_\_\#"> <SaveParameters ID="\#SAVE\_TO\#" Append="\#APPEND\#"> <LoadParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> </SaveParameters> <Condition Valid="REMOVE\_\#SAVED\_PARAMETERS\#"> <RemoveSavedParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> </Condition> </Condition> </ReturnParameters> </ParametersFn> <!-- In: MAX\_VALUE (value maximum has to be positive) --> <!-- In: MIN\_VALUE (value minimum has to be negative) --> <!-- OUT: computed ratios to 0 --> <ParametersFn Name="ASOBO\_Get\_MIN\_MAX\_Ratios\_Helper"> <Parameters Type="Override"> <FULL\_RANGE Process="Float">\#MAX\_VALUE\# \#MIN\_VALUE\# -</FULL\_RANGE> <POSITIVE\_RANGE Process="Float">\#MAX\_VALUE\# 0 -</POSITIVE\_RANGE> <NEGATIVE\_RANGE Process="Float">0 \#MIN\_VALUE\# -</NEGATIVE\_RANGE> </Parameters> <Parameters Type="Override"> <RATIO\_POSITIVE Process="Float">\#POSITIVE\_RANGE\# \#FULL\_RANGE\# /</RATIO\_POSITIVE> <RATIO\_NEGATIVE Process="Float">\#NEGATIVE\_RANGE\# \#FULL\_RANGE\# /</RATIO\_NEGATIVE> </Parameters> <Parameters Type="Override"> <POSITIVE\_TO\_NEGATIVE\_RATIO Process="Float">\#RATIO\_NEGATIVE\# 0 > if{ \#RATIO\_POSITIVE\# \#RATIO\_NEGATIVE\# / } els{ 1 }</POSITIVE\_TO\_NEGATIVE\_RATIO> <NEGATIVE\_TO\_POSITIVE\_RATIO Process="Float">\#RATIO\_POSITIVE\# 0 > if{ \#RATIO\_NEGATIVE\# \#RATIO\_POSITIVE\# / } els{ 1 }</NEGATIVE\_TO\_POSITIVE\_RATIO> </Parameters> <ReturnParameters> <FULL\_RANGE>\#FULL\_RANGE\#</FULL\_RANGE> <POSITIVE\_RANGE>\#POSITIVE\_RANGE\#</POSITIVE\_RANGE> <NEGATIVE\_RANGE>\#NEGATIVE\_RANGE\#</NEGATIVE\_RANGE> <RATIO\_POSITIVE>\#RATIO\_POSITIVE\#</RATIO\_POSITIVE> <RATIO\_NEGATIVE>\#RATIO\_NEGATIVE\#</RATIO\_NEGATIVE> <POSITIVE\_TO\_NEGATIVE\_RATIO>\#POSITIVE\_TO\_NEGATIVE\_RATIO\#</POSITIVE\_TO\_NEGATIVE\_RATIO> <NEGATIVE\_TO\_POSITIVE\_RATIO>\#NEGATIVE\_TO\_POSITIVE\_RATIO\#</NEGATIVE\_TO\_POSITIVE\_RATIO> <MIN\_VALUE>\#MIN\_VALUE\#</MIN\_VALUE> <MAX\_VALUE>\#MAX\_VALUE\#</MAX\_VALUE> </ReturnParameters> </ParametersFn> <!-- In (opt): OUT\_PARAM\_ID --> <!-- OUT: OUT\_PARAM\_SUFFIX --> <ParametersFn Name="ASOBO\_Get\_Param\_Suffix\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>OUT\_PARAM\_SUFFIX</OUT\_PARAM\_NAME> </Parameters> <Parameters Type="Default"> <Condition Check="OUT\_PARAM\_ID"> <True> <OUT\_PARAM\_SUFFIX>\_\#OUT\_PARAM\_ID\#</OUT\_PARAM\_SUFFIX> </True> <False> <OUT\_PARAM\_SUFFIX/> </False> </Condition> </Parameters> <ReturnParameters> <\#OUT\_PARAM\_NAME\#>\#OUT\_PARAM\_SUFFIX\#</\#OUT\_PARAM\_NAME\#> </ReturnParameters> </ParametersFn> <!-- In (opt): OUT\_PARAM\_ID --> <!-- OUT: OUT\_PARAM\_PREFIX --> <ParametersFn Name="ASOBO\_Get\_Param\_Prefix\_Helper"> <Parameters Type="Default"> <Condition Check="OUT\_PARAM\_ID"> <True> <OUT\_PARAM\_PREFIX>\#OUT\_PARAM\_ID\#\_</OUT\_PARAM\_PREFIX> </True> <False> <OUT\_PARAM\_PREFIX/> </False> </Condition> </Parameters> <ReturnParameters> <OUT\_PARAM\_PREFIX>\#OUT\_PARAM\_PREFIX\#</OUT\_PARAM\_PREFIX> </ReturnParameters> </ParametersFn> <!-- In: Any number of PARAM\_PREFIX\_N or PARAM\_SUFFIX\_N (N being a sequentially increasing int, starting at 0) --> <!-- OUT: A param named by the value of OUTGOING\_PARAM (defaults to OUT\_VALUE), which contains the maximum value of N --> <ParametersFn Name="ASOBO\_Get\_Max\_Param\_Iteration\_Helper"> <Parameters Type="Default"> <MAX\_VALUE>-1</MAX\_VALUE> <PARAM\_PREFIX/> <PARAM\_SUFFIX/> <MAX\_ITERATION>0</MAX\_ITERATION> <OUTGOING\_PARAM>OUT\_VALUE</OUTGOING\_PARAM> </Parameters> <Parameters Type="Override"> <Loop> <Setup> <Param>CUR\_ID</Param> <From>1</From> <Inc>1</Inc> <While> <Not> <Arg Valid="INFINITE"/> </Not> </While> </Setup> <Do> <SaveParameters ID="MaxParam\_FoundValue"> <FOUND\_VALUE>False</FOUND\_VALUE> <MAX\_ITERATION>\#MAX\_ITERATION\#</MAX\_ITERATION> </SaveParameters> <Parameters Type="Override" Lifetime="Loop"> <Loop> <Setup> <Param>CUR\_PARAM\_ID</Param> <From>0</From> <Inc>1</Inc> <While> <Or> <Arg NotEmpty="PARAM\_PREFIX\_\#CUR\_PARAM\_ID\#"/> <Arg NotEmpty="PARAM\_SUFIX\_\#CUR\_PARAM\_ID\#"/> </Or> </While> </Setup> <Do> <Parameters Type="Override" Lifetime="Iteration"> <PARAM\_PREFIX Process="Param">PARAM\_PREFIX\_\#CUR\_PARAM\_ID\#</PARAM\_PREFIX> <PARAM\_SUFIX Process="Param">PARAM\_SUFIX\_\#CUR\_PARAM\_ID\#</PARAM\_SUFIX> </Parameters> <Parameters Type="Override" Lifetime="Iteration"> <PARAM\_FINAL Process="Param">\#PARAM\_PREFIX\#\#CUR\_ID\#\#PARAM\_SUFFIX\#</PARAM\_FINAL> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <Condition NotEmpty="PARAM\_FINAL"> <SaveParameters ID="MaxParam\_FoundValue"> <FOUND\_VALUE>True</FOUND\_VALUE> <MAX\_ITERATION Process="Int">\#MAX\_ITERATION\# \#CUR\_ID\# max</MAX\_ITERATION> </SaveParameters> </Condition> </Parameters> </Do> </Loop> <LoadParameters ID="MaxParam\_FoundValue"/> <Condition Valid="FOUND\_VALUE"> <False> <Break/> </False> </Condition> </Parameters> </Do> </Loop> <LoadParameters ID="MaxParam\_FoundValue"/> </Parameters> <ReturnParameters> <\#OUTGOING\_PARAM\# Process="Int">\#MAX\_ITERATION\#</\#OUTGOING\_PARAM\#> </ReturnParameters> </ParametersFn> <ParametersFn Name="ASOBO\_Get\_Non\_Linear\_Animation\_Code"> <Parameters Type="Default"> <SELECTION>50</SELECTION><!-- dynamic parameter for example gallons qty in a fuel tank --> <!-- at least 2 points of reference to interpolate --> <!-- ANIM\_VALUE = frame for which the REF\_VALUE is corresponding --> <!-- REF\_VALUE = value used as a comparison point to SELECTION --> <ANIM\_VALUE\_0>0</ANIM\_VALUE\_0> <REF\_VALUE\_0>0</REF\_VALUE\_0> <ANIM\_VALUE\_1>100</ANIM\_VALUE\_1> <REF\_VALUE\_1>100</REF\_VALUE\_1> <!-- Add as much as necessary when calling the template --> <!-- \#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\# --> <ANIM\_LENGTH>100</ANIM\_LENGTH><!-- number of frame in the animation --> <MAX\_POINT\_INDEX>1</MAX\_POINT\_INDEX><!-- index of latest point of reference --> <MAX\_DISPLAYABLE>100</MAX\_DISPLAYABLE><!-- higher bound the value SELECTION can reach (the maximum your gauge can display) --> <MIN\_DISPLAYABLE>0</MIN\_DISPLAYABLE><!-- lower bound the value SELECTION can reach (the minimum your gauge can display) --> <EXIT\_TEMPLATE>ASOBO\_GT\_Anim\_Code</EXIT\_TEMPLATE> <EXIT\_PARAM\_NAME>ANIM\_CODE</EXIT\_PARAM\_NAME> <CONTENT></CONTENT><!-- CONTENT init: can be used to tweak the value before interpolating --> </Parameters> <Parameters Type="Override"> <ANIM\_VAL\_PREVIOUS\_POINT Process="Param">ANIM\_VALUE\_\#MAX\_POINT\_INDEX\#</ANIM\_VAL\_PREVIOUS\_POINT> <REF\_VAL\_PREVIOUS\_POINT Process="Param">REF\_VALUE\_\#MAX\_POINT\_INDEX\#</REF\_VAL\_PREVIOUS\_POINT> <MAX\_POINT\_INDEX\_MINUS\_1 Process="Param">\#MAX\_POINT\_INDEX\# 1 -</MAX\_POINT\_INDEX\_MINUS\_1> </Parameters> <Parameters Type="Override"> <Loop> <Setup> <Param>NEXT\_ID</Param> <From>\#MAX\_POINT\_INDEX\#</From> <Inc>-1</Dec> <To>0</To> </Setup> <Do> <Parameters Type="Override" Lifetime="Loop"> <ANIM\_VAL\_CURRENT\_POINT Process="Param">ANIM\_VALUE\_\#NEXT\_ID\#</ANIM\_VAL\_CURRENT\_POINT> <REF\_VAL\_CURRENT\_POINT Process="Param">REF\_VALUE\_\#NEXT\_ID\#</REF\_VAL\_CURRENT\_POINT> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <CONTENT> \#CONTENT\# l0 \#REF\_VAL\_CURRENT\_POINT\# > if{ l0 \#REF\_VAL\_CURRENT\_POINT\# - \#REF\_VAL\_PREVIOUS\_POINT\# \#REF\_VAL\_CURRENT\_POINT\# - / \#ANIM\_VAL\_PREVIOUS\_POINT\# \#ANIM\_VAL\_CURRENT\_POINT\# - \* \#ANIM\_VAL\_CURRENT\_POINT\# + sp1 g1 } </CONTENT> <ANIM\_VAL\_PREVIOUS\_POINT Process="Param">ANIM\_VALUE\_\#NEXT\_ID\#</ANIM\_VAL\_PREVIOUS\_POINT> <REF\_VAL\_PREVIOUS\_POINT Process="Param">REF\_VALUE\_\#NEXT\_ID\#</REF\_VAL\_PREVIOUS\_POINT> </Parameters> </Do> <Then> <RETURN\_VALUE> \#SELECTION\# \#MAX\_DISPLAYABLE\# min \#MIN\_DISPLAYABLE\# max sp0 \#CONTENT\# :1 l1 </RETURN\_VALUE> </Then> </Loop> </Parameters> <ReturnParameters> <\#EXIT\_PARAM\_NAME\#>\#RETURN\_VALUE\#</\#EXIT\_PARAM\_NAME\#> </ReturnParameters> </ParametersFn> </ModelBehaviors>     ### ParametersFn - #### ASOBO\_PFN\_Call\_Overridable\_ParametersFn\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Call\_Overridable\_ParametersFn\_Helper"> <Parameters Type="Default"> <\#PFN\_PARAM\_NAME\#>\#PFN\_PARAM\_DEFAULT\#</\#PFN\_PARAM\_NAME\#> </Parameters> <Parameters Type="Override"> <\_\_FN\_NAME\_\_ Process="Param">\#PFN\_PARAM\_NAME\#</\_\_FN\_NAME\_\_> </Parameters> <ReturnParameters> <UseParametersFn Name="\#\_\_FN\_NAME\_\_\#"> <PFN\_PARAM\_NAME/> </UseParametersFn> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - \#PFN\_PARAM\_NAME\# (using PFN\_PARAM\_DEFAULT) - Override Parameters set: - \_\_FN\_NAME\_\_ (using PFN\_PARAM\_NAME) Return parameters: Parameters read: - \_\_FN\_NAME\_\_ ParametersFn used: - \#\_\_FN\_NAME\_\_\# Parameters set: - PFN\_PARAM\_NAME - #### ASOBO\_PFN\_Call\_Overridable\_ParametersFn\_No\_Default\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Call\_Overridable\_ParametersFn\_No\_Default\_Helper"> <Parameters Type="Override"> <\_\_FN\_NAME\_\_ Process="Param">\#PFN\_PARAM\_NAME\#</\_\_FN\_NAME\_\_> </Parameters> <ReturnParameters> <Condition NotEmpty="\_\_FN\_NAME\_\_"> <UseParametersFn Name="\#\_\_FN\_NAME\_\_\#"> <PFN\_PARAM\_NAME/> </UseParametersFn> </Condition> </ReturnParameters> </ParametersFn> Parameters initialization: - Override Parameters set: - \_\_FN\_NAME\_\_ (using PFN\_PARAM\_NAME) Return parameters: Condition: NotEmpty(\_\_FN\_NAME\_\_) - Case: True Parameters read: - \_\_FN\_NAME\_\_ ParametersFn used: - \#\_\_FN\_NAME\_\_\# Parameters set: - PFN\_PARAM\_NAME - #### ASOBO\_PFN\_Add\_ID\_To\_Parameter\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Add\_ID\_To\_Parameter\_Helper"> <Parameters Type="Default"> <Switch> <Case Valid="PREFIX\_ID"> <OUT\_PARAM\_PREFIX/> <OUT\_PARAM\_SUFFIX>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_SUFFIX> </Case> <Default> <OUT\_PARAM\_PREFIX>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_PREFIX> <OUT\_PARAM\_SUFFIX/> </Default> </Switch> <APPEND\_SEPARATOR>True</APPEND\_SEPARATOR> </Parameters> <Parameters Type="Default"> <Condition Valid="APPEND\_SEPARATOR"> <Condition NotEmpty="OUT\_PARAM\_PREFIX"> <PREFIX\_SEPARATOR>\_</PREFIX\_SEPARATOR> </Condition> <Condition NotEmpty="OUT\_PARAM\_SUFFIX"> <SUFFIX\_SEPARATOR>\_</SUFFIX\_SEPARATOR> </Condition> </Condition> </Parameters> <Parameters Type="Default"> <PREFIX\_SEPARATOR/> <SUFFIX\_SEPARATOR/> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_VALUE\_\_ Process="Param">\#IN\_PARAM\_NAME\#</\_\_PARAM\_VALUE\_\_> <\_\_PARAM\_ID\_\_>\#IN\_PARAM\_ID\#</\_\_PARAM\_ID\_\_> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_ID\_\_>\#PREFIX\_SEPARATOR\#\#\_\_PARAM\_ID\_\_\#\#SUFFIX\_SEPARATOR\#</\_\_PARAM\_ID\_\_> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_NAME\_\_>\#OUT\_PARAM\_PREFIX\#\#\_\_PARAM\_ID\_\_\#\#OUT\_PARAM\_SUFFIX\#</\_\_PARAM\_NAME\_\_> </Parameters> <ReturnParameters> <\#\_\_PARAM\_NAME\_\_\#>\#\_\_PARAM\_VALUE\_\_\#</\#\_\_PARAM\_NAME\_\_\#> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - APPEND\_SEPARATOR Condition: Switch - Case: Valid(PREFIX\_ID) Parameters set: - OUT\_PARAM\_PREFIX - OUT\_PARAM\_SUFFIX (using IN\_PARAM\_NAME) - Default case: Parameters set: - OUT\_PARAM\_PREFIX (using IN\_PARAM\_NAME) - OUT\_PARAM\_SUFFIX - Default Condition: Valid(APPEND\_SEPARATOR) - Case: True Condition: NotEmpty(OUT\_PARAM\_PREFIX) - Case: True Parameters set: - PREFIX\_SEPARATOR Condition: NotEmpty(OUT\_PARAM\_SUFFIX) - Case: True Parameters set: - SUFFIX\_SEPARATOR - Default Parameters set: - PREFIX\_SEPARATOR - SUFFIX\_SEPARATOR - Override Parameters set: - \_\_PARAM\_VALUE\_\_ (using IN\_PARAM\_NAME) - \_\_PARAM\_ID\_\_ (using IN\_PARAM\_ID) - Override Parameters set: - \_\_PARAM\_ID\_\_ (using PREFIX\_SEPARATOR, \_\_PARAM\_ID\_\_, SUFFIX\_SEPARATOR) - Override Parameters set: - \_\_PARAM\_NAME\_\_ (using OUT\_PARAM\_PREFIX, \_\_PARAM\_ID\_\_, OUT\_PARAM\_SUFFIX) Return parameters: Parameters set: - \#\_\_PARAM\_NAME\_\_\# (using \_\_PARAM\_VALUE\_\_) - #### ASOBO\_PFN\_Add\_ID\_To\_Parameters\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Add\_ID\_To\_Parameters\_Helper"> <Parameters Type="Default"> <ELTS\_COUNT>512</ELTS\_COUNT> <FIRST\_ID>0</FIRST\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FIRST\_ID\#</From> <Inc>1</Inc> <To>\#ELTS\_COUNT\#</To> <While> <Arg Check="IN\_PARAM\_\#CUR\_ID\#\_NAME"/> </While> </Setup> <Do> <UseParametersFn Name="ASOBO\_PFN\_Add\_ID\_To\_Parameter\_Helper"> <IN\_PARAM\_NAME Process="Param">IN\_PARAM\_\#CUR\_ID\#\_NAME</IN\_PARAM\_NAME> <Condition Check="IN\_PARAM\_\#CUR\_ID\#\_ID"> <IN\_PARAM\_ID Process="Param">IN\_PARAM\_\#CUR\_ID\#\_ID</IN\_PARAM\_ID> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_PREFIX"> <OUT\_PARAM\_PREFIX Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_PREFIX</OUT\_PARAM\_PREFIX> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX"> <OUT\_PARAM\_SUFFIX Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX</OUT\_PARAM\_SUFFIX> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_PREFIX\_SEPARATOR"> <PREFIX\_SEPARATOR Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_PREFIX\_SEPARATOR</PREFIX\_SEPARATOR> </Condition> <Condition Check="OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX\_SEPARATOR"> <SUFFIX\_SEPARATOR Process="Param">OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX\_SEPARATOR</SUFFIX\_SEPARATOR> </Condition> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - ELTS\_COUNT - FIRST\_ID Return parameters: Parameters read: - FIRST\_ID - ELTS\_COUNT - IN\_PARAM\_\#CUR\_ID\#\_NAME Parameters set: - CUR\_ID ParametersFn used: - [ASOBO\_PFN\_Add\_ID\_To\_Parameter\_Helper](parametersfnhelpers/#ASOBO_PFN_Add_ID_To_Parameter_Helper) Parameters set: - IN\_PARAM\_NAME (using CUR\_ID) Condition: Check(IN\_PARAM\_\#CUR\_ID\#\_ID) - Case: True Parameters set: - IN\_PARAM\_ID (using CUR\_ID) Condition: Check(OUT\_PARAM\_\#CUR\_ID\#\_PREFIX) - Case: True Parameters set: - OUT\_PARAM\_PREFIX (using CUR\_ID) Condition: Check(OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX) - Case: True Parameters set: - OUT\_PARAM\_SUFFIX (using CUR\_ID) Condition: Check(OUT\_PARAM\_\#CUR\_ID\#\_PREFIX\_SEPARATOR) - Case: True Parameters set: - PREFIX\_SEPARATOR (using CUR\_ID) Condition: Check(OUT\_PARAM\_\#CUR\_ID\#\_SUFFIX\_SEPARATOR) - Case: True Parameters set: - SUFFIX\_SEPARATOR (using CUR\_ID) - #### ASOBO\_PFN\_Remove\_ID\_From\_Parameter\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Remove\_ID\_From\_Parameter\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_NAME> </Parameters> <ReturnParameters> <Switch> <Case Valid="PREFIXED\_ID"> <Condition Check="\#IN\_PARAM\_ID\#\_\#IN\_PARAM\_NAME\#"> <\#OUT\_PARAM\_NAME\# Process="Param">\#IN\_PARAM\_ID\#\_\#IN\_PARAM\_NAME\#</\#OUT\_PARAM\_NAME\#> </Condition> </Case> <Default> <Condition Check="\#IN\_PARAM\_NAME\#\_\#IN\_PARAM\_ID\#"> <\#OUT\_PARAM\_NAME\# Process="Param">\#IN\_PARAM\_NAME\#\_\#IN\_PARAM\_ID\#</\#OUT\_PARAM\_NAME\#> </Condition> </Default> </Switch> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - OUT\_PARAM\_NAME (using IN\_PARAM\_NAME) Return parameters: Condition: Switch - Case: Valid(PREFIXED\_ID) Condition: Check(\#IN\_PARAM\_ID\#\_\#IN\_PARAM\_NAME\#) - Case: True Parameters set: - \#OUT\_PARAM\_NAME\# (using IN\_PARAM\_ID, IN\_PARAM\_NAME) - Default case: Condition: Check(\#IN\_PARAM\_NAME\#\_\#IN\_PARAM\_ID\#) - Case: True Parameters set: - \#OUT\_PARAM\_NAME\# (using IN\_PARAM\_NAME, IN\_PARAM\_ID) - #### ASOBO\_PFN\_Remove\_ID\_From\_Parameters\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Remove\_ID\_From\_Parameters\_Helper"> <Parameters Type="Default"> <ELTS\_COUNT>512</ELTS\_COUNT> <FIRST\_ID>0</FIRST\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FIRST\_ID\#</From> <To>\#ELTS\_COUNT\#</To> <Inc>1</Inc> <While> <Arg NotEmpty="IN\_PARAM\_\#CUR\_ID\#\_NAME"/> </While> </Setup> <Do> <UseParametersFn Name="ASOBO\_PFN\_Remove\_ID\_From\_Parameter\_Helper"> <IN\_PARAM\_NAME Process="Param">IN\_PARAM\_\#CUR\_ID\#\_NAME</IN\_PARAM\_NAME> <Condition Check="IN\_PARAM\_\#CUR\_ID\#\_ID"> <IN\_PARAM\_ID Process="Param">IN\_PARAM\_\#CUR\_ID\#\_ID</IN\_PARAM\_ID> </Condition> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - ELTS\_COUNT - FIRST\_ID Return parameters: Parameters read: - FIRST\_ID - ELTS\_COUNT - CUR\_ID Parameters set: - CUR\_ID ParametersFn used: - [ASOBO\_PFN\_Remove\_ID\_From\_Parameter\_Helper](parametersfnhelpers/#ASOBO_PFN_Remove_ID_From_Parameter_Helper) Parameters set: - IN\_PARAM\_NAME (using CUR\_ID) Condition: Check(IN\_PARAM\_\#CUR\_ID\#\_ID) - Case: True Parameters set: - IN\_PARAM\_ID (using CUR\_ID) - #### ASOBO\_PFN\_Return\_Parameter\_No\_Transform\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Return\_Parameter\_No\_Transform\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>\#IN\_PARAM\_NAME\#</OUT\_PARAM\_NAME> </Parameters> <ReturnParameters> <\#OUT\_PARAM\_NAME\# Process="Param">\#IN\_PARAM\_NAME\#</\#OUT\_PARAM\_NAME\#> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - OUT\_PARAM\_NAME (using IN\_PARAM\_NAME) Return parameters: Parameters set: - \#OUT\_PARAM\_NAME\# (using IN\_PARAM\_NAME) - #### ASOBO\_PFN\_Return\_Parameters\_No\_Transform\_Helper Definition from XML <ParametersFn Name="ASOBO\_PFN\_Return\_Parameters\_No\_Transform\_Helper"> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>0</From> <Inc>1</Inc> <While> <Arg Check="IN\_PARAM\_NAME\_\#CUR\_ID\#"/> </While> </Setup> <Do> <UseParametersFn Name="ASOBO\_PFN\_Return\_Parameter\_No\_Transform\_Helper"> <IN\_PARAM\_NAME Process="Param">IN\_PARAM\_NAME\_\#CUR\_ID\#</IN\_PARAM\_NAME> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> Return parameters: Parameters read: - IN\_PARAM\_NAME\_\#CUR\_ID\# Parameters set: - CUR\_ID ParametersFn used: - [ASOBO\_PFN\_Return\_Parameter\_No\_Transform\_Helper](parametersfnhelpers/#ASOBO_PFN_Return_Parameter_No_Transform_Helper) Parameters set: - IN\_PARAM\_NAME (using CUR\_ID) - #### ASOBO\_Indexer\_Helper Definition from XML <ParametersFn Name="ASOBO\_Indexer\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_VALUE\_PREFIX>\_</OUT\_PARAM\_VALUE\_PREFIX> <OUT\_PARAM\_VALUE\_SUFFIX/> </Parameters> <Parameters Type="Override"> <\_\_PARAM\_VALUE\_\_ Process="Param">\#IN\_PARAM\_NAME\_ID\#</\_\_PARAM\_VALUE\_\_> </Parameters> <Parameters Type="Default"> <OUT\_PARAM\_NAME>SUFFIX\_\#IN\_PARAM\_NAME\_ID\#</OUT\_PARAM\_NAME> </Parameters> <ReturnParameters> <\#OUT\_PARAM\_NAME\#>\#OUT\_PARAM\_VALUE\_PREFIX\#\#\_\_PARAM\_VALUE\_\_\#\#OUT\_PARAM\_VALUE\_SUFFIX\#</\#OUT\_PARAM\_NAME\#> <\#IN\_PARAM\_NAME\_ID\# Process="Param">\#IN\_PARAM\_NAME\_ID\#</\#IN\_PARAM\_NAME\_ID\#> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - OUT\_PARAM\_VALUE\_PREFIX - OUT\_PARAM\_VALUE\_SUFFIX - Override Parameters set: - \_\_PARAM\_VALUE\_\_ (using IN\_PARAM\_NAME\_ID) - Default Parameters set: - OUT\_PARAM\_NAME (using IN\_PARAM\_NAME\_ID) Return parameters: Parameters set: - \#OUT\_PARAM\_NAME\# (using OUT\_PARAM\_VALUE\_PREFIX, \_\_PARAM\_VALUE\_\_, OUT\_PARAM\_VALUE\_SUFFIX) - \#IN\_PARAM\_NAME\_ID\# (using IN\_PARAM\_NAME\_ID) - #### ASOBO\_For\_Each\_Of\_PFN\_Helper Definition from XML <ParametersFn Name="ASOBO\_For\_Each\_Of\_PFN\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>PARAM\_NAME</OUT\_PARAM\_NAME> <OUT\_PARAM\_VALUE>PARAM\_VALUE</OUT\_PARAM\_VALUE> <OUT\_PARAM\_ID>PARAM\_ID</OUT\_PARAM\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>PARAM</Param> <Value>VALUE</Value> <Parameters> <UseParametersFn Name="\#PFN\_GET\_PARAMETERS\#"/> </Parameters> </Setup> <Do> <Parameters Type="Override" Lifetime="Loop"> <UseParametersFn Name="ASOBO\_Increment\_ID\_Helper"/> </Parameters> <UseParametersFn Name="\#PFN\_TO\_CALL\#"> <\#OUT\_PARAM\_NAME\#>\#PARAM\#</\#OUT\_PARAM\_NAME\#> <\#OUT\_PARAM\_ID\#>\#CUR\_ID\#</\#OUT\_PARAM\_ID\#> <\#OUT\_PARAM\_VALUE\#>\#VALUE\#</\#OUT\_PARAM\_VALUE\#> </UseParametersFn> </Do> </Loop> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - OUT\_PARAM\_NAME - OUT\_PARAM\_VALUE - OUT\_PARAM\_ID Return parameters: Parameters read: - VALUE - PFN\_GET\_PARAMETERS - PFN\_TO\_CALL Parameters set: - PARAM ParametersFn used: - \#PFN\_GET\_PARAMETERS\# - [ASOBO\_Increment\_ID\_Helper](parametersfnhelpers/#ASOBO_Increment_ID_Helper) - \#PFN\_TO\_CALL\# Parameters set: - \#OUT\_PARAM\_NAME\# (using PARAM) - \#OUT\_PARAM\_ID\# (using CUR\_ID) - \#OUT\_PARAM\_VALUE\# (using VALUE) - #### ASOBO\_Increment\_ID\_Helper Definition from XML <ParametersFn Name="ASOBO\_Increment\_ID\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_ID\_NAME>CUR\_ID</OUT\_PARAM\_ID\_NAME> <OUT\_FIRST\_ID>0</OUT\_FIRST\_ID> <INCREMENT\_COUNT>1</INCREMENT\_COUNT> </Parameters> <Parameters Type="Override"> <Condition Check="\#OUT\_PARAM\_ID\_NAME\#"> <CUR\_VALUE Process="Param">\#OUT\_PARAM\_ID\_NAME\#</CUR\_VALUE> </Condition> </Parameters> <ReturnParameters> <Condition Check="\#OUT\_PARAM\_ID\_NAME\#"> <True> <\#OUT\_PARAM\_ID\_NAME\# Process="Int">\#CUR\_VALUE\# \#INCREMENT\_COUNT\# +</\#OUT\_PARAM\_ID\_NAME\#> </True> <False> <\#OUT\_PARAM\_ID\_NAME\#>\#OUT\_FIRST\_ID\#</\#OUT\_PARAM\_ID\_NAME\#> </False> </Condition> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - OUT\_PARAM\_ID\_NAME - OUT\_FIRST\_ID - INCREMENT\_COUNT - Override Condition: Check(\#OUT\_PARAM\_ID\_NAME\#) - Case: True Parameters set: - CUR\_VALUE (using OUT\_PARAM\_ID\_NAME) Return parameters: Condition: Check(\#OUT\_PARAM\_ID\_NAME\#) - Case: True Parameters set: - \#OUT\_PARAM\_ID\_NAME\# (using CUR\_VALUE, INCREMENT\_COUNT) - Case: False Parameters set: - \#OUT\_PARAM\_ID\_NAME\# (using OUT\_FIRST\_ID) - #### ASOBO\_Count\_Token\_Helper Definition from XML <ParametersFn Name="ASOBO\_Count\_Token\_Helper"> <Parameters Type="Default"> <FROM>0</FROM> <INC>1</INC> <TOKEN\_PREFIX/> <TOKEN\_SUFFIX/> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FROM\#</From> <Inc>\#INC\#</Inc> <While> <Arg NotEmpty="\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#"/> </While> </Setup> <Do/> <Then> <\#OUT\_PARAM\_NAME\_COUNT\# Process="Int">\#CUR\_ID\# \#FROM\# -</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_LAST\_ID\# Process="Int">\#CUR\_ID\# 1 -</\#OUT\_PARAM\_NAME\_LAST\_ID\#> </Then> </Loop> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - FROM - INC - TOKEN\_PREFIX - TOKEN\_SUFFIX - OUT\_PARAM\_NAME\_COUNT - OUT\_PARAM\_NAME\_LAST\_ID Return parameters: Parameters read: - FROM - INC - TOKEN\_PREFIX - CUR\_ID - TOKEN\_SUFFIX Parameters set: - CUR\_ID - \#OUT\_PARAM\_NAME\_COUNT\# (using CUR\_ID, FROM) - \#OUT\_PARAM\_NAME\_LAST\_ID\# (using CUR\_ID) - #### ASOBO\_Count\_Token\_In\_Save\_Helper Definition from XML <ParametersFn Name="ASOBO\_Count\_Token\_In\_Save\_Helper"> <Parameters Type="Default"> <FROM>0</FROM> <INC>1</INC> <TOKEN\_PREFIX/> <TOKEN\_SUFFIX/> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> </Parameters> <Parameters Type="Override"> <LoadParameters ID="\#TOKEN\_COLLECTION\#"/> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FROM\#</From> <Inc>\#INC\#</Inc> <While> <Arg NotEmpty="\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#"/> </While> </Setup> <Do/> <Then> <\#OUT\_PARAM\_NAME\_COUNT\# Process="Int">\#CUR\_ID\# \#FROM\# -</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_LAST\_ID\# Process="Int">\#CUR\_ID\# 1 -</\#OUT\_PARAM\_NAME\_LAST\_ID\#> </Then> </Loop> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - FROM - INC - TOKEN\_PREFIX - TOKEN\_SUFFIX - OUT\_PARAM\_NAME\_COUNT - OUT\_PARAM\_NAME\_LAST\_ID - Override Parameters read: - TOKEN\_COLLECTION Return parameters: Parameters read: - FROM - INC - TOKEN\_PREFIX - CUR\_ID - TOKEN\_SUFFIX Parameters set: - CUR\_ID - \#OUT\_PARAM\_NAME\_COUNT\# (using CUR\_ID, FROM) - \#OUT\_PARAM\_NAME\_LAST\_ID\# (using CUR\_ID) - #### ASOBO\_Find\_Min\_Max\_Helper Definition from XML <ParametersFn Name="ASOBO\_Find\_Min\_Max\_Helper"> <Parameters Type="Default"> <MIN\_INIT\_VALUE>1000000</MIN\_INIT\_VALUE> <MAX\_INIT\_VALUE>-1000000</MAX\_INIT\_VALUE> <FROM>0</FROM> <INC>1</INC> <TOKEN\_PREFIX/> <TOKEN\_SUFFIX/> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> <OUT\_PARAM\_NAME\_MIN>TOKEN\_MIN</OUT\_PARAM\_NAME\_MIN> <OUT\_PARAM\_NAME\_MAX>TOKEN\_MAX</OUT\_PARAM\_NAME\_MAX> </Parameters> <Parameters Type="Override"> <\_\_MIN\_\_>\#MIN\_INIT\_VALUE\#</\_\_MIN\_\_> <\_\_MAX\_\_>\#MAX\_INIT\_VALUE\#</\_\_MAX\_\_> </Parameters> <ReturnParameters> <Loop> <Setup> <Param>CUR\_ID</Param> <From>\#FROM\#</From> <Inc>\#INC\#</Inc> <While> <Arg Check="\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#"/> </While> </Setup> <Do> <Parameters Type="Override"> <PARAM\_VALUE Process="Param">\#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\#</PARAM\_VALUE> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <Condition> <Test> <Lower> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MIN\_\_\#</Number> </Lower> </Test> <True> <\_\_MIN\_\_>\#PARAM\_VALUE\#</\_\_MIN\_\_> </True> </Condition> <Condition> <Test> <Greater> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MAX\_\_\#</Number> </Greater> </Test> <True> <\_\_MAX\_\_>\#PARAM\_VALUE\#</\_\_MAX\_\_> </True> </Condition> </Parameters> </Do> <Then> <\#OUT\_PARAM\_NAME\_LAST\_ID\# Process="Int">\#CUR\_ID\# 1 -</\#OUT\_PARAM\_NAME\_LAST\_ID\#> <\#OUT\_PARAM\_NAME\_COUNT\#>\#CUR\_ID\#</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_MIN\#>\#\_\_MIN\_\_\#</\#OUT\_PARAM\_NAME\_MIN\#> <\#OUT\_PARAM\_NAME\_MAX\#>\#\_\_MAX\_\_\#</\#OUT\_PARAM\_NAME\_MAX\#> </Then> </Loop> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - MIN\_INIT\_VALUE - MAX\_INIT\_VALUE - FROM - INC - TOKEN\_PREFIX - TOKEN\_SUFFIX - OUT\_PARAM\_NAME\_COUNT - OUT\_PARAM\_NAME\_LAST\_ID - OUT\_PARAM\_NAME\_MIN - OUT\_PARAM\_NAME\_MAX - Override Parameters set: - \_\_MIN\_\_ (using MIN\_INIT\_VALUE) - \_\_MAX\_\_ (using MAX\_INIT\_VALUE) Return parameters: Parameters read: - FROM - INC - \#TOKEN\_PREFIX\#\#CUR\_ID\#\#TOKEN\_SUFFIX\# Parameters set: - CUR\_ID - PARAM\_VALUE (using TOKEN\_PREFIX, CUR\_ID, TOKEN\_SUFFIX) - \#OUT\_PARAM\_NAME\_LAST\_ID\# (using CUR\_ID) - \#OUT\_PARAM\_NAME\_COUNT\# (using CUR\_ID) - \#OUT\_PARAM\_NAME\_MIN\# (using \_\_MIN\_\_) - \#OUT\_PARAM\_NAME\_MAX\# (using \_\_MAX\_\_) Condition: Test - Case: True Parameters set: - \_\_MIN\_\_ (using PARAM\_VALUE) Condition: Test - Case: True Parameters set: - \_\_MAX\_\_ (using PARAM\_VALUE) - #### ASOBO\_Find\_Min\_Max\_Helper\_In Definition from XML <ParametersFn Name="ASOBO\_Find\_Min\_Max\_Helper\_In"> <Parameters Type="Default"> <MIN\_INIT\_VALUE>1000000</MIN\_INIT\_VALUE> <MAX\_INIT\_VALUE>-1000000</MAX\_INIT\_VALUE> <OUT\_PARAM\_NAME\_COUNT>TOKEN\_COUNT</OUT\_PARAM\_NAME\_COUNT> <OUT\_PARAM\_NAME\_LAST\_ID>LAST\_TOKEN\_ID</OUT\_PARAM\_NAME\_LAST\_ID> <OUT\_PARAM\_NAME\_MIN>TOKEN\_MIN</OUT\_PARAM\_NAME\_MIN> <OUT\_PARAM\_NAME\_MAX>TOKEN\_MAX</OUT\_PARAM\_NAME\_MAX> </Parameters> <Parameters Type="Override"> <\_\_MIN\_\_>\#MIN\_INIT\_VALUE\#</\_\_MIN\_\_> <\_\_MAX\_\_>\#MAX\_INIT\_VALUE\#</\_\_MAX\_\_> </Parameters> <ReturnParameters> <Loop> <Setup> <Value>PARAM\_VALUE</Value> <Parameters> <LoadParameters ID="\#SAVED\_PARAMETERS\#"/> </Parameters> </Setup> <Do> <Parameters Type="Override" Lifetime="Loop"> <UseParametersFn Name="ASOBO\_Increment\_ID\_Helper"/> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <Condition> <Test> <Lower> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MIN\_\_\#</Number> </Lower> </Test> <True> <\_\_MIN\_\_>\#PARAM\_VALUE\#</\_\_MIN\_\_> </True> </Condition> <Condition> <Test> <Greater> <Number>\#PARAM\_VALUE\#</Number> <Number>\#\_\_MAX\_\_\#</Number> </Greater> </Test> <True> <\_\_MAX\_\_>\#PARAM\_VALUE\#</\_\_MAX\_\_> </True> </Condition> </Parameters> </Do> <Then> <\#OUT\_PARAM\_NAME\_LAST\_ID\#>\#CUR\_ID\#</\#OUT\_PARAM\_NAME\_LAST\_ID\#> <\#OUT\_PARAM\_NAME\_COUNT\# Process="Int">\#CUR\_ID\# 1 +</\#OUT\_PARAM\_NAME\_COUNT\#> <\#OUT\_PARAM\_NAME\_MIN\#>\#\_\_MIN\_\_\#</\#OUT\_PARAM\_NAME\_MIN\#> <\#OUT\_PARAM\_NAME\_MAX\#>\#\_\_MAX\_\_\#</\#OUT\_PARAM\_NAME\_MAX\#> </Then> </Loop> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - MIN\_INIT\_VALUE - MAX\_INIT\_VALUE - OUT\_PARAM\_NAME\_COUNT - OUT\_PARAM\_NAME\_LAST\_ID - OUT\_PARAM\_NAME\_MIN - OUT\_PARAM\_NAME\_MAX - Override Parameters set: - \_\_MIN\_\_ (using MIN\_INIT\_VALUE) - \_\_MAX\_\_ (using MAX\_INIT\_VALUE) Return parameters: Parameters read: - PARAM\_VALUE - SAVED\_PARAMETERS Parameters set: - \#OUT\_PARAM\_NAME\_LAST\_ID\# (using CUR\_ID) - \#OUT\_PARAM\_NAME\_COUNT\# (using CUR\_ID) - \#OUT\_PARAM\_NAME\_MIN\# (using \_\_MIN\_\_) - \#OUT\_PARAM\_NAME\_MAX\# (using \_\_MAX\_\_) ParametersFn used: - [ASOBO\_Increment\_ID\_Helper](parametersfnhelpers/#ASOBO_Increment_ID_Helper) Condition: Test - Case: True Parameters set: - \_\_MIN\_\_ (using PARAM\_VALUE) Condition: Test - Case: True Parameters set: - \_\_MAX\_\_ (using PARAM\_VALUE) - #### ASOBO\_Load\_Then\_Remove\_Parameters\_Helper Definition from XML <ParametersFn Name="ASOBO\_Load\_Then\_Remove\_Parameters\_Helper"> <Parameters Type="Default"> <REMOVE\_\#SAVED\_PARAMETERS\#>True</REMOVE\_\#SAVED\_PARAMETERS\#> </Parameters> <Parameters Type="Override"> <\_\_SAVED\_PARAMETERS\_\_ Process="Param">\#SAVED\_PARAMETERS\#</\_\_SAVED\_PARAMETERS\_\_> </Parameters> <ReturnParameters> <Condition CheckSavedParameters="\#\_\_SAVED\_PARAMETERS\_\_\#"> <LoadParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> <Condition Valid="REMOVE\_\#SAVED\_PARAMETERS\#"> <RemoveSavedParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> </Condition> </Condition> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - REMOVE\_\#SAVED\_PARAMETERS\# - Override Parameters set: - \_\_SAVED\_PARAMETERS\_\_ (using SAVED\_PARAMETERS) Return parameters: Condition: CheckSavedParameters(\#\_\_SAVED\_PARAMETERS\_\_\#) - Case: True Parameters read: - \_\_SAVED\_PARAMETERS\_\_ Condition: Valid(REMOVE\_\#SAVED\_PARAMETERS\#) - Case: True Parameters read: - \_\_SAVED\_PARAMETERS\_\_ - #### ASOBO\_Save\_To\_Then\_Remove\_Parameters\_Helper Definition from XML <ParametersFn Name="ASOBO\_Save\_To\_Then\_Remove\_Parameters\_Helper"> <Parameters Type="Default"> <REMOVE\_\#SAVED\_PARAMETERS\#>True</REMOVE\_\#SAVED\_PARAMETERS\#> <APPEND>Override</APPEND> </Parameters> <Parameters Type="Override"> <\_\_SAVED\_PARAMETERS\_\_ Process="Param">\#SAVED\_PARAMETERS\#</\_\_SAVED\_PARAMETERS\_\_> </Parameters> <ReturnParameters> <Condition CheckSavedParameters="\#\_\_SAVED\_PARAMETERS\_\_\#"> <SaveParameters ID="\#SAVE\_TO\#" Append="\#APPEND\#"> <LoadParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> </SaveParameters> <Condition Valid="REMOVE\_\#SAVED\_PARAMETERS\#"> <RemoveSavedParameters ID="\#\_\_SAVED\_PARAMETERS\_\_\#"/> </Condition> </Condition> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - REMOVE\_\#SAVED\_PARAMETERS\# - APPEND - Override Parameters set: - \_\_SAVED\_PARAMETERS\_\_ (using SAVED\_PARAMETERS) Return parameters: Condition: CheckSavedParameters(\#\_\_SAVED\_PARAMETERS\_\_\#) - Case: True Parameters read: - SAVE\_TO - APPEND - \_\_SAVED\_PARAMETERS\_\_ Condition: Valid(REMOVE\_\#SAVED\_PARAMETERS\#) - Case: True Parameters read: - \_\_SAVED\_PARAMETERS\_\_ - #### ASOBO\_Get\_MIN\_MAX\_Ratios\_Helper Definition from XML <ParametersFn Name="ASOBO\_Get\_MIN\_MAX\_Ratios\_Helper"> <Parameters Type="Override"> <FULL\_RANGE Process="Float">\#MAX\_VALUE\# \#MIN\_VALUE\# -</FULL\_RANGE> <POSITIVE\_RANGE Process="Float">\#MAX\_VALUE\# 0 -</POSITIVE\_RANGE> <NEGATIVE\_RANGE Process="Float">0 \#MIN\_VALUE\# -</NEGATIVE\_RANGE> </Parameters> <Parameters Type="Override"> <RATIO\_POSITIVE Process="Float">\#POSITIVE\_RANGE\# \#FULL\_RANGE\# /</RATIO\_POSITIVE> <RATIO\_NEGATIVE Process="Float">\#NEGATIVE\_RANGE\# \#FULL\_RANGE\# /</RATIO\_NEGATIVE> </Parameters> <Parameters Type="Override"> <POSITIVE\_TO\_NEGATIVE\_RATIO Process="Float">\#RATIO\_NEGATIVE\# 0 > if{ \#RATIO\_POSITIVE\# \#RATIO\_NEGATIVE\# / } els{ 1 }</POSITIVE\_TO\_NEGATIVE\_RATIO> <NEGATIVE\_TO\_POSITIVE\_RATIO Process="Float">\#RATIO\_POSITIVE\# 0 > if{ \#RATIO\_NEGATIVE\# \#RATIO\_POSITIVE\# / } els{ 1 }</NEGATIVE\_TO\_POSITIVE\_RATIO> </Parameters> <ReturnParameters> <FULL\_RANGE>\#FULL\_RANGE\#</FULL\_RANGE> <POSITIVE\_RANGE>\#POSITIVE\_RANGE\#</POSITIVE\_RANGE> <NEGATIVE\_RANGE>\#NEGATIVE\_RANGE\#</NEGATIVE\_RANGE> <RATIO\_POSITIVE>\#RATIO\_POSITIVE\#</RATIO\_POSITIVE> <RATIO\_NEGATIVE>\#RATIO\_NEGATIVE\#</RATIO\_NEGATIVE> <POSITIVE\_TO\_NEGATIVE\_RATIO>\#POSITIVE\_TO\_NEGATIVE\_RATIO\#</POSITIVE\_TO\_NEGATIVE\_RATIO> <NEGATIVE\_TO\_POSITIVE\_RATIO>\#NEGATIVE\_TO\_POSITIVE\_RATIO\#</NEGATIVE\_TO\_POSITIVE\_RATIO> <MIN\_VALUE>\#MIN\_VALUE\#</MIN\_VALUE> <MAX\_VALUE>\#MAX\_VALUE\#</MAX\_VALUE> </ReturnParameters> </ParametersFn> Parameters initialization: - Override Parameters set: - FULL\_RANGE (using MAX\_VALUE, MIN\_VALUE) - POSITIVE\_RANGE (using MAX\_VALUE) - NEGATIVE\_RANGE (using MIN\_VALUE) - Override Parameters set: - RATIO\_POSITIVE (using POSITIVE\_RANGE, FULL\_RANGE) - RATIO\_NEGATIVE (using NEGATIVE\_RANGE, FULL\_RANGE) - Override Parameters set: - POSITIVE\_TO\_NEGATIVE\_RATIO (using RATIO\_NEGATIVE, RATIO\_POSITIVE) - NEGATIVE\_TO\_POSITIVE\_RATIO (using RATIO\_POSITIVE, RATIO\_NEGATIVE) Return parameters: Parameters set: - FULL\_RANGE (using FULL\_RANGE) - POSITIVE\_RANGE (using POSITIVE\_RANGE) - NEGATIVE\_RANGE (using NEGATIVE\_RANGE) - RATIO\_POSITIVE (using RATIO\_POSITIVE) - RATIO\_NEGATIVE (using RATIO\_NEGATIVE) - POSITIVE\_TO\_NEGATIVE\_RATIO (using POSITIVE\_TO\_NEGATIVE\_RATIO) - NEGATIVE\_TO\_POSITIVE\_RATIO (using NEGATIVE\_TO\_POSITIVE\_RATIO) - MIN\_VALUE (using MIN\_VALUE) - MAX\_VALUE (using MAX\_VALUE) - #### ASOBO\_Get\_Param\_Suffix\_Helper Definition from XML <ParametersFn Name="ASOBO\_Get\_Param\_Suffix\_Helper"> <Parameters Type="Default"> <OUT\_PARAM\_NAME>OUT\_PARAM\_SUFFIX</OUT\_PARAM\_NAME> </Parameters> <Parameters Type="Default"> <Condition Check="OUT\_PARAM\_ID"> <True> <OUT\_PARAM\_SUFFIX>\_\#OUT\_PARAM\_ID\#</OUT\_PARAM\_SUFFIX> </True> <False> <OUT\_PARAM\_SUFFIX/> </False> </Condition> </Parameters> <ReturnParameters> <\#OUT\_PARAM\_NAME\#>\#OUT\_PARAM\_SUFFIX\#</\#OUT\_PARAM\_NAME\#> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - OUT\_PARAM\_NAME - Default Condition: Check(OUT\_PARAM\_ID) - Case: True Parameters set: - OUT\_PARAM\_SUFFIX (using OUT\_PARAM\_ID) - Case: False Parameters set: - OUT\_PARAM\_SUFFIX Return parameters: Parameters set: - \#OUT\_PARAM\_NAME\# (using OUT\_PARAM\_SUFFIX) - #### ASOBO\_Get\_Param\_Prefix\_Helper Definition from XML <ParametersFn Name="ASOBO\_Get\_Param\_Prefix\_Helper"> <Parameters Type="Default"> <Condition Check="OUT\_PARAM\_ID"> <True> <OUT\_PARAM\_PREFIX>\#OUT\_PARAM\_ID\#\_</OUT\_PARAM\_PREFIX> </True> <False> <OUT\_PARAM\_PREFIX/> </False> </Condition> </Parameters> <ReturnParameters> <OUT\_PARAM\_PREFIX>\#OUT\_PARAM\_PREFIX\#</OUT\_PARAM\_PREFIX> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Condition: Check(OUT\_PARAM\_ID) - Case: True Parameters set: - OUT\_PARAM\_PREFIX (using OUT\_PARAM\_ID) - Case: False Parameters set: - OUT\_PARAM\_PREFIX Return parameters: Parameters set: - OUT\_PARAM\_PREFIX (using OUT\_PARAM\_PREFIX) - #### ASOBO\_Get\_Max\_Param\_Iteration\_Helper Definition from XML <ParametersFn Name="ASOBO\_Get\_Max\_Param\_Iteration\_Helper"> <Parameters Type="Default"> <MAX\_VALUE>-1</MAX\_VALUE> <PARAM\_PREFIX/> <PARAM\_SUFFIX/> <MAX\_ITERATION>0</MAX\_ITERATION> <OUTGOING\_PARAM>OUT\_VALUE</OUTGOING\_PARAM> </Parameters> <Parameters Type="Override"> <Loop> <Setup> <Param>CUR\_ID</Param> <From>1</From> <Inc>1</Inc> <While> <Not> <Arg Valid="INFINITE"/> </Not> </While> </Setup> <Do> <SaveParameters ID="MaxParam\_FoundValue"> <FOUND\_VALUE>False</FOUND\_VALUE> <MAX\_ITERATION>\#MAX\_ITERATION\#</MAX\_ITERATION> </SaveParameters> <Parameters Type="Override" Lifetime="Loop"> <Loop> <Setup> <Param>CUR\_PARAM\_ID</Param> <From>0</From> <Inc>1</Inc> <While> <Or> <Arg NotEmpty="PARAM\_PREFIX\_\#CUR\_PARAM\_ID\#"/> <Arg NotEmpty="PARAM\_SUFIX\_\#CUR\_PARAM\_ID\#"/> </Or> </While> </Setup> <Do> <Parameters Type="Override" Lifetime="Iteration"> <PARAM\_PREFIX Process="Param">PARAM\_PREFIX\_\#CUR\_PARAM\_ID\#</PARAM\_PREFIX> <PARAM\_SUFIX Process="Param">PARAM\_SUFIX\_\#CUR\_PARAM\_ID\#</PARAM\_SUFIX> </Parameters> <Parameters Type="Override" Lifetime="Iteration"> <PARAM\_FINAL Process="Param">\#PARAM\_PREFIX\#\#CUR\_ID\#\#PARAM\_SUFFIX\#</PARAM\_FINAL> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <Condition NotEmpty="PARAM\_FINAL"> <SaveParameters ID="MaxParam\_FoundValue"> <FOUND\_VALUE>True</FOUND\_VALUE> <MAX\_ITERATION Process="Int">\#MAX\_ITERATION\# \#CUR\_ID\# max</MAX\_ITERATION> </SaveParameters> </Condition> </Parameters> </Do> </Loop> <LoadParameters ID="MaxParam\_FoundValue"/> <Condition Valid="FOUND\_VALUE"> <False> <Break/> </False> </Condition> </Parameters> </Do> </Loop> <LoadParameters ID="MaxParam\_FoundValue"/> </Parameters> <ReturnParameters> <\#OUTGOING\_PARAM\# Process="Int">\#MAX\_ITERATION\#</\#OUTGOING\_PARAM\#> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - MAX\_VALUE - PARAM\_PREFIX - PARAM\_SUFFIX - MAX\_ITERATION - OUTGOING\_PARAM - Override Parameters read: - CUR\_PARAM\_ID Parameters set: - CUR\_ID - FOUND\_VALUE - MAX\_ITERATION (using MAX\_ITERATION) - CUR\_PARAM\_ID - PARAM\_PREFIX (using CUR\_PARAM\_ID) - PARAM\_SUFIX (using CUR\_PARAM\_ID) - PARAM\_FINAL (using PARAM\_PREFIX, CUR\_ID, PARAM\_SUFFIX) Condition: NotEmpty(PARAM\_FINAL) - Case: True Parameters set: - FOUND\_VALUE - MAX\_ITERATION (using MAX\_ITERATION, CUR\_ID) Condition: Valid(FOUND\_VALUE) - Case: False Return parameters: Parameters set: - \#OUTGOING\_PARAM\# (using MAX\_ITERATION) - #### ASOBO\_Get\_Non\_Linear\_Animation\_Code Definition from XML <ParametersFn Name="ASOBO\_Get\_Non\_Linear\_Animation\_Code"> <Parameters Type="Default"> <SELECTION>50</SELECTION> <ANIM\_VALUE\_0>0</ANIM\_VALUE\_0> <REF\_VALUE\_0>0</REF\_VALUE\_0> <ANIM\_VALUE\_1>100</ANIM\_VALUE\_1> <REF\_VALUE\_1>100</REF\_VALUE\_1> <ANIM\_LENGTH>100</ANIM\_LENGTH> <MAX\_POINT\_INDEX>1</MAX\_POINT\_INDEX> <MAX\_DISPLAYABLE>100</MAX\_DISPLAYABLE> <MIN\_DISPLAYABLE>0</MIN\_DISPLAYABLE> <EXIT\_TEMPLATE>ASOBO\_GT\_Anim\_Code</EXIT\_TEMPLATE> <EXIT\_PARAM\_NAME>ANIM\_CODE</EXIT\_PARAM\_NAME> <CONTENT/> </Parameters> <Parameters Type="Override"> <ANIM\_VAL\_PREVIOUS\_POINT Process="Param">ANIM\_VALUE\_\#MAX\_POINT\_INDEX\#</ANIM\_VAL\_PREVIOUS\_POINT> <REF\_VAL\_PREVIOUS\_POINT Process="Param">REF\_VALUE\_\#MAX\_POINT\_INDEX\#</REF\_VAL\_PREVIOUS\_POINT> <MAX\_POINT\_INDEX\_MINUS\_1 Process="Param">\#MAX\_POINT\_INDEX\# 1 -</MAX\_POINT\_INDEX\_MINUS\_1> </Parameters> <Parameters Type="Override"> <Loop> <Setup> <Param>NEXT\_ID</Param> <From>\#MAX\_POINT\_INDEX\#</From> <Inc>-1</Inc> <To>0</To> </Setup> <Do> <Parameters Type="Override" Lifetime="Loop"> <ANIM\_VAL\_CURRENT\_POINT Process="Param">ANIM\_VALUE\_\#NEXT\_ID\#</ANIM\_VAL\_CURRENT\_POINT> <REF\_VAL\_CURRENT\_POINT Process="Param">REF\_VALUE\_\#NEXT\_ID\#</REF\_VAL\_CURRENT\_POINT> </Parameters> <Parameters Type="Override" Lifetime="Loop"> <CONTENT> \#CONTENT\# l0 \#REF\_VAL\_CURRENT\_POINT\# > if{ l0 \#REF\_VAL\_CURRENT\_POINT\# - \#REF\_VAL\_PREVIOUS\_POINT\# \#REF\_VAL\_CURRENT\_POINT\# - / \#ANIM\_VAL\_PREVIOUS\_POINT\# \#ANIM\_VAL\_CURRENT\_POINT\# - \* \#ANIM\_VAL\_CURRENT\_POINT\# + sp1 g1 } </CONTENT> <ANIM\_VAL\_PREVIOUS\_POINT Process="Param">ANIM\_VALUE\_\#NEXT\_ID\#</ANIM\_VAL\_PREVIOUS\_POINT> <REF\_VAL\_PREVIOUS\_POINT Process="Param">REF\_VALUE\_\#NEXT\_ID\#</REF\_VAL\_PREVIOUS\_POINT> </Parameters> </Do> <Then> <RETURN\_VALUE> \#SELECTION\# \#MAX\_DISPLAYABLE\# min \#MIN\_DISPLAYABLE\# max sp0 \#CONTENT\# :1 l1 </RETURN\_VALUE> </Then> </Loop> </Parameters> <ReturnParameters> <\#EXIT\_PARAM\_NAME\#>\#RETURN\_VALUE\#</\#EXIT\_PARAM\_NAME\#> </ReturnParameters> </ParametersFn> Parameters initialization: - Default Parameters set: - SELECTION - ANIM\_VALUE\_0 - REF\_VALUE\_0 - ANIM\_VALUE\_1 - REF\_VALUE\_1 - ANIM\_LENGTH - MAX\_POINT\_INDEX - MAX\_DISPLAYABLE - MIN\_DISPLAYABLE - EXIT\_TEMPLATE - EXIT\_PARAM\_NAME - CONTENT - Override Parameters set: - ANIM\_VAL\_PREVIOUS\_POINT (using MAX\_POINT\_INDEX) - REF\_VAL\_PREVIOUS\_POINT (using MAX\_POINT\_INDEX) - MAX\_POINT\_INDEX\_MINUS\_1 (using MAX\_POINT\_INDEX) - Override Parameters read: - MAX\_POINT\_INDEX Parameters set: - NEXT\_ID - ANIM\_VAL\_CURRENT\_POINT (using NEXT\_ID) - REF\_VAL\_CURRENT\_POINT (using NEXT\_ID) - CONTENT (using CONTENT, REF\_VAL\_CURRENT\_POINT, REF\_VAL\_PREVIOUS\_POINT, ANIM\_VAL\_PREVIOUS\_POINT, ANIM\_VAL\_CURRENT\_POINT) - ANIM\_VAL\_PREVIOUS\_POINT (using NEXT\_ID) - REF\_VAL\_PREVIOUS\_POINT (using NEXT\_ID) - RETURN\_VALUE (using SELECTION, MAX\_DISPLAYABLE, MIN\_DISPLAYABLE, CONTENT) Return parameters: Parameters set: - \#EXIT\_PARAM\_NAME\# (using RETURN\_VALUE)