Asobo\Common\Subtemplates\Deice_Subtemplates.xml
Templates
-
ASOBO_DEICE_Engine_SubTemplate
Definition from XML<Template Name="ASOBO_DEICE_Engine_SubTemplate"> <Parameters Type="Default"> <NODE_ID>DEICE_#INTERACTION_TYPE#_Engine_#ID#</NODE_ID> <ANIM_NAME>DEICE_#INTERACTION_TYPE#_Engine_#ID#</ANIM_NAME> <PART_ID>DEICE_Engine</PART_ID> <OTHER_PART_ID>DEICE_Engine_#ID#</OTHER_PART_ID> <WWISE_PREFIX>deice_engine</WWISE_PREFIX> <Switch Param="TYPE"> <Case Value="INERT_SEP"> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_INERTSEP_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.DEICE_SWITCH_INERTSEP_ACTION</TT_DESCRIPTION_ID> </Case> <Default> <TOOLTIP_TITLE>@TT_Package.DEICE_ANTI_ICE_ENGINE_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.DEICE_ANTI_ICE_ENGINE_ACTION_SET</TT_DESCRIPTION_ID> <TT_DESCRIPTION_INDEX>#ID#</TT_DESCRIPTION_INDEX> </Default> </Switch> </Parameters> <Parameters Type="Default"> <Switch param="INTERACTION_TYPE"> <Case Value="Push"> <IS_AIRLINER>True</IS_AIRLINER> <Switch param="DECALS_TYPE"> <Case Value="FAULT_ON"> <SEQ1_EMISSIVE_CODE>0</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(B:DEICE_Engine_#ID#, Bool)</SEQ2_EMISSIVE_CODE> </Case> <Default> <SEQ1_EMISSIVE_CODE>(B:DEICE_Engine_#ID#, Bool)</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(B:DEICE_Engine_#ID#, Bool) !</SEQ2_EMISSIVE_CODE> </Default> </Switch> </Case> <Case Value="Knob"> <KNOB_TYPE>X_STATES</KNOB_TYPE> <NUM_STATES>3</NUM_STATES> <Switch Param="TYPE"> <Case Value="AS04F"> <INTERACTION_AXIS>Y</INTERACTION_AXIS> <DEICE_ENGINE_TYPE>ON_OFF_TEST</DEICE_ENGINE_TYPE> </Case> <Default> <DEICE_ENGINE_TYPE>ON_AUTO_OFF</DEICE_ENGINE_TYPE> </Default> </Switch> </Case> <Case Value="Lever"> <AXIS>Y</AXIS> <DEICE_ENGINE_TYPE>GRADUAL_SET</DEICE_ENGINE_TYPE> <SCROLL_INCREMENT Process="Int">16384 20 /</SCROLL_INCREMENT> </Case> </Switch> </Parameters> <Parameters Type="Default"> <Switch Param="DEICE_ENGINE_TYPE"> <Case Value="ON_OFF_TEST"> <POS_ON>0</POS_ON> <POS_OFF>1</POS_OFF> <POS_TEST>2</POS_TEST> </Case> <Case Value="ON_AUTO_OFF"> <POS_ON>0</POS_ON> <POS_AUTO>1</POS_AUTO> <POS_OFF>2</POS_OFF> </Case> </Switch> </Parameters> <Parameters Type="Override"> <Switch Param="DEICE_ENGINE_TYPE"> <Case Value="ON_OFF_TEST"> <NUM_STATES>3</NUM_STATES> <STR_STATE_#POS_ON#>On</STR_STATE_#POS_ON#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <STR_STATE_#POS_TEST#>Test</STR_STATE_#POS_TEST#> <TT_VALUE_#POS_ON#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ON#> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <TT_VALUE_#POS_TEST#>@TT_Package.GT_STATE_TEST</TT_VALUE_#POS_TEST#> <SET_STATE_#POS_ON#>0 (>O:_IsTest) (A:ENG ANTI ICE:#ID#, Bool) ! if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</SET_STATE_#POS_ON#> <SET_STATE_#POS_OFF#>0 (>O:_IsTest) (A:ENG ANTI ICE:#ID#, Bool) if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</SET_STATE_#POS_OFF#> <SET_STATE_#POS_TEST#>1 (>O:_IsTest) (A:ENG ANTI ICE:#ID#, Bool) ! if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</SET_STATE_#POS_TEST#> <GET_STATE_EXTERNAL>(A:ENG ANTI ICE:#ID#, Bool) sp0 (O:_IsTest) sp1</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0 if{ #POS_TEST# #POS_ON# l1 ? sp2 } els{ #POS_OFF# sp2 } l2</ENUM_VAL_TO_POS_EXTERNAL> <SIMVAR_TO_WATCH_0>ENG ANTI ICE:#ID#</SIMVAR_TO_WATCH_0> </Case> <Case Value="ON_AUTO_OFF"> <NUM_STATES>3</NUM_STATES> <STR_STATE_#POS_ON#>On</STR_STATE_#POS_ON#> <STR_STATE_#POS_AUTO#>Auto</STR_STATE_#POS_AUTO#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <TT_VALUE_#POS_ON#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ON#> <TT_VALUE_#POS_AUTO#>@TT_Package.GT_STATE_AUTO</TT_VALUE_#POS_AUTO#> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <SET_STATE_#POS_ON#>0 (>O:_IsAuto) (A:ENG ANTI ICE:#ID#, Bool) ! if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</SET_STATE_#POS_ON#> <SET_STATE_#POS_AUTO#>1 (>O:_IsAuto) (A:ENG ANTI ICE:#ID#, Bool) ! if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</SET_STATE_#POS_AUTO#> <SET_STATE_#POS_OFF#>0 (>O:_IsAuto) (A:ENG ANTI ICE:#ID#, Bool) if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</SET_STATE_#POS_OFF#> <GET_STATE_EXTERNAL>(A:ENG ANTI ICE:#ID#, Bool) sp0 (O:_IsAuto) sp1</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0 if{ #POS_AUTO# #POS_ON# l1 ? sp2 } els{ #POS_OFF# sp2 } l2</ENUM_VAL_TO_POS_EXTERNAL> <SIMVAR_TO_WATCH_0>ENG ANTI ICE:#ID#</SIMVAR_TO_WATCH_0> </Case> <Case Value="GRADUAL_SET"> <SET_STATE_EXTERNAL>(>K:ANTI_ICE_GRADUAL_SET_ENG#ID#)</SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(A:GENERAL ENG ANTI ICE POSITION:#ID#, position 16k)</GET_STATE_EXTERNAL> <GET_TT_VALUE_STATE>(A:GENERAL ENG ANTI ICE POSITION:#ID#, percent)</GET_TT_VALUE_STATE> <INC_PARAM_0>p0 #SCROLL_INCREMENT# *</INC_PARAM_0> <INC_PARAM_0_IS_DYNAMIC>True</INC_PARAM_0_IS_DYNAMIC> <DEC_PARAM_0>p0 #SCROLL_INCREMENT# *</DEC_PARAM_0> <DEC_PARAM_0_IS_DYNAMIC>True</DEC_PARAM_0_IS_DYNAMIC> <SET_PARAM_0>p0 16384 *</SET_PARAM_0> <SET_PARAM_0_IS_DYNAMIC>True</SET_PARAM_0_IS_DYNAMIC> <INC_CODE_ADJUST_VALUE>16384 /</INC_CODE_ADJUST_VALUE> <DEC_CODE_ADJUST_VALUE>16384 /</DEC_CODE_ADJUST_VALUE> <MIN_VALUE>0</MIN_VALUE> <MAX_VALUE>16384</MAX_VALUE> <VALUE_UNITS>position 16k</VALUE_UNITS> <SIMVAR_TO_WATCH_0>GENERAL ENG ANTI ICE POSITION:#ID#</SIMVAR_TO_WATCH_0> </Case> <Default> <Switch Param="TYPE"> <Case Value="INERT_SEP"> <SET_STATE_EXTERNAL>p0 (>O:XMLVAR_InertSep_Switch_Position)</SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(O:XMLVAR_InertSep_Switch_Position) sp0</GET_STATE_EXTERNAL> </Case> <Default> <SET_STATE_EXTERNAL>p0 (A:ENG ANTI ICE:#ID#, Bool) != if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</SET_STATE_EXTERNAL> <Condition Valid="EXCLUDE_STRUCTURAL_DEICE"> <True> <GET_STATE_EXTERNAL>(A:STRUCTURAL DEICE SWITCH, Bool) ! (A:ENG ANTI ICE:#ID#, Bool) and sp0</GET_STATE_EXTERNAL> </True> <False> <GET_STATE_EXTERNAL>(A:ENG ANTI ICE:#ID#, Bool) sp0</GET_STATE_EXTERNAL> </False> </Condition> <SIMVAR_TO_WATCH_0>ENG ANTI ICE:#ID#</SIMVAR_TO_WATCH_0> </Default> </Switch> </Default> </Switch> </Parameters> <UseTemplate Name="ASOBO_DEICE_Base_Template"> <IE_NAME>Engine_#ID#</IE_NAME> <Condition NotEmpty="INIT"> <COMP_INIT_CODE>#INIT#</COMP_INIT_CODE> </Condition> <Switch Param="TYPE"> <Case Value="INERT_SEP"> <COMP_UPDATE_CODE> (B:DEICE_Engine_#ID#, Bool) if{ (L:XMLVAR_InertSep#ID#_Deployment) 1 < (>L:XMLVAR_InertSep#ID#_Active) (L:XMLVAR_InertSep#ID#_Deployment) #DEPLOYMENT_PER_SECOND# + 1 min (>L:XMLVAR_InertSep#ID#_Deployment) } els{ (L:XMLVAR_InertSep#ID#_Deployment) 0 > (>L:XMLVAR_InertSep#ID#_Active) (L:XMLVAR_InertSep#ID#_Deployment) #DEPLOYMENT_PER_SECOND# - 0 max (>L:XMLVAR_InertSep#ID#_Deployment) } (L:XMLVAR_InertSep#ID#_Active) if{ (L:XMLVAR_InertSep#ID#_Deployment) 16384 * (>K:ANTI_ICE_GRADUAL_SET_ENG#ID#) } </COMP_UPDATE_CODE> </Case> </Switch> </UseTemplate> </Template>Parameters initialization:
-
Default
Parameters set:
- NODE_ID (using INTERACTION_TYPE, ID)
- ANIM_NAME (using INTERACTION_TYPE, ID)
- PART_ID
- OTHER_PART_ID (using ID)
- WWISE_PREFIX
Condition: Switch(TYPE)
-
Case: INERT_SEP
Parameters set:
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
-
Default case:
Parameters set:
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
- TT_DESCRIPTION_INDEX (using ID)
-
Default
Condition: Switch(INTERACTION_TYPE)
-
Case: Push
Parameters set:
- IS_AIRLINER
Condition: Switch(DECALS_TYPE)
-
Case: FAULT_ON
Parameters set:
- SEQ1_EMISSIVE_CODE
- SEQ2_EMISSIVE_CODE (using ID)
-
Default case:
Parameters set:
- SEQ1_EMISSIVE_CODE (using ID)
- SEQ2_EMISSIVE_CODE (using ID)
-
Case: Knob
Parameters set:
- KNOB_TYPE
- NUM_STATES
Condition: Switch(TYPE)
-
Case: AS04F
Parameters set:
- INTERACTION_AXIS
- DEICE_ENGINE_TYPE
-
Default case:
Parameters set:
- DEICE_ENGINE_TYPE
-
Case: Lever
Parameters set:
- AXIS
- DEICE_ENGINE_TYPE
- SCROLL_INCREMENT
-
-
Default
Condition: Switch(DEICE_ENGINE_TYPE)
-
Case: ON_OFF_TEST
Parameters set:
- POS_ON
- POS_OFF
- POS_TEST
-
Case: ON_AUTO_OFF
Parameters set:
- POS_ON
- POS_AUTO
- POS_OFF
-
-
Override
Condition: Switch(DEICE_ENGINE_TYPE)
-
Case: ON_OFF_TEST
Parameters set:
- NUM_STATES
- STR_STATE_#POS_ON#
- STR_STATE_#POS_OFF#
- STR_STATE_#POS_TEST#
- TT_VALUE_#POS_ON#
- TT_VALUE_#POS_OFF#
- TT_VALUE_#POS_TEST#
- SET_STATE_#POS_ON# (using ID)
- SET_STATE_#POS_OFF# (using ID)
- SET_STATE_#POS_TEST# (using ID)
- GET_STATE_EXTERNAL (using ID)
- ENUM_VAL_TO_POS_EXTERNAL (using POS_TEST, POS_ON, POS_OFF)
- SIMVAR_TO_WATCH_0 (using ID)
-
Case: ON_AUTO_OFF
Parameters set:
- NUM_STATES
- STR_STATE_#POS_ON#
- STR_STATE_#POS_AUTO#
- STR_STATE_#POS_OFF#
- TT_VALUE_#POS_ON#
- TT_VALUE_#POS_AUTO#
- TT_VALUE_#POS_OFF#
- SET_STATE_#POS_ON# (using ID)
- SET_STATE_#POS_AUTO# (using ID)
- SET_STATE_#POS_OFF# (using ID)
- GET_STATE_EXTERNAL (using ID)
- ENUM_VAL_TO_POS_EXTERNAL (using POS_AUTO, POS_ON, POS_OFF)
- SIMVAR_TO_WATCH_0 (using ID)
-
Case: GRADUAL_SET
Parameters set:
- SET_STATE_EXTERNAL (using ID)
- GET_STATE_EXTERNAL (using ID)
- GET_TT_VALUE_STATE (using ID)
- INC_PARAM_0 (using SCROLL_INCREMENT)
- INC_PARAM_0_IS_DYNAMIC
- DEC_PARAM_0 (using SCROLL_INCREMENT)
- DEC_PARAM_0_IS_DYNAMIC
- SET_PARAM_0
- SET_PARAM_0_IS_DYNAMIC
- INC_CODE_ADJUST_VALUE
- DEC_CODE_ADJUST_VALUE
- MIN_VALUE
- MAX_VALUE
- VALUE_UNITS
- SIMVAR_TO_WATCH_0 (using ID)
-
Default case:
Condition: Switch(TYPE)
-
Case: INERT_SEP
Parameters set:
- SET_STATE_EXTERNAL
- GET_STATE_EXTERNAL
-
Default case:
Parameters set:
- SET_STATE_EXTERNAL (using ID)
- SIMVAR_TO_WATCH_0 (using ID)
Condition: Valid(EXCLUDE_STRUCTURAL_DEICE)
-
Case: True
Parameters set:
- GET_STATE_EXTERNAL (using ID)
-
Case: False
Parameters set:
- GET_STATE_EXTERNAL (using ID)
-
-
Templates used:
-
ASOBO_DEICE_Base_Template
Parameters set:
- IE_NAME (using ID)
Condition: NotEmpty(INIT)
-
Case: True
Parameters set:
- COMP_INIT_CODE (using INIT)
Condition: Switch(TYPE)
-
Case: INERT_SEP
Parameters set:
- COMP_UPDATE_CODE (using ID, DEPLOYMENT_PER_SECOND)
-
Default
-
ASOBO_DEICE_Switch_Light_SubTemplate
Definition from XML<Template Name="ASOBO_DEICE_Switch_Light_SubTemplate"> <DefaultTemplateParameters> <NODE_ID>DEICE_Switch_Light_#TARGET_ID#_#ID#</NODE_ID> </DefaultTemplateParameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE> (L:XMLVAR_LTS_Test) #EMISSIVE_CODE# or </EMISSIVE_CODE> </UseTemplate> </Component> </Template>Parameters initialization:
-
Default
Parameters set:
- NODE_ID (using TARGET_ID, ID)
Parameters read:
- NODE_ID
Components:
-
#NODE_ID# (Node: #NODE_ID#)
Templates used:
-
ASOBO_GT_Emissive_Gauge
Parameters set:
- EMISSIVE_CODE (using EMISSIVE_CODE)
-
ASOBO_GT_Emissive_Gauge
-
Default
-
ASOBO_DEICE_Airframe_SubTemplate
Definition from XML<Template Name="ASOBO_DEICE_Airframe_SubTemplate"> <Parameters Type="Default"> <ANIM_NAME>DEICE_#INTERACTION_TYPE#_Airframe</ANIM_NAME> <NODE_ID>DEICE_#INTERACTION_TYPE#_Airframe</NODE_ID> <OTHER_PART_ID>DEICE_Switch_Airframe</OTHER_PART_ID> <Switch Param="SWITCH_TYPE"> <Case Value="ON_OFF"> <NUM_STATES>2</NUM_STATES> </Case> <Case Value="ON_NORM_OFF"> <NUM_STATES>3</NUM_STATES> <POS_ON>0</POS_ON> <POS_NORM>1</POS_NORM> <POS_OFF>2</POS_OFF> </Case> <Case Value="OFF_AUTO_ON"> <NUM_STATES>3</NUM_STATES> <POS_OFF>0</POS_OFF> <POS_AUTO>1</POS_AUTO> <POS_ON>2</POS_ON> <TT_POS_0>@TT_Off</TT_POS_0> <TT_POS_1>@TT_Auto</TT_POS_1> <TT_POS_2>@TT_On</TT_POS_2> </Case> <Case Value="SINGLE_OFF_MANUAL"> <NUM_STATES>3</NUM_STATES> <POS_ON>0</POS_ON> <POS_NORM>1</POS_NORM> <POS_OFF>2</POS_OFF> <TT_POS_0>(R:1:@TT_Package.GT_STATE_SINGLE)</TT_POS_0> <TT_POS_1>(R:1:@TT_Package.GT_STATE_OFF)</TT_POS_1> <TT_POS_2>(R:1:@TT_Package.GT_STATE_MANUAL)</TT_POS_2> </Case> </Switch> <Switch param="INTERACTION_TYPE"> <Case Value="PUSH"> <Switch param="DECALS_TYPE"> <Case Value="FaultOn"> <SEQ1_EMISSIVE_CODE>0</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(A:STRUCTURAL DEICE SWITCH, Bool)</SEQ2_EMISSIVE_CODE> </Case> <Default> <SEQ1_EMISSIVE_CODE>(L:DEICE_Airframe_#ID#)</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(L:DEICE_Airframe_#ID#) !</SEQ2_EMISSIVE_CODE> </Default> </Switch> </Case> <Case Value="SWITCH"> <SWITCH_POSITION_TYPE>L</SWITCH_POSITION_TYPE> <SWITCH_POSITION_VAR>DEICE_Airframe_#ID#</SWITCH_POSITION_VAR> </Case> </Switch> <WWISE_EVENT>deice_airframe_switch</WWISE_EVENT> <WWISE_EVENT_1>deice_airframe_switch_on</WWISE_EVENT_1> <WWISE_EVENT_2>deice_airframe_switch_off</WWISE_EVENT_2> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <NORMALIZED_TIME_2>0.5</NORMALIZED_TIME_2> <Condition Valid="SYNC_WITH_WINDSHIELD_STATE"> <SYNC_WINDSHIELD_STATE> (A:STRUCTURAL DEICE SWITCH, Bool) (A:WINDSHIELD DEICE SWITCH, Bool) != if{ (>K:WINDSHIELD_DEICE_TOGGLE) } </SYNC_WINDSHIELD_STATE> </Condition> <ON_STATE_CHANGED_EXTERNAL_CODE/> <TOOLTIP_AIRFRAME_DEICE_TITLE>@TT_Package.DEICE_SWITCH_AIRFRAME_TITLE</TOOLTIP_AIRFRAME_DEICE_TITLE> </Parameters> <Parameters Type="Override"> <TOOLTIP_TITLE>#TOOLTIP_AIRFRAME_DEICE_TITLE#</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>DEICE_Airframe_#ID#</TOOLTIP_ENTRY_0> <AIRFRAME_ID>#ID#</AIRFRAME_ID> <Condition Valid="SYNC_WITH_WINDSHIELD_STATE"> <True> <ON_STATE_CHANGED_EXTERNAL_CODE>#SYNC_WINDSHIELD_STATE#</ON_STATE_CHANGED_EXTERNAL_CODE> </True> </Condition> <Switch Param="NUM_STATES"> <Case Value="2"> <SWITCH_TEMPLATE>ASOBO_GT_Switch_Code</SWITCH_TEMPLATE> </Case> <Case Value="3"> <SWITCH_TEMPLATE>ASOBO_GT_Switch_3States</SWITCH_TEMPLATE> </Case> </Switch> <Switch Param="SWITCH_TYPE"> <Case Value="ON_OFF"> <ANIM_CODE> (A:STRUCTURAL DEICE SWITCH, Bool) 100 * </ANIM_CODE> <LEFT_SINGLE_CODE> (>B:DEICE_Airframe_#ID#_Toggle) (A:STRUCTURAL DEICE SWITCH, Bool) (>L:XMLVAR_IsDeiceAirFrame) </LEFT_SINGLE_CODE> </Case> <Case Value="ON_NORM_OFF"> <CODE_POS_#POS_ON#> (A:STRUCTURAL DEICE SWITCH, Bool) ! if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 1 (>L:XMLVAR_IsDeiceAirFrame) 0 (>O:XMLVAR_Norm) </CODE_POS_#POS_ON#> <CODE_POS_#POS_NORM#> 1 (>O:XMLVAR_Norm) (A:STRUCTURAL DEICE SWITCH, Bool) ! if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 0 (>L:XMLVAR_IsDeiceAirFrame) </CODE_POS_#POS_NORM#> <CODE_POS_#POS_OFF#> (A:STRUCTURAL DEICE SWITCH, Bool) if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 0 (>L:XMLVAR_IsDeiceAirFrame) 0 (>O:XMLVAR_Norm) </CODE_POS_#POS_OFF#> <STATE#POS_ON#_TEST> (A:STRUCTURAL DEICE SWITCH, Bool) (O:XMLVAR_Norm) ! and </STATE#POS_ON#_TEST> <STATE#POS_NORM#_TEST> (A:STRUCTURAL DEICE SWITCH, Bool) (O:XMLVAR_Norm) and </STATE#POS_NORM#_TEST> <STATE#POS_OFF#_TEST> (A:STRUCTURAL DEICE SWITCH, Bool) ! </STATE#POS_OFF#_TEST> </Case> <Case Value="OFF_AUTO_ON"> <CODE_POS_#POS_OFF#> (A:STRUCTURAL DEICE SWITCH, Enum) 0 != if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 0 (>L:XMLVAR_DeiceAirFrame_Auto) </CODE_POS_#POS_OFF#> <CODE_POS_#POS_AUTO#> (A:STRUCTURAL DEICE SWITCH, Enum) 0 == if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 1 (>L:XMLVAR_DeiceAirFrame_Auto) </CODE_POS_#POS_AUTO#> <CODE_POS_#POS_ON#> (A:STRUCTURAL DEICE SWITCH, Enum) 0 == if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 0 (>L:XMLVAR_DeiceAirFrame_Auto) </CODE_POS_#POS_ON#> <STATE#POS_OFF#_TEST> (A:STRUCTURAL DEICE SWITCH, Enum) 0 == </STATE#POS_OFF#_TEST> <STATE#POS_AUTO#_TEST> (A:STRUCTURAL DEICE SWITCH, Enum) 2 == (L:XMLVAR_DeiceAirFrame_Auto) or </STATE#POS_AUTO#_TEST> <STATE#POS_ON#_TEST> (A:STRUCTURAL DEICE SWITCH, Enum) 1 == (L:XMLVAR_DeiceAirFrame_Auto) ! and </STATE#POS_ON#_TEST> </Case> <Case Value="SINGLE_OFF_MANUAL"> <MOMENTARY_SWITCH/> <SWITCH_POSITION_TYPE_ISDOWN>L</SWITCH_POSITION_TYPE_ISDOWN> <SWITCH_POSITION_VAR_ISDOWN>XMLVAR_DEICE_Aircraft_IsHeld</SWITCH_POSITION_VAR_ISDOWN> <STATE_MAX_TIMER>0.1</STATE_MAX_TIMER> <STATE0_TIMER>0.1</STATE0_TIMER> <CODE_POS_RETURN> 0 (>O:XMLVAR_MANUAL) (A:STRUCTURAL DEICE SWITCH, Bool) if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 0 (>L:XMLVAR_IsDeiceAirFrame) </CODE_POS_RETURN> <CODE_POS_0> (A:STRUCTURAL DEICE SWITCH, Bool) ! if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 1 (>L:XMLVAR_IsDeiceAirFrame) 0 (>O:XMLVAR_MANUAL) </CODE_POS_0> <CODE_POS_1> 0 (>O:XMLVAR_MANUAL) (A:STRUCTURAL DEICE SWITCH, Bool) if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 0 (>L:XMLVAR_IsDeiceAirFrame) </CODE_POS_1> <CODE_POS_2> (A:STRUCTURAL DEICE SWITCH, Bool) ! if{ (>K:TOGGLE_STRUCTURAL_DEICE) } 0 (>L:XMLVAR_IsDeiceAirFrame) 1 (>L:XMLVAR_IsDeiceAirFrame) 1 (>O:XMLVAR_MANUAL) </CODE_POS_2> <STATE0_TEST> (A:STRUCTURAL DEICE SWITCH, Bool) (O:XMLVAR_MANUAL) ! and </STATE0_TEST> <STATE1_TEST> (A:STRUCTURAL DEICE SWITCH, Bool) ! (O:XMLVAR_MANUAL) ! and </STATE1_TEST> <STATE2_TEST> (A:STRUCTURAL DEICE SWITCH, Bool) (O:XMLVAR_MANUAL) and </STATE2_TEST> </Case> </Switch> <Condition Valid="SYNC_WITH_ENGINE_STATE"> <ON_AFTER_SET>p0 (A:ENG ANTI ICE:#ID#, Bool) != if{ (>K:ANTI_ICE_TOGGLE_ENG#ID#) }</ON_AFTER_SET> </Condition> </Parameters> <Condition Valid="SYNC_WITH_WINDSHIELD_STATE"> <True> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_CODE>#SYNC_WINDSHIELD_STATE#</UPDATE_CODE> </UseTemplate> </True> </Condition> <Switch param="INTERACTION_TYPE"> <Case Value="PUSH"> <Component ID="#NODE_ID#_Container"> <UseInputEvent ID="DEICE"/> <UseTemplate Name="ASOBO_GT_Push_Button_Airliner"> <LEFT_SINGLE_CODE>(>B:DEICE_Airframe_#ID#_Toggle)</LEFT_SINGLE_CODE> </UseTemplate> </Component> </Case> <Case Value="SWITCH"> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="DEICE"/> <Condition NotEmpty="INIT"> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>#INIT#</UPDATE_CODE> </UseTemplate> </Condition> <UseTemplate Name="#SWITCH_TEMPLATE#"/> </Component> </Case> </Switch> </Template>Parameters initialization:
-
Default
Parameters set:
- ANIM_NAME (using INTERACTION_TYPE)
- NODE_ID (using INTERACTION_TYPE)
- OTHER_PART_ID
- WWISE_EVENT
- WWISE_EVENT_1
- WWISE_EVENT_2
- NORMALIZED_TIME_1
- NORMALIZED_TIME_2
- ON_STATE_CHANGED_EXTERNAL_CODE
- TOOLTIP_AIRFRAME_DEICE_TITLE
Condition: Switch(SWITCH_TYPE)
-
Case: ON_OFF
Parameters set:
- NUM_STATES
-
Case: ON_NORM_OFF
Parameters set:
- NUM_STATES
- POS_ON
- POS_NORM
- POS_OFF
-
Case: OFF_AUTO_ON
Parameters set:
- NUM_STATES
- POS_OFF
- POS_AUTO
- POS_ON
- TT_POS_0
- TT_POS_1
- TT_POS_2
-
Case: SINGLE_OFF_MANUAL
Parameters set:
- NUM_STATES
- POS_ON
- POS_NORM
- POS_OFF
- TT_POS_0
- TT_POS_1
- TT_POS_2
Condition: Switch(INTERACTION_TYPE)
-
Case: PUSH
Condition: Switch(DECALS_TYPE)
-
Case: FaultOn
Parameters set:
- SEQ1_EMISSIVE_CODE
- SEQ2_EMISSIVE_CODE
-
Default case:
Parameters set:
- SEQ1_EMISSIVE_CODE (using ID)
- SEQ2_EMISSIVE_CODE (using ID)
-
-
Case: SWITCH
Parameters set:
- SWITCH_POSITION_TYPE
- SWITCH_POSITION_VAR (using ID)
Condition: Valid(SYNC_WITH_WINDSHIELD_STATE)
-
Case: True
Parameters set:
- SYNC_WINDSHIELD_STATE
-
Override
Parameters set:
- TOOLTIP_TITLE (using TOOLTIP_AIRFRAME_DEICE_TITLE)
- TOOLTIP_ENTRY_0 (using ID)
- AIRFRAME_ID (using ID)
Condition: Valid(SYNC_WITH_WINDSHIELD_STATE)
-
Case: True
Parameters set:
- ON_STATE_CHANGED_EXTERNAL_CODE (using SYNC_WINDSHIELD_STATE)
Condition: Switch(NUM_STATES)
-
Case: 2
Parameters set:
- SWITCH_TEMPLATE
-
Case: 3
Parameters set:
- SWITCH_TEMPLATE
Condition: Switch(SWITCH_TYPE)
-
Case: ON_OFF
Parameters set:
- ANIM_CODE
- LEFT_SINGLE_CODE (using ID)
-
Case: ON_NORM_OFF
Parameters set:
- CODE_POS_#POS_ON#
- CODE_POS_#POS_NORM#
- CODE_POS_#POS_OFF#
- STATE#POS_ON#_TEST
- STATE#POS_NORM#_TEST
- STATE#POS_OFF#_TEST
-
Case: OFF_AUTO_ON
Parameters set:
- CODE_POS_#POS_OFF#
- CODE_POS_#POS_AUTO#
- CODE_POS_#POS_ON#
- STATE#POS_OFF#_TEST
- STATE#POS_AUTO#_TEST
- STATE#POS_ON#_TEST
-
Case: SINGLE_OFF_MANUAL
Parameters set:
- MOMENTARY_SWITCH
- SWITCH_POSITION_TYPE_ISDOWN
- SWITCH_POSITION_VAR_ISDOWN
- STATE_MAX_TIMER
- STATE0_TIMER
- CODE_POS_RETURN
- CODE_POS_0
- CODE_POS_1
- CODE_POS_2
- STATE0_TEST
- STATE1_TEST
- STATE2_TEST
Condition: Valid(SYNC_WITH_ENGINE_STATE)
-
Case: True
Parameters set:
- ON_AFTER_SET (using ID)
Condition: Valid(SYNC_WITH_WINDSHIELD_STATE)
-
Case: True
Templates used:
-
ASOBO_GT_Update
Parameters set:
- UPDATE_CODE (using SYNC_WINDSHIELD_STATE)
-
ASOBO_GT_Update
Condition: Switch(INTERACTION_TYPE)
-
Case: PUSH
Parameters read:
- NODE_ID
Components:
-
#NODE_ID#_Container
Templates used:
-
ASOBO_GT_Push_Button_Airliner
Parameters set:
- LEFT_SINGLE_CODE (using ID)
-
ASOBO_GT_Push_Button_Airliner
-
Case: SWITCH
Parameters read:
- NODE_ID
Components:
-
#NODE_ID# (Node: #NODE_ID#)
Parameters read:
- SWITCH_TEMPLATE
Templates used:
-
#SWITCH_TEMPLATE#
- May resolve to the following template(s):
Condition: NotEmpty(INIT)
-
Case: True
Templates used:
-
ASOBO_GT_Update
Parameters set:
- UPDATE_ONCE
- UPDATE_CODE (using INIT)
-
ASOBO_GT_Update
-
Default
-
ASOBO_DEICE_Propeller_Template
Definition from XML<Template Name="ASOBO_DEICE_Propeller_Template"> <Parameters Type="Default"> <NODE_ID>DEICE_#INTERACTION_TYPE#_Propeller_#ID#</NODE_ID> <ANIM_NAME>DEICE_#INTERACTION_TYPE#_Propeller_#ID#</ANIM_NAME> <PART_ID>DEICE_Switch_Propeller</PART_ID> <WWISE_EVENT_1>deice_propeller_switch_on</WWISE_EVENT_1> <WWISE_EVENT_2>deice_propeller_switch_off</WWISE_EVENT_2> <ON_TOOLTIP>COCKPIT.TOOLTIPS.PANEL_DEICE_PROP_DEICE_ON</ON_TOOLTIP> <OFF_TOOLTIP>COCKPIT.TOOLTIPS.PANEL_DEICE_PROP_DEICE_OFF</OFF_TOOLTIP> <PROPELLER_ID>#ID#</PROPELLER_ID> <TOOLTIP_PROPELLER_DEICE_TITLE>@TT_Package.DEICE_SWITCH_PROPELLER_TITLE</TOOLTIP_PROPELLER_DEICE_TITLE> </Parameters> <Parameters Type="Override"> <TOOLTIP_TITLE>#TOOLTIP_PROPELLER_DEICE_TITLE#</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>DEICE_Propeller_#ID#</TOOLTIP_ENTRY_0> <ANIM_CODE>(B:DEICE_Propeller_#ID#) 100 *</ANIM_CODE> <LEFT_SINGLE_CODE>(>B:DEICE_Propeller_#ID#_Toggle)</LEFT_SINGLE_CODE> <SEQ1_EMISSIVE_CODE>0</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(B:DEICE_Propeller_#ID#)</SEQ2_EMISSIVE_CODE> </Parameters> <Component ID="#NODE_ID#_Container" Node="#NODE_ID#"> <UseInputEvent ID="DEICE"/> <Switch Param="INTERACTION_TYPE"> <Case Value="PUSH"> <UseTemplate Name="ASOBO_GT_Push_Button_Airliner"/> </Case> <Case Value="SWITCH"> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseTemplate Name="ASOBO_GT_Switch_Code"/> </Component> </Case> </Switch> </Component> </Template>Parameters initialization:
-
Default
Parameters set:
- NODE_ID (using INTERACTION_TYPE, ID)
- ANIM_NAME (using INTERACTION_TYPE, ID)
- PART_ID
- WWISE_EVENT_1
- WWISE_EVENT_2
- ON_TOOLTIP
- OFF_TOOLTIP
- PROPELLER_ID (using ID)
- TOOLTIP_PROPELLER_DEICE_TITLE
-
Override
Parameters set:
- TOOLTIP_TITLE (using TOOLTIP_PROPELLER_DEICE_TITLE)
- TOOLTIP_ENTRY_0 (using ID)
- ANIM_CODE (using ID)
- LEFT_SINGLE_CODE (using ID)
- SEQ1_EMISSIVE_CODE
- SEQ2_EMISSIVE_CODE (using ID)
Parameters read:
- NODE_ID
Components:
-
#NODE_ID#_Container (Node: #NODE_ID#)
Condition: Switch(INTERACTION_TYPE)
-
Case: PUSH
Templates used:
-
Case: SWITCH
Parameters read:
- NODE_ID
Components:
-
#NODE_ID# (Node: #NODE_ID#)
Templates used:
-
-
Default
-
ASOBO_DEICE_Windshield_SubTemplate
Definition from XML<Template Name="ASOBO_DEICE_Windshield_SubTemplate"> <Parameters Type="Default"> <WINDSHIELD_ID>#ID#</WINDSHIELD_ID> <NODE_ID>DEICE_#INTERACTION_TYPE#_Windshield_#ID#</NODE_ID> <ANIM_NAME>DEICE_#INTERACTION_TYPE#_Windshield_#ID#</ANIM_NAME> <TT_DESCRIPTION_ID>@TT_Package.DEICE_SWITCH_WINDSHIELD_ACTION_SET</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_WINDSHIELD_TITLE</TOOLTIP_TITLE> <WWISE_PREFIX>deice_windshield</WWISE_PREFIX> <Switch Param="INTERACTION_TYPE"> <Case Value="Push"> <VAR_NAME>XMLVAR_DeiceWindshield_#ID#</VAR_NAME> <VAR_SCOPE>L</VAR_SCOPE> <IS_AIRLINER>True</IS_AIRLINER> </Case> <Case Value="Switch"> <SWITCH_POSITION_TYPE>L</SWITCH_POSITION_TYPE> <SWITCH_POSITION_VAR>XMLVAR_DeiceWindshield_#ID#</SWITCH_POSITION_VAR> </Case> </Switch> <Switch Param="TYPE"> <Case Value="NORM_OFF_HIGH"> <POS_NORM>0</POS_NORM> <POS_OFF>1</POS_OFF> <POS_HIGH>2</POS_HIGH> </Case> <Case Value="AIRFRAME_REST_WINDSHIELD"> <POS_AIRFRAME>0</POS_AIRFRAME> <POS_REST>1</POS_REST> <POS_WINDSHIELD>2</POS_WINDSHIELD> </Case> <Case Value="AS04F"> <POS_ICE>0</POS_ICE> <POS_OFF>1</POS_OFF> <POS_RAIN>2</POS_RAIN> </Case> <Case Value="AIRBUS"> <SEQ1_EMISSIVE_CODE>0</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(B:DEICE_Windshield_#ID#, Bool) !</SEQ2_EMISSIVE_CODE> <SEQ2_CODE_DRIVES_DOWN_STATE>True</SEQ2_CODE_DRIVES_DOWN_STATE> </Case> <Case Value="BOEING"> <SEQ1_EMISSIVE_CODE>(B:DEICE_Windshield_#ID#, Bool)</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>0</SEQ2_EMISSIVE_CODE> </Case> </Switch> </Parameters> <Parameters Type="Override"> <Switch Param="TYPE"> <Case Value="AIRBUS"> <SIMVAR_TO_WATCH_0>WINDSHIELD DEICE SWITCH</SIMVAR_TO_WATCH_0> <SIMVAR_TO_WATCH_1>PITOT HEAT SWITCH</SIMVAR_TO_WATCH_1> <STR_STATE_OFF>On</STR_STATE_OFF> <STR_STATE_ON>Auto</STR_STATE_ON> <TT_VALUE_OFF>@TT_On</TT_VALUE_OFF> <TT_VALUE_ON>@TT_Auto</TT_VALUE_ON> <SET_STATE_EXTERNAL>2 1 p0 ? s0 (A:WINDSHIELD DEICE SWITCH, Enum) != if{ l0 (>K:WINDSHIELD_DEICE_SET) l0 (>K:PITOT_HEAT_SET) }</SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(A:WINDSHIELD DEICE SWITCH, Enum) s0 0 == if{ 2 s0 (>K:WINDSHIELD_DEICE_SET) } l0 (A:PITOT HEAT SWITCH, Enum) != if{ l0 (>K:PITOT_HEAT_SET) } l0 2 == sp0</GET_STATE_EXTERNAL> </Case> <Case Value="AIRFRAME_REST_WINDSHIELD"> <NUM_STATES>3</NUM_STATES> <SET_STATE_#POS_AIRFRAME#> #POS_AIRFRAME# (>O:DEICE_Windshield_State) </SET_STATE_#POS_AIRFRAME#> <SET_STATE_#POS_REST#> (O:DEICE_Windshield_State) #POS_WINDSHIELD# == if{ (E:SIMULATION TIME, seconds) 4 + (>O:DEICE_Windshield_Disable_Time) } #POS_REST# (>O:DEICE_Windshield_State) </SET_STATE_#POS_REST#> <SET_STATE_#POS_WINDSHIELD#> 1 (>K:WINDSHIELD_DEICE_SET) #POS_WINDSHIELD# (>O:DEICE_Windshield_State) </SET_STATE_#POS_WINDSHIELD#> <STR_STATE_#POS_AIRFRAME#>Airframe</STR_STATE_#POS_AIRFRAME#> <STR_STATE_#POS_REST#>Rest</STR_STATE_#POS_REST#> <STR_STATE_#POS_WINDSHIELD#>Windshield</STR_STATE_#POS_WINDSHIELD#> <TT_VALUE_#POS_AIRFRAME#>@TT_Package.GT_STATE_AIRFRAME</TT_VALUE_#POS_AIRFRAME#> <TT_VALUE_#POS_REST#>@TT_Package.GT_STATE_MODENORM</TT_VALUE_#POS_REST#> <TT_VALUE_#POS_WINDSHIELD#>@TT_Package.GT_STATE_WINDSHIELD</TT_VALUE_#POS_WINDSHIELD#> <GET_STATE_EXTERNAL>(O:DEICE_Windshield_State) sp0</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0</ENUM_VAL_TO_POS_EXTERNAL> <MOMENTARY_SWITCH>True</MOMENTARY_SWITCH> <STATE0_TIMER>120</STATE0_TIMER> <STATE_MAX_TIMER>1</STATE_MAX_TIMER> <TT_DESCRIPTION_ID>@TT_Package.SWITCH_DEICE_MODE_ACTION</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.SWITCH_DEICE_MODE_TITLE</TOOLTIP_TITLE> </Case> <Case Value="NORM_OFF_HIGH"> <NUM_STATES>3</NUM_STATES> <SET_STATE_#POS_NORM#>#POS_NORM# (>O:DEICE_Windshield_#ID#_State)</SET_STATE_#POS_NORM#> <SET_STATE_#POS_OFF#>#POS_OFF# (>O:DEICE_Windshield_#ID#_State)</SET_STATE_#POS_OFF#> <SET_STATE_#POS_HIGH#>#POS_HIGH# (>O:DEICE_Windshield_#ID#_State)</SET_STATE_#POS_HIGH#> <STR_STATE_#POS_NORM#>Norm</STR_STATE_#POS_NORM#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <STR_STATE_#POS_HIGH#>High</STR_STATE_#POS_HIGH#> <TT_VALUE_#POS_NORM#>@TT_Package.GT_STATE_NORMAL</TT_VALUE_#POS_NORM#> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <TT_VALUE_#POS_HIGH#>@TT_Package.GT_STATE_HIGH</TT_VALUE_#POS_HIGH#> <GET_STATE_EXTERNAL>(O:DEICE_Windshield_#ID#_State) sp0</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0</ENUM_VAL_TO_POS_EXTERNAL> </Case> <Case Value="AS04F"> <SIMVAR_TO_WATCH_0>WINDSHIELD DEICE SWITCH</SIMVAR_TO_WATCH_0> <NUM_STATES>3</NUM_STATES> <SET_STATE_#POS_ICE#>(A:WINDSHIELD DEICE SWITCH, Bool) ! if{ (>K:WINDSHIELD_DEICE_TOGGLE) }</SET_STATE_#POS_ICE#> <SET_STATE_#POS_OFF#>(A:WINDSHIELD DEICE SWITCH, Bool) if{ (>K:WINDSHIELD_DEICE_TOGGLE) }</SET_STATE_#POS_OFF#> <SET_STATE_#POS_RAIN#>(A:WINDSHIELD DEICE SWITCH, Bool) if{ (>K:WINDSHIELD_DEICE_TOGGLE) }</SET_STATE_#POS_RAIN#> <STR_STATE_#POS_ICE#>Ice</STR_STATE_#POS_ICE#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <STR_STATE_#POS_RAIN#>Rain</STR_STATE_#POS_RAIN#> <TT_VALUE_#POS_ICE#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ICE#> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <TT_VALUE_#POS_RAIN#>@TT_Package.GT_STATE_RAIN</TT_VALUE_#POS_RAIN#> <GET_STATE_EXTERNAL>(A:WINDSHIELD DEICE SWITCH, Bool) sp0 (O:DEICE_Windshield_#ID#_Position) sp1</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0 ! if{ #POS_RAIN# #POS_OFF# l1 #POS_RAIN# == ? sp2 } els{ #POS_ICE# sp2 } l2</ENUM_VAL_TO_POS_EXTERNAL> </Case> <Default> <SIMVAR_TO_WATCH_0>WINDSHIELD DEICE SWITCH</SIMVAR_TO_WATCH_0> <SET_STATE_EXTERNAL>(A:WINDSHIELD DEICE SWITCH, Bool) p0 != if{ (>K:WINDSHIELD_DEICE_TOGGLE) }</SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(A:WINDSHIELD DEICE SWITCH, Bool) sp0</GET_STATE_EXTERNAL> </Default> </Switch> </Parameters> <UseTemplate Name="ASOBO_DEICE_Base_Template"> <IE_NAME>Windshield_#ID#</IE_NAME> <Switch Param="TYPE"> <Case Value="AIRBUS"> <COMP_UPDATE_CODE> (A:WINDSHIELD DEICE SWITCH, Enum) 0 == if{ (>B:DEICE_Windshield_#WINDSHIELD_ID#_toggle) } (A:PITOT HEAT SWITCH, Enum) 0 == if{ (>K:PITOT_HEAT_TOGGLE) } </COMP_UPDATE_CODE> </Case> <Case Value="NORM_OFF_HIGH"> <COMP_INIT_CODE>(A:WINDSHIELD DEICE SWITCH, Bool) if{ (>B:DEICE_Windshield_#ID#_Norm) }</COMP_INIT_CODE> <Condition Check="ID" Match="1"> <COMP_UPDATE_CODE>(B:DEICE_Windshield_1, Enum) #POS_OFF# != (B:DEICE_Windshield_2, Enum) #POS_OFF# != or (A:WINDSHIELD DEICE SWITCH, Bool) != if{ (>K:WINDSHIELD_DEICE_TOGGLE) }</COMP_UPDATE_CODE> </Condition> </Case> <Case Value="AIRFRAME_REST_WINDSHIELD"> <COMP_INIT_CODE>1 (>B:DEICE_Windshield_#ID#_Set)</COMP_INIT_CODE> <COMP_UPDATE_CODE> (B:DEICE_Windshield_1, Enum) #POS_WINDSHIELD# != (O:DEICE_Windshield_Disable_Time) 0 != if{ (O:DEICE_Windshield_Disable_Time) (E:SIMULATION TIME, seconds) < if{ 0 (>K:WINDSHIELD_DEICE_SET) 0 (>O:DEICE_Windshield_Disable_Time) } } </COMP_UPDATE_CODE> </Case> </Switch> </UseTemplate> </Template>Parameters initialization:
-
Default
Parameters set:
- WINDSHIELD_ID (using ID)
- NODE_ID (using INTERACTION_TYPE, ID)
- ANIM_NAME (using INTERACTION_TYPE, ID)
- TT_DESCRIPTION_ID
- TOOLTIP_TITLE
- WWISE_PREFIX
Condition: Switch(INTERACTION_TYPE)
-
Case: Push
Parameters set:
- VAR_NAME (using ID)
- VAR_SCOPE
- IS_AIRLINER
-
Case: Switch
Parameters set:
- SWITCH_POSITION_TYPE
- SWITCH_POSITION_VAR (using ID)
Condition: Switch(TYPE)
-
Case: NORM_OFF_HIGH
Parameters set:
- POS_NORM
- POS_OFF
- POS_HIGH
-
Case: AIRFRAME_REST_WINDSHIELD
Parameters set:
- POS_AIRFRAME
- POS_REST
- POS_WINDSHIELD
-
Case: AS04F
Parameters set:
- POS_ICE
- POS_OFF
- POS_RAIN
-
Case: AIRBUS
Parameters set:
- SEQ1_EMISSIVE_CODE
- SEQ2_EMISSIVE_CODE (using ID)
- SEQ2_CODE_DRIVES_DOWN_STATE
-
Case: BOEING
Parameters set:
- SEQ1_EMISSIVE_CODE (using ID)
- SEQ2_EMISSIVE_CODE
-
Override
Condition: Switch(TYPE)
-
Case: AIRBUS
Parameters set:
- SIMVAR_TO_WATCH_0
- SIMVAR_TO_WATCH_1
- STR_STATE_OFF
- STR_STATE_ON
- TT_VALUE_OFF
- TT_VALUE_ON
- SET_STATE_EXTERNAL
- GET_STATE_EXTERNAL
-
Case: AIRFRAME_REST_WINDSHIELD
Parameters set:
- NUM_STATES
- SET_STATE_#POS_AIRFRAME# (using POS_AIRFRAME)
- SET_STATE_#POS_REST# (using POS_WINDSHIELD, POS_REST)
- SET_STATE_#POS_WINDSHIELD# (using POS_WINDSHIELD)
- STR_STATE_#POS_AIRFRAME#
- STR_STATE_#POS_REST#
- STR_STATE_#POS_WINDSHIELD#
- TT_VALUE_#POS_AIRFRAME#
- TT_VALUE_#POS_REST#
- TT_VALUE_#POS_WINDSHIELD#
- GET_STATE_EXTERNAL
- ENUM_VAL_TO_POS_EXTERNAL
- MOMENTARY_SWITCH
- STATE0_TIMER
- STATE_MAX_TIMER
- TT_DESCRIPTION_ID
- TOOLTIP_TITLE
-
Case: NORM_OFF_HIGH
Parameters set:
- NUM_STATES
- SET_STATE_#POS_NORM# (using POS_NORM, ID)
- SET_STATE_#POS_OFF# (using POS_OFF, ID)
- SET_STATE_#POS_HIGH# (using POS_HIGH, ID)
- STR_STATE_#POS_NORM#
- STR_STATE_#POS_OFF#
- STR_STATE_#POS_HIGH#
- TT_VALUE_#POS_NORM#
- TT_VALUE_#POS_OFF#
- TT_VALUE_#POS_HIGH#
- GET_STATE_EXTERNAL (using ID)
- ENUM_VAL_TO_POS_EXTERNAL
-
Case: AS04F
Parameters set:
- SIMVAR_TO_WATCH_0
- NUM_STATES
- SET_STATE_#POS_ICE#
- SET_STATE_#POS_OFF#
- SET_STATE_#POS_RAIN#
- STR_STATE_#POS_ICE#
- STR_STATE_#POS_OFF#
- STR_STATE_#POS_RAIN#
- TT_VALUE_#POS_ICE#
- TT_VALUE_#POS_OFF#
- TT_VALUE_#POS_RAIN#
- GET_STATE_EXTERNAL (using ID)
- ENUM_VAL_TO_POS_EXTERNAL (using POS_RAIN, POS_OFF, POS_ICE)
-
Default case:
Parameters set:
- SIMVAR_TO_WATCH_0
- SET_STATE_EXTERNAL
- GET_STATE_EXTERNAL
-
Templates used:
-
ASOBO_DEICE_Base_Template
Parameters set:
- IE_NAME (using ID)
Condition: Switch(TYPE)
-
Case: AIRBUS
Parameters set:
- COMP_UPDATE_CODE (using WINDSHIELD_ID)
-
Case: NORM_OFF_HIGH
Parameters set:
- COMP_INIT_CODE (using ID)
Condition: Check(ID)
-
Case: True
Parameters set:
- COMP_UPDATE_CODE (using POS_OFF)
-
Case: AIRFRAME_REST_WINDSHIELD
Parameters set:
- COMP_INIT_CODE (using ID)
- COMP_UPDATE_CODE (using POS_WINDSHIELD)
-
Default
-
ASOBO_DEICE_Pitot_Template
Definition from XML<Template Name="ASOBO_DEICE_Pitot_Template"> <Parameters Type="Default"> <PART_ID>DEICE_Switch_PitotHeat</PART_ID> </Parameters> <Parameters Type="Default"> <Condition Check="NUM_PITOTS" Value="2"> <True> <NODE_ID_LEFT_PITOT>DEICE_#INTERACTION_TYPE#_Pitot_1</NODE_ID_LEFT_PITOT> <NODE_ID_RIGHT_PITOT>DEICE_#INTERACTION_TYPE#_Pitot_2</NODE_ID_RIGHT_PITOT> <PART_ID_LEFT_PITOT>#PART_ID#</PART_ID_LEFT_PITOT> <ANIM_NAME_LEFT_PITOT>DEICE_#INTERACTION_TYPE#_Pitot_1</ANIM_NAME_LEFT_PITOT> <ANIM_NAME_RIGHT_PITOT>DEICE_#INTERACTION_TYPE#_Pitot_2</ANIM_NAME_RIGHT_PITOT> <PART_ID_RIGHT_PITOT>#PART_ID#</PART_ID_RIGHT_PITOT> <WWISE_EVENT_1>deice_pitot_switch_on</WWISE_EVENT_1> <WWISE_EVENT_2>deice_pitot_switch_off</WWISE_EVENT_2> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <NORMALIZED_TIME_2>0.5</NORMALIZED_TIME_2> <Switch Param="TYPE"> <Case Value="SEPARATED_PUSH_RELEASE"> <NODE_ID_LEFT_PITOT_RELEASE>DEICE_#INTERACTION_TYPE#_Pitot_Release_1</NODE_ID_LEFT_PITOT_RELEASE> <ANIM_NAME_LEFT_PITOT_RELEASE>DEICE_#INTERACTION_TYPE#_Pitot_Release_1</ANIM_NAME_LEFT_PITOT_RELEASE> <PART_ID_LEFT_PITOT_RELEASE>#PART_ID#</PART_ID_LEFT_PITOT_RELEASE> <NODE_ID_RIGHT_PITOT_RELEASE>DEICE_#INTERACTION_TYPE#_Pitot_Release_2</NODE_ID_RIGHT_PITOT_RELEASE> <ANIM_NAME_RIGHT_PITOT_RELEASE>DEICE_#INTERACTION_TYPE#_Pitot_Release_2</ANIM_NAME_RIGHT_PITOT_RELEASE> <PART_ID_RIGHT_PITOT_RELEASE>#PART_ID#</PART_ID_RIGHT_PITOT_RELEASE> <TT_INDEX_LEFT>(R:1:@TT_Package.GT_STATE_MAIN)</TT_INDEX_LEFT> <TT_INDEX_RIGHT>(R:1:@TT_Package.GT_STATE_STANDBY)</TT_INDEX_RIGHT> </Case> </Switch> </True> <False> <ID>1</ID> <Switch Param="INTERACTION_TYPE"> <Case Value="PUSH"> <ANIM_NAME>DEICE_Push_Pitot</ANIM_NAME> <NODE_ID>DEICE_Push_Pitot</NODE_ID> <Switch Param="TYPE"> <Case Value="AS02A"> <ANIM_NAME>DEICE_Switch_Pitot_#ID#</ANIM_NAME> <NODE_ID>DEICE_Switch_Pitot_#ID#</NODE_ID> <SEQ1_EMISSIVE_CODE>0</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(A:CIRCUIT PITOT HEAT ON:#ID#, Bool) !</SEQ2_EMISSIVE_CODE> </Case> <Default> <SEQ1_EMISSIVE_CODE>(A:PITOT HEAT, Bool)</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(A:PITOT HEAT, Bool) !</SEQ2_EMISSIVE_CODE> </Default> </Switch> </Case> <Case Value="SWITCH"> <ANIM_NAME>DEICE_Switch_PitotHeat</ANIM_NAME> <NODE_ID>DEICE_Switch_PitotHeat</NODE_ID> </Case> </Switch> <WWISE_EVENT_1>pitot_heat_switch_on</WWISE_EVENT_1> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <WWISE_EVENT_2>pitot_heat_switch_off</WWISE_EVENT_2> <NORMALIZED_TIME_2>0.5</NORMALIZED_TIME_2> </False> </Condition> </Parameters> <Condition Check="NUM_PITOTS" Value="2"> <True> <Component ID="DEICE_Switch_Pitots"> <UseTemplate Name="ASOBO_DEICE_Pitot_Template2"> <ID>1</ID> <NODE_ID>#NODE_ID_LEFT_PITOT#</NODE_ID> <ANIM_NAME>#ANIM_NAME_LEFT_PITOT#</ANIM_NAME> <PART_ID>#PART_ID_LEFT_PITOT#</PART_ID> <Switch Param="TYPE"> <Case Value="SEPARATED_PUSH_RELEASE"> <NODE_ID_RELEASE>#NODE_ID_LEFT_PITOT_RELEASE#</NODE_ID_RELEASE> <ANIM_NAME_RELEASE>#ANIM_NAME_LEFT_PITOT_RELEASE#</ANIM_NAME_RELEASE> <PART_ID_RELEASE>#PART_ID_LEFT_PITOT_RELEASE#</PART_ID_RELEASE> <TT_INDEX>#TT_INDEX_LEFT#</TT_INDEX> </Case> </Switch> </UseTemplate> <UseTemplate Name="ASOBO_DEICE_Pitot_Template2"> <ID>2</ID> <NODE_ID>#NODE_ID_RIGHT_PITOT#</NODE_ID> <ANIM_NAME>#ANIM_NAME_RIGHT_PITOT#</ANIM_NAME> <PART_ID>#PART_ID_RIGHT_PITOT#</PART_ID> <Switch Param="TYPE"> <Case Value="SEPARATED_PUSH_RELEASE"> <NODE_ID_RELEASE>#NODE_ID_RIGHT_PITOT_RELEASE#</NODE_ID_RELEASE> <ANIM_NAME_RELEASE>#ANIM_NAME_RIGHT_PITOT_RELEASE#</ANIM_NAME_RELEASE> <PART_ID_RELEASE>#PART_ID_RIGHT_PITOT_RELEASE#</PART_ID_RELEASE> <TT_INDEX>#TT_INDEX_RIGHT#</TT_INDEX> </Case> </Switch> </UseTemplate> </Component> </True> <False> <UseTemplate Name="ASOBO_DEICE_Pitot_Template2"/> </False> </Condition> </Template>Parameters initialization:
-
Default
Parameters set:
- PART_ID
-
Default
Condition: Check(NUM_PITOTS)
-
Case: True
Parameters set:
- NODE_ID_LEFT_PITOT (using INTERACTION_TYPE)
- NODE_ID_RIGHT_PITOT (using INTERACTION_TYPE)
- PART_ID_LEFT_PITOT (using PART_ID)
- ANIM_NAME_LEFT_PITOT (using INTERACTION_TYPE)
- ANIM_NAME_RIGHT_PITOT (using INTERACTION_TYPE)
- PART_ID_RIGHT_PITOT (using PART_ID)
- WWISE_EVENT_1
- WWISE_EVENT_2
- NORMALIZED_TIME_1
- NORMALIZED_TIME_2
Condition: Switch(TYPE)
-
Case: SEPARATED_PUSH_RELEASE
Parameters set:
- NODE_ID_LEFT_PITOT_RELEASE (using INTERACTION_TYPE)
- ANIM_NAME_LEFT_PITOT_RELEASE (using INTERACTION_TYPE)
- PART_ID_LEFT_PITOT_RELEASE (using PART_ID)
- NODE_ID_RIGHT_PITOT_RELEASE (using INTERACTION_TYPE)
- ANIM_NAME_RIGHT_PITOT_RELEASE (using INTERACTION_TYPE)
- PART_ID_RIGHT_PITOT_RELEASE (using PART_ID)
- TT_INDEX_LEFT
- TT_INDEX_RIGHT
-
Case: False
Parameters set:
- ID
- WWISE_EVENT_1
- NORMALIZED_TIME_1
- WWISE_EVENT_2
- NORMALIZED_TIME_2
Condition: Switch(INTERACTION_TYPE)
-
Case: PUSH
Parameters set:
- ANIM_NAME
- NODE_ID
Condition: Switch(TYPE)
-
Case: AS02A
Parameters set:
- ANIM_NAME (using ID)
- NODE_ID (using ID)
- SEQ1_EMISSIVE_CODE
- SEQ2_EMISSIVE_CODE (using ID)
-
Default case:
Parameters set:
- SEQ1_EMISSIVE_CODE
- SEQ2_EMISSIVE_CODE
-
Case: SWITCH
Parameters set:
- ANIM_NAME
- NODE_ID
-
Condition: Check(NUM_PITOTS)
-
Case: True
Components:
-
DEICE_Switch_Pitots
Templates used:
-
ASOBO_DEICE_Pitot_Template2
Parameters set:
- ID
- NODE_ID (using NODE_ID_LEFT_PITOT)
- ANIM_NAME (using ANIM_NAME_LEFT_PITOT)
- PART_ID (using PART_ID_LEFT_PITOT)
Condition: Switch(TYPE)
-
Case: SEPARATED_PUSH_RELEASE
Parameters set:
- NODE_ID_RELEASE (using NODE_ID_LEFT_PITOT_RELEASE)
- ANIM_NAME_RELEASE (using ANIM_NAME_LEFT_PITOT_RELEASE)
- PART_ID_RELEASE (using PART_ID_LEFT_PITOT_RELEASE)
- TT_INDEX (using TT_INDEX_LEFT)
-
ASOBO_DEICE_Pitot_Template2
Parameters set:
- ID
- NODE_ID (using NODE_ID_RIGHT_PITOT)
- ANIM_NAME (using ANIM_NAME_RIGHT_PITOT)
- PART_ID (using PART_ID_RIGHT_PITOT)
Condition: Switch(TYPE)
-
Case: SEPARATED_PUSH_RELEASE
Parameters set:
- NODE_ID_RELEASE (using NODE_ID_RIGHT_PITOT_RELEASE)
- ANIM_NAME_RELEASE (using ANIM_NAME_RIGHT_PITOT_RELEASE)
- PART_ID_RELEASE (using PART_ID_RIGHT_PITOT_RELEASE)
- TT_INDEX (using TT_INDEX_RIGHT)
-
ASOBO_DEICE_Pitot_Template2
-
DEICE_Switch_Pitots
-
Case: False
Templates used:
-
Default
-
ASOBO_DEICE_Pitot_Template2
Definition from XML<Template Name="ASOBO_DEICE_Pitot_Template2"> <Parameters Type="Default"> <Switch Param="TYPE"> <Case Value="SEPARATED_PUSH_RELEASE"> <USE_GIE>True</USE_GIE> <NODE_ID_RELEASE>#NODE_ID_RIGHT_PITOT_RELEASE#</NODE_ID_RELEASE> <ANIM_NAME_RELEASE>#ANIM_NAME_RIGHT_PITOT_RELEASE#</ANIM_NAME_RELEASE> <CHECK_STATE_HAS_CHANGED>True</CHECK_STATE_HAS_CHANGED> <TT_INDEX>(R:1:@TT_Package.GT_STATE_MAIN)</TT_INDEX> </Case> </Switch> </Parameters> <Parameters Type="Default"> <Switch Param="TYPE"> <Case Value="SEPARATED_PUSH_RELEASE"> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_PITOTHEAT_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_INDEX_PUSH>#TT_INDEX#</TT_DESCRIPTION_INDEX_PUSH> <TT_DESCRIPTION_INDEX_RELEASE>#TT_INDEX#</TT_DESCRIPTION_INDEX_RELEASE> <TT_DESCRIPTION_ID_PUSH>@TT_Package.DEICE_PITOT_HEAT_ACTION_PUSH</TT_DESCRIPTION_ID_PUSH> <TT_DESCRIPTION_ID_RELEASE>@TT_Package.DEICE_PITOT_HEAT_ACTION_RELEASE</TT_DESCRIPTION_ID_RELEASE> </Case> <Default> <Switch param="INTERACTION_TYPE"> <Case Value="PUSH"> <SEQ1_EMISSIVE_CODE>(B:DEICE_Pitot_#ID#)</SEQ1_EMISSIVE_CODE> <SEQ2_EMISSIVE_CODE>(B:DEICE_Pitot_#ID#) !</SEQ2_EMISSIVE_CODE> </Case> <Case Value="SWITCH"> <ANIM_CODE>(B:DEICE_Pitot_#ID#) 100 *</ANIM_CODE> </Case> </Switch> <LEFT_SINGLE_CODE>(>B:DEICE_Pitot_#ID#_Toggle)</LEFT_SINGLE_CODE> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_PITOTHEAT_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>DEICE_Pitot_#ID#</TOOLTIP_ENTRY_0> <PITOT_ID>#ID#</PITOT_ID> </Default> </Switch> </Parameters> <Parameters Type="Override"> <Condition Valid="USE_GIE"> <False> <Switch Param="TYPE"> <Case Value="AS04F"> <AS04F_UPDATE_CODE> (O:XMLVAR_PitotHeat_#ID#_State) if{ (A:PITOT HEAT SWITCH, Bool) ! if{ #ID# (>K:PITOT_HEAT_TOGGLE) } } els{ (A:SIM ON GROUND, Bool) (A:PITOT HEAT SWITCH, Bool) ! != if{ #ID# (>K:PITOT_HEAT_TOGGLE) } } </AS04F_UPDATE_CODE> </Case> </Switch> </False> </Condition> </Parameters> <Condition Valid="USE_GIE"> <True> <Switch Param="TYPE"> <Case Value="SEPARATED_PUSH_RELEASE"> <UseTemplate Name="ASOBO_DEICE_Base_Template"> <IE_NAME>Pitot_#ID#</IE_NAME> <SET_STATE_EXTERNAL>(A:PITOT HEAT SWITCH:#ID#, Bool) ! if{ #ID# 1 (>K:2:PITOT_HEAT_SET) }</SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(A:PITOT HEAT SWITCH:#ID#, Bool) sp0</GET_STATE_EXTERNAL> <SIMVAR_TO_WATCH_0>PITOT HEAT SWITCH:#ID#</SIMVAR_TO_WATCH_0> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> <Condition NotEmpty="TT_DESCRIPTION_INDEX_PUSH"> <TT_DESCRIPTION_INDEX>#TT_DESCRIPTION_INDEX_PUSH#</TT_DESCRIPTION_INDEX> </Condition> </UseTemplate> <UseTemplate Name="ASOBO_DEICE_Base_Template"> <IE_NAME>Pitot_#ID#_Release_Button</IE_NAME> <NODE_ID>#NODE_ID_RELEASE#</NODE_ID> <ANIM_NAME>#ANIM_NAME_RELEASE#</ANIM_NAME> <PART_ID>#PART_ID_RELEASE#</PART_ID> <INTERACTION_TYPE>Push</INTERACTION_TYPE> <SET_STATE_EXTERNAL>(A:PITOT HEAT SWITCH:#ID#, Bool) if{ #ID# 0 (>K:2:PITOT_HEAT_SET) }</SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(A:PITOT HEAT SWITCH:#ID#, Bool) sp0</GET_STATE_EXTERNAL> <SIMVAR_TO_WATCH_0>PITOT HEAT SWITCH:#ID#</SIMVAR_TO_WATCH_0> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_RELEASE#</TT_DESCRIPTION_ID> <Condition NotEmpty="TT_DESCRIPTION_INDEX_RELEASE"> <TT_DESCRIPTION_INDEX>#TT_DESCRIPTION_INDEX_RELEASE#</TT_DESCRIPTION_INDEX> </Condition> </UseTemplate> </Case> <Default> <UseTemplate Name="ASOBO_DEICE_Base_Template"> <SET_STATE_EXTERNAL>#ID# p0 (>K:2:PITOT_HEAT_SET)</SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(A:PITOT HEAT SWITCH:#ID#, Bool) sp0</GET_STATE_EXTERNAL> <SIMVAR_TO_WATCH_0>PITOT HEAT SWITCH:#ID#</SIMVAR_TO_WATCH_0> </UseTemplate> </Default> </Switch> </True> <False> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>#PITOT_ID# (A:PITOT HEAT SWITCH:1, Bool) (>K:2:PITOT_HEAT_SET)</UPDATE_CODE> </UseTemplate> <Switch param="INTERACTION_TYPE"> <Case Value="PUSH"> <UseTemplate Name="ASOBO_GT_Push_Button_Airliner"> <INPUT_EVENT_ID>DEICE</INPUT_EVENT_ID> </UseTemplate> </Case> <Case Value="SWITCH"> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="DEICE"/> <Switch Param="TYPE"> <Case Value="AS04F"> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>1</FREQUENCY> <UPDATE_CODE>#AS04F_UPDATE_CODE#</UPDATE_CODE> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_GT_Switch_Code"/> </Component> </Case> </Switch> </False> </Condition> </Template>Parameters initialization:
-
Default
Condition: Switch(TYPE)
-
Case: SEPARATED_PUSH_RELEASE
Parameters set:
- USE_GIE
- NODE_ID_RELEASE (using NODE_ID_RIGHT_PITOT_RELEASE)
- ANIM_NAME_RELEASE (using ANIM_NAME_RIGHT_PITOT_RELEASE)
- CHECK_STATE_HAS_CHANGED
- TT_INDEX
-
-
Default
Condition: Switch(TYPE)
-
Case: SEPARATED_PUSH_RELEASE
Parameters set:
- TOOLTIP_TITLE
- TT_DESCRIPTION_INDEX_PUSH (using TT_INDEX)
- TT_DESCRIPTION_INDEX_RELEASE (using TT_INDEX)
- TT_DESCRIPTION_ID_PUSH
- TT_DESCRIPTION_ID_RELEASE
-
Default case:
Parameters set:
- LEFT_SINGLE_CODE (using ID)
- TOOLTIP_TITLE
- TOOLTIP_ENTRY_0 (using ID)
- PITOT_ID (using ID)
Condition: Switch(INTERACTION_TYPE)
-
Case: PUSH
Parameters set:
- SEQ1_EMISSIVE_CODE (using ID)
- SEQ2_EMISSIVE_CODE (using ID)
-
Case: SWITCH
Parameters set:
- ANIM_CODE (using ID)
-
-
Override
Condition: Valid(USE_GIE)
-
Case: False
Condition: Switch(TYPE)
-
Case: AS04F
Parameters set:
- AS04F_UPDATE_CODE (using ID)
-
-
Condition: Valid(USE_GIE)
-
Case: True
Condition: Switch(TYPE)
-
Case: SEPARATED_PUSH_RELEASE
Templates used:
-
ASOBO_DEICE_Base_Template
Parameters set:
- IE_NAME (using ID)
- SET_STATE_EXTERNAL (using ID)
- GET_STATE_EXTERNAL (using ID)
- SIMVAR_TO_WATCH_0 (using ID)
- TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_PUSH)
Condition: NotEmpty(TT_DESCRIPTION_INDEX_PUSH)
-
Case: True
Parameters set:
- TT_DESCRIPTION_INDEX (using TT_DESCRIPTION_INDEX_PUSH)
-
ASOBO_DEICE_Base_Template
Parameters set:
- IE_NAME (using ID)
- NODE_ID (using NODE_ID_RELEASE)
- ANIM_NAME (using ANIM_NAME_RELEASE)
- PART_ID (using PART_ID_RELEASE)
- INTERACTION_TYPE
- SET_STATE_EXTERNAL (using ID)
- GET_STATE_EXTERNAL (using ID)
- SIMVAR_TO_WATCH_0 (using ID)
- TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_RELEASE)
Condition: NotEmpty(TT_DESCRIPTION_INDEX_RELEASE)
-
Case: True
Parameters set:
- TT_DESCRIPTION_INDEX (using TT_DESCRIPTION_INDEX_RELEASE)
-
ASOBO_DEICE_Base_Template
-
Default case:
Templates used:
-
ASOBO_DEICE_Base_Template
Parameters set:
- SET_STATE_EXTERNAL (using ID)
- GET_STATE_EXTERNAL (using ID)
- SIMVAR_TO_WATCH_0 (using ID)
-
ASOBO_DEICE_Base_Template
-
-
Case: False
Templates used:
-
ASOBO_GT_Update
Parameters set:
- UPDATE_ONCE
- UPDATE_CODE (using PITOT_ID)
Condition: Switch(INTERACTION_TYPE)
-
Case: PUSH
Templates used:
-
ASOBO_GT_Push_Button_Airliner
Parameters set:
- INPUT_EVENT_ID
-
ASOBO_GT_Push_Button_Airliner
-
Case: SWITCH
Parameters read:
- NODE_ID
Components:
-
#NODE_ID# (Node: #NODE_ID#)
Templates used:
Condition: Switch(TYPE)
-
Case: AS04F
Templates used:
-
ASOBO_GT_Update
Parameters set:
- FREQUENCY
- UPDATE_CODE (using AS04F_UPDATE_CODE)
-
ASOBO_GT_Update
-
-
ASOBO_GT_Update
-
Default
-
ASOBO_DEICE_Panel_SubTemplate
Definition from XML<Template Name="ASOBO_DEICE_Panel_SubTemplate"> <Parameters Type="Default"> <Switch Param="TYPE"> <Case Value="DA62"> <NODE_ID_WINGS_ICELIGHT>DEICE_Switch_Airframe</NODE_ID_WINGS_ICELIGHT> <ANIM_NAME_WINGS_ICELIGHT>DEICE_Switch_Airframe</ANIM_NAME_WINGS_ICELIGHT> <NODE_ID_WINDSHIELD>DEICE_Switch_Windshield</NODE_ID_WINDSHIELD> <ANIM_NAME_WINDSHIELD>DEICE_Switch_Windshield</ANIM_NAME_WINDSHIELD> <NODE_ID_PUMP>DEICE_Switch_Pump</NODE_ID_PUMP> <ANIM_NAME_PUMP>DEICE_Switch_Pump</ANIM_NAME_PUMP> <NODE_ID_ALTERNATE>DEICE_switch_alternate</NODE_ID_ALTERNATE> <ANIM_NAME_ALTERNATE>DEICE_switch_alternate</ANIM_NAME_ALTERNATE> <NODE_ID_ALTERNATE_COVER>DEICE_Cover_switch_alternate</NODE_ID_ALTERNATE_COVER> <ANIM_NAME_ALTERNATE_COVER>DEICE_Cover_switch_alternate</ANIM_NAME_ALTERNATE_COVER> <NODE_ID_MAX>DEICE_Push_max_momentary</NODE_ID_MAX> <ANIM_NAME_MAX>DEICE_Push_max_momentary</ANIM_NAME_MAX> <NODE_ID_WINGLIGHT_ANNUN_TEST>DEICE_Switch_WingLight_AnnunTest</NODE_ID_WINGLIGHT_ANNUN_TEST> <ANIM_NAME_WINGLIGHT_ANNUN_TEST>DEICE_Switch_WingLight_AnnunTest</ANIM_NAME_WINGLIGHT_ANNUN_TEST> <NODE_ID_LIGHT_NORM>light_deice_03</NODE_ID_LIGHT_NORM> <NODE_ID_LIGHT_HIGH>light_deice_02</NODE_ID_LIGHT_HIGH> <NODE_ID_LIGHT_MAX>light_deice_01</NODE_ID_LIGHT_MAX> <INPUT_EVENT_ID_SOURCE>DEICE_Panel</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT_ID>DEICE</USE_INPUT_EVENT_ID> </Case> </Switch> </Parameters> <Parameters Type="Override"> <Switch Param="TYPE"> <Case Value="DA62"> <BTN_ID_WINGS_ICELIGHT>Wings_Ice_Light</BTN_ID_WINGS_ICELIGHT> <BTN_ID_WINDSHIELD>Windshield</BTN_ID_WINDSHIELD> <BTN_ID_PUMP>Pump</BTN_ID_PUMP> <BTN_ID_ALTERNATE>Alternate</BTN_ID_ALTERNATE> <BTN_ID_MAX>Max</BTN_ID_MAX> <BTN_ID_WINGLIGHT_ANNUN_TEST>Wing_Light_Annun_Test</BTN_ID_WINGLIGHT_ANNUN_TEST> </Case> </Switch> </Parameters> <Switch Param="TYPE"> <Case Value="DA62"> <Component ID="#NODE_ID_WINGS_ICELIGHT#" Node="#NODE_ID_WINGS_ICELIGHT#"> <Parameters Type="Override"> <POS_HIGH>0</POS_HIGH> <POS_NORM>1</POS_NORM> <POS_OFF>2</POS_OFF> <NUM_STATES>3</NUM_STATES> <BTN_ID>#BTN_ID_WINGS_ICELIGHT#</BTN_ID> <TOOLTIP_TITLE>@TT_Package.SWITCH_DEICE_MODE_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.SWITCH_DEICE_MODE_ACTION</TT_DESCRIPTION_ID> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <GET_STATE_EXTERNAL>(O:XMLVAR_IceLightState) sp0</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0</ENUM_VAL_TO_POS_EXTERNAL> <SET_STATE_#POS_HIGH#>(>K:ANTI_ICE_ON) (>K:WINDSHIELD_DEICE_ON) #POS_HIGH# (>O:XMLVAR_IceLightState)</SET_STATE_#POS_HIGH#> <SET_STATE_#POS_NORM#>(>K:ANTI_ICE_ON) (>K:WINDSHIELD_DEICE_ON) #POS_NORM# (>O:XMLVAR_IceLightState)</SET_STATE_#POS_NORM#> <SET_STATE_#POS_OFF#> (B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_ALTERNATE#, Bool) if{ (>K:ANTI_ICE_OFF) } (B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUMP#, Bool) if{ (>K:WINDSHIELD_DEICE_OFF) } #POS_OFF# (>O:XMLVAR_IceLightState) </SET_STATE_#POS_OFF#> <STR_STATE_#POS_HIGH#>High</STR_STATE_#POS_HIGH#> <STR_STATE_#POS_NORM#>Norm</STR_STATE_#POS_NORM#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <TT_VALUE_#POS_HIGH#>@TT_Package.GT_STATE_HIGH</TT_VALUE_#POS_HIGH#> <TT_VALUE_#POS_NORM#>@TT_Package.GT_STATE_NORMAL</TT_VALUE_#POS_NORM#> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <SIMVAR_TO_WATCH_0>ENG ANTI ICE:1</SIMVAR_TO_WATCH_0> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>(A:ENG ANTI ICE:1, Bool) if{ (>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Norm) } els{ (>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off) }</UPDATE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Switch_3States"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <ANIM_NAME>#ANIM_NAME_WINGS_ICELIGHT#</ANIM_NAME> <CODE_POS_#POS_HIGH#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_High)</CODE_POS_#POS_HIGH#> <CODE_POS_#POS_NORM#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Norm)</CODE_POS_#POS_NORM#> <CODE_POS_#POS_OFF#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</CODE_POS_#POS_OFF#> <STATE#POS_HIGH#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_HIGH# ==</STATE#POS_HIGH#_TEST> <STATE#POS_NORM#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_NORM# ==</STATE#POS_NORM#_TEST> <STATE#POS_OFF#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_OFF# ==</STATE#POS_OFF#_TEST> </UseTemplate> </Component> <Component ID="#NODE_ID_WINDSHIELD#" Node="#NODE_ID_WINDSHIELD#"> <Parameters Type="Override"> <BTN_ID>#BTN_ID_WINDSHIELD#</BTN_ID> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_WINDSHIELD_DA62TITLE_DA62</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.DEICE_SWITCH_WINDSHIELD_DA62ACTION_DA62</TT_DESCRIPTION_ID> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <SET_STATE_ON>(A:WINDSHIELD DEICE SWITCH, Bool) ! if{ (>K:WINDSHIELD_DEICE_ON) (E:ABSOLUTE TIME, second) 5 + (>O:XMLVAR_Timer_Timeout) }</SET_STATE_ON> <SET_STATE_OFF>(A:WINDSHIELD DEICE SWITCH, Bool) if{ (>K:WINDSHIELD_DEICE_OFF) 0 (>O:XMLVAR_Timer_Timeout) }</SET_STATE_OFF> <GET_STATE_EXTERNAL>(A:WINDSHIELD DEICE SWITCH, Bool) sp0</GET_STATE_EXTERNAL> <SIM_STATE_IS_ON_EXTERNAL>l0</SIM_STATE_IS_ON_EXTERNAL> <ANIM>EXTERNAL</ANIM> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>5</FREQUENCY> <UPDATE_CODE>(O:XMLVAR_Timer_Timeout) 0 > if{ (E:ABSOLUTE TIME, second) (O:XMLVAR_Timer_Timeout) > if{ (>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off) } }</UPDATE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Switch_Code"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <ANIM_NAME>#ANIM_NAME_WINDSHIELD#</ANIM_NAME> <WWISE_EVENT_1>deice_windshield_switch_on</WWISE_EVENT_1> <WWISE_EVENT_2>deice_windshield_switch_off</WWISE_EVENT_2> <LEFT_SINGLE_CODE>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> <ANIM_CODE>(O:XMLVAR_Timer_Timeout) 0 > 100 *</ANIM_CODE> </UseTemplate> </Component> <Component ID="#NODE_ID_PUMP#" Node="#NODE_ID_PUMP#"> <Parameters Type="Override"> <POS_PUMP_1>0</POS_PUMP_1> <POS_OFF>1</POS_OFF> <POS_PUMP_2>2</POS_PUMP_2> <NUM_STATES>3</NUM_STATES> <BTN_ID>#BTN_ID_PUMP#</BTN_ID> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_PUMP_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.DEICE_SWITCH_PUMP_ACTION_SET</TT_DESCRIPTION_ID> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <GET_STATE_EXTERNAL>(L:XMLVAR_DEICE_Pump) sp0</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL> l0 0 == if{ #POS_OFF# sp1 g2 } l0 1 == if{ #POS_PUMP_1# sp1 g2 } l0 2 == if{ #POS_PUMP_2# sp1 g2 } :2 l1 </ENUM_VAL_TO_POS_EXTERNAL> <SET_STATE_#POS_PUMP_1#>1 (>L:XMLVAR_DEICE_Pump)</SET_STATE_#POS_PUMP_1#> <SET_STATE_#POS_OFF#>0 (>L:XMLVAR_DEICE_Pump)</SET_STATE_#POS_OFF#> <SET_STATE_#POS_PUMP_2#>2 (>L:XMLVAR_DEICE_Pump)</SET_STATE_#POS_PUMP_2#> <STR_STATE_#POS_PUMP_1#>Pump_1</STR_STATE_#POS_PUMP_1#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <STR_STATE_#POS_PUMP_2#>Pump_2</STR_STATE_#POS_PUMP_2#> <TT_VALUE_#POS_PUMP_1#>1 (R:1:@TT_Package.GT_STATE_PUMP_ID) @sprintf</TT_VALUE_#POS_PUMP_1#> <TT_VALUE_#POS_PUMP_1#_IS_DYNAMIC>True</TT_VALUE_#POS_PUMP_1#_IS_DYNAMIC> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <TT_VALUE_#POS_PUMP_2#>2 (R:1:@TT_Package.GT_STATE_PUMP_ID) @sprintf</TT_VALUE_#POS_PUMP_2#> <TT_VALUE_#POS_PUMP_2#_IS_DYNAMIC>True</TT_VALUE_#POS_PUMP_2#_IS_DYNAMIC> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</UPDATE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Switch_3States"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <ANIM_NAME>#ANIM_NAME_PUMP#</ANIM_NAME> <CODE_POS_#POS_PUMP_1#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Pump_1)</CODE_POS_#POS_PUMP_1#> <CODE_POS_#POS_OFF#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</CODE_POS_#POS_OFF#> <CODE_POS_#POS_PUMP_2#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Pump_2)</CODE_POS_#POS_PUMP_2#> <STATE#POS_PUMP_1#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_PUMP_1# ==</STATE#POS_PUMP_1#_TEST> <STATE#POS_OFF#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_OFF# ==</STATE#POS_OFF#_TEST> <STATE#POS_PUMP_2#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_PUMP_2# ==</STATE#POS_PUMP_2#_TEST> </UseTemplate> </Component> <Component ID="#NODE_ID_ALTERNATE#"> <Parameters Type="Override"> <BTN_ID>#BTN_ID_ALTERNATE#</BTN_ID> <POS_OFF>2</POS_OFF> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_ALTERNATOR_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.DEICE_SWITCH_ALTERNATOR_ACTION_SET</TT_DESCRIPTION_ID> </Parameters> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_On)</UPDATE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Switch_Covered"> <SWITCH_NODE_ID>#NODE_ID_ALTERNATE#</SWITCH_NODE_ID> <SWITCH_ANIM_NAME>#ANIM_NAME_ALTERNATE#</SWITCH_ANIM_NAME> <COVER_NODE_ID>#NODE_ID_ALTERNATE_COVER#</COVER_NODE_ID> <COVER_ANIM_NAME>#ANIM_NAME_ALTERNATE_COVER#</COVER_ANIM_NAME> <COVER_IE_NAME>#BTN_ID#_Cover</COVER_IE_NAME> <COVER_VAR_NAME>XMLVAR_#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Cover_Opened</COVER_VAR_NAME> <COVER_VAR_TYPE>O</COVER_VAR_TYPE> <INPUT_EVENT_ID>#USE_INPUT_EVENT_ID#</INPUT_EVENT_ID> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <COVER_IE_ID_SOURCE>#INPUT_EVENT_ID_SOURCE#</COVER_IE_ID_SOURCE> <TOGGLE_STATE>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</TOGGLE_STATE> <SWITCH_ANIM_CODE>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#, Bool) 100 *</SWITCH_ANIM_CODE> <SET_STATE_ON>1 (>O:XMLVAR_DEICE_Alternate_Disabled) (B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_WINGS_ICELIGHT#) #POS_OFF# == if{ (>K:ANTI_ICE_OFF) }</SET_STATE_ON> <SET_STATE_OFF>0 (>O:XMLVAR_DEICE_Alternate_Disabled) (>K:ANTI_ICE_ON)</SET_STATE_OFF> <GET_STATE_EXTERNAL>(O:XMLVAR_DEICE_Alternate_Disabled) sp0</GET_STATE_EXTERNAL> <SIM_STATE_IS_ON_EXTERNAL>l0</SIM_STATE_IS_ON_EXTERNAL> </UseTemplate> </Component> <Component ID="#NODE_ID_MAX#" Node="#NODE_ID_MAX#"> <Parameters Type="Override"> <BTN_ID>#BTN_ID_MAX#</BTN_ID> <TOOLTIP_TITLE>@TT_Package.DEICE_PUSH_MAX_MOMENTARY_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.DEICE_PUSH_MAX_MOMENTARY_ACTION</TT_DESCRIPTION_ID> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <SET_STATE_ON>(O:XMLVAR_#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Active) ! if{ 1 (>O:XMLVAR_#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Active) (E:ABSOLUTE TIME, second) 120 + (>O:XMLVAR_Timer_Timeout) }</SET_STATE_ON> <SET_STATE_OFF>(O:XMLVAR_#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Active) if{ 0 (>O:XMLVAR_#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Active) 0 (>O:XMLVAR_Timer_Timeout) }</SET_STATE_OFF> <GET_STATE_EXTERNAL>(O:XMLVAR_#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Active) sp0</GET_STATE_EXTERNAL> <SIM_STATE_IS_ON_EXTERNAL>l0</SIM_STATE_IS_ON_EXTERNAL> <ANIM>EXTERNAL</ANIM> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>5</FREQUENCY> <UPDATE_CODE>(O:XMLVAR_Timer_Timeout) 0 > if{ (E:ABSOLUTE TIME, second) (O:XMLVAR_Timer_Timeout) > if{ (>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off) } }</UPDATE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Switch_Code"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <ANIM_NAME>#ANIM_NAME_MAX#</ANIM_NAME> <WWISE_EVENT_1>deice_max_momentary_push_off</WWISE_EVENT_1> <WWISE_EVENT_2>deice_max_momentary_push_on</WWISE_EVENT_2> <LEFT_SINGLE_CODE>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> <ANIM_CODE>(O:XMLVAR_Timer_Timeout) 0 > 100 *</ANIM_CODE> </UseTemplate> </Component> <Component ID="#NODE_ID_WINGLIGHT_ANNUN_TEST#" Node="#NODE_ID_WINGLIGHT_ANNUN_TEST#"> <Parameters Type="Override"> <BTN_ID>#BTN_ID_WINGLIGHT_ANNUN_TEST#</BTN_ID> <POS_ON>0</POS_ON> <POS_OFF>1</POS_OFF> <POS_TEST>2</POS_TEST> <TOOLTIP_TITLE>@TT_Package.DEICE_SWITCH_WINGLIGHT_ANNUTEST_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.DEICE_SWITCH_WINGLIGHT_ANNUTEST_ACTION_SET</TT_DESCRIPTION_ID> <NUM_STATES>3</NUM_STATES> </Parameters> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</UPDATE_CODE> </UseTemplate> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <GET_STATE_EXTERNAL>(A:LIGHT WING, bool) sp0 (L:XMLVAR_LTS_Test) sp1</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL> #POS_OFF# sp2 l0 ! if{ #POS_TEST# #POS_OFF# l1 ? sp2 g2 } els{ #POS_ON# sp2 g2 } :2 l2 </ENUM_VAL_TO_POS_EXTERNAL> <SET_STATE_#POS_ON#>(A:LIGHT WING, bool) ! if{ (>K:TOGGLE_WING_LIGHTS) } 0 (>L:XMLVAR_LTS_Test)</SET_STATE_#POS_ON#> <SET_STATE_#POS_OFF#>(A:LIGHT WING, bool) if{ (>K:TOGGLE_WING_LIGHTS) } 0 (>L:XMLVAR_LTS_Test)</SET_STATE_#POS_OFF#> <SET_STATE_#POS_TEST#>(A:LIGHT WING, bool) if{ (>K:TOGGLE_WING_LIGHTS) } 1 (>L:XMLVAR_LTS_Test)</SET_STATE_#POS_TEST#> <STR_STATE_#POS_ON#>On</STR_STATE_#POS_ON#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <STR_STATE_#POS_TEST#>Test</STR_STATE_#POS_TEST#> <TT_VALUE_#POS_ON#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ON#> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <TT_VALUE_#POS_TEST#>@TT_Package.GT_STATE_TEST</TT_VALUE_#POS_TEST#> <SIMVAR_TO_WATCH_0>LIGHT WING</SIMVAR_TO_WATCH_0> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <ANIM_NAME>#ANIM_NAME_WINGLIGHT_ANNUN_TEST#</ANIM_NAME> <MOMENTARY_SWITCH/> <STATE_MAX_TIMER>0.1</STATE_MAX_TIMER> <STATE0_TIMER>0</STATE0_TIMER> <CODE_POS_#POS_ON#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_On)</CODE_POS_#POS_ON#> <CODE_POS_#POS_OFF#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</CODE_POS_#POS_OFF#> <CODE_POS_#POS_TEST#>(>B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Test)</CODE_POS_#POS_TEST#> <STATE#POS_ON#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_ON# ==</STATE#POS_ON#_TEST> <STATE#POS_TEST#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_TEST# ==</STATE#POS_TEST#_TEST> <STATE#POS_OFF#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_OFF# ==</STATE#POS_OFF#_TEST> </UseTemplate> </Component> <Component ID="DEICE_Panel_Lights"> <Parameters Type="Override"> <POS_HIGH>0</POS_HIGH> <POS_NORM>1</POS_NORM> <POS_OFF>2</POS_OFF> <ALT_CODE>(L:XMLVAR_LTS_Test)</ALT_CODE> </Parameters> <Component ID="#NODE_ID_LIGHT_NORM#" Node="#NODE_ID_LIGHT_NORM#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_WINGS_ICELIGHT#) #POS_OFF# !=</EMISSIVE_CODE> </UseTemplate> </Component> <Component ID="#NODE_ID_LIGHT_HIGH#" Node="#NODE_ID_LIGHT_HIGH#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_WINGS_ICELIGHT#) #POS_HIGH# ==</EMISSIVE_CODE> </UseTemplate> </Component> <Component ID="#NODE_ID_LIGHT_MAX#" Node="#NODE_ID_LIGHT_MAX#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_WINGS_ICELIGHT#) #POS_HIGH# == (B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_MAX#, Bool) and</EMISSIVE_CODE> </UseTemplate> </Component> </Component> </Case> </Switch> </Template>Parameters initialization:
-
Default
Condition: Switch(TYPE)
-
Case: DA62
Parameters set:
- NODE_ID_WINGS_ICELIGHT
- ANIM_NAME_WINGS_ICELIGHT
- NODE_ID_WINDSHIELD
- ANIM_NAME_WINDSHIELD
- NODE_ID_PUMP
- ANIM_NAME_PUMP
- NODE_ID_ALTERNATE
- ANIM_NAME_ALTERNATE
- NODE_ID_ALTERNATE_COVER
- ANIM_NAME_ALTERNATE_COVER
- NODE_ID_MAX
- ANIM_NAME_MAX
- NODE_ID_WINGLIGHT_ANNUN_TEST
- ANIM_NAME_WINGLIGHT_ANNUN_TEST
- NODE_ID_LIGHT_NORM
- NODE_ID_LIGHT_HIGH
- NODE_ID_LIGHT_MAX
- INPUT_EVENT_ID_SOURCE
- USE_INPUT_EVENT_ID
-
-
Override
Condition: Switch(TYPE)
-
Case: DA62
Parameters set:
- BTN_ID_WINGS_ICELIGHT
- BTN_ID_WINDSHIELD
- BTN_ID_PUMP
- BTN_ID_ALTERNATE
- BTN_ID_MAX
- BTN_ID_WINGLIGHT_ANNUN_TEST
-
Condition: Switch(TYPE)
-
Case: DA62
Parameters read:
- NODE_ID_WINGS_ICELIGHT
- NODE_ID_WINDSHIELD
- NODE_ID_PUMP
- NODE_ID_ALTERNATE
- NODE_ID_MAX
- NODE_ID_WINGLIGHT_ANNUN_TEST
Components:
-
#NODE_ID_WINGS_ICELIGHT# (Node: #NODE_ID_WINGS_ICELIGHT#)
Parameters read:
- USE_INPUT_EVENT_ID
Parameters set:
- POS_HIGH
- POS_NORM
- POS_OFF
- NUM_STATES
- BTN_ID (using BTN_ID_WINGS_ICELIGHT)
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
- GET_STATE_EXTERNAL
- ENUM_VAL_TO_POS_EXTERNAL
- SET_STATE_#POS_HIGH# (using POS_HIGH)
- SET_STATE_#POS_NORM# (using POS_NORM)
- SET_STATE_#POS_OFF# (using INPUT_EVENT_ID_SOURCE, BTN_ID_ALTERNATE, BTN_ID_PUMP, POS_OFF)
- STR_STATE_#POS_HIGH#
- STR_STATE_#POS_NORM#
- STR_STATE_#POS_OFF#
- TT_VALUE_#POS_HIGH#
- TT_VALUE_#POS_NORM#
- TT_VALUE_#POS_OFF#
- SIMVAR_TO_WATCH_0
Templates used:
-
ASOBO_GT_Update
Parameters set:
- UPDATE_ONCE
- UPDATE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
-
ASOBO_GT_Switch_3States
Parameters set:
- TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- ANIM_NAME (using ANIM_NAME_WINGS_ICELIGHT)
- CODE_POS_#POS_HIGH# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- CODE_POS_#POS_NORM# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- CODE_POS_#POS_OFF# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- STATE#POS_HIGH#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_HIGH)
- STATE#POS_NORM#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_NORM)
- STATE#POS_OFF#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_OFF)
-
#NODE_ID_WINDSHIELD# (Node: #NODE_ID_WINDSHIELD#)
Parameters read:
- USE_INPUT_EVENT_ID
Parameters set:
- BTN_ID (using BTN_ID_WINDSHIELD)
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
- SET_STATE_ON
- SET_STATE_OFF
- GET_STATE_EXTERNAL
- SIM_STATE_IS_ON_EXTERNAL
- ANIM
Templates used:
-
ASOBO_GT_Update
Parameters set:
- FREQUENCY
- UPDATE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
-
ASOBO_GT_Switch_Code
Parameters set:
- TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- ANIM_NAME (using ANIM_NAME_WINDSHIELD)
- WWISE_EVENT_1
- WWISE_EVENT_2
- LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- ANIM_CODE
-
#NODE_ID_PUMP# (Node: #NODE_ID_PUMP#)
Parameters read:
- USE_INPUT_EVENT_ID
Parameters set:
- POS_PUMP_1
- POS_OFF
- POS_PUMP_2
- NUM_STATES
- BTN_ID (using BTN_ID_PUMP)
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
- GET_STATE_EXTERNAL
- ENUM_VAL_TO_POS_EXTERNAL (using POS_OFF, POS_PUMP_1, POS_PUMP_2)
- SET_STATE_#POS_PUMP_1#
- SET_STATE_#POS_OFF#
- SET_STATE_#POS_PUMP_2#
- STR_STATE_#POS_PUMP_1#
- STR_STATE_#POS_OFF#
- STR_STATE_#POS_PUMP_2#
- TT_VALUE_#POS_PUMP_1#
- TT_VALUE_#POS_PUMP_1#_IS_DYNAMIC
- TT_VALUE_#POS_OFF#
- TT_VALUE_#POS_PUMP_2#
- TT_VALUE_#POS_PUMP_2#_IS_DYNAMIC
Templates used:
-
ASOBO_GT_Update
Parameters set:
- UPDATE_ONCE
- UPDATE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
-
ASOBO_GT_Switch_3States
Parameters set:
- TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- ANIM_NAME (using ANIM_NAME_PUMP)
- CODE_POS_#POS_PUMP_1# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- CODE_POS_#POS_OFF# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- CODE_POS_#POS_PUMP_2# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- STATE#POS_PUMP_1#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_PUMP_1)
- STATE#POS_OFF#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_OFF)
- STATE#POS_PUMP_2#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_PUMP_2)
-
#NODE_ID_ALTERNATE#
Parameters set:
- BTN_ID (using BTN_ID_ALTERNATE)
- POS_OFF
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
Templates used:
-
ASOBO_GT_Update
Parameters set:
- UPDATE_ONCE
- UPDATE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
-
ASOBO_GT_Switch_Covered
Parameters set:
- SWITCH_NODE_ID (using NODE_ID_ALTERNATE)
- SWITCH_ANIM_NAME (using ANIM_NAME_ALTERNATE)
- COVER_NODE_ID (using NODE_ID_ALTERNATE_COVER)
- COVER_ANIM_NAME (using ANIM_NAME_ALTERNATE_COVER)
- COVER_IE_NAME (using BTN_ID)
- COVER_VAR_NAME (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- COVER_VAR_TYPE
- INPUT_EVENT_ID (using USE_INPUT_EVENT_ID)
- TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- COVER_IE_ID_SOURCE (using INPUT_EVENT_ID_SOURCE)
- TOGGLE_STATE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- SWITCH_ANIM_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- SET_STATE_ON (using INPUT_EVENT_ID_SOURCE, BTN_ID_WINGS_ICELIGHT, POS_OFF)
- SET_STATE_OFF
- GET_STATE_EXTERNAL
- SIM_STATE_IS_ON_EXTERNAL
-
#NODE_ID_MAX# (Node: #NODE_ID_MAX#)
Parameters read:
- USE_INPUT_EVENT_ID
Parameters set:
- BTN_ID (using BTN_ID_MAX)
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
- SET_STATE_ON (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- SET_STATE_OFF (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- GET_STATE_EXTERNAL (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- SIM_STATE_IS_ON_EXTERNAL
- ANIM
Templates used:
-
ASOBO_GT_Update
Parameters set:
- FREQUENCY
- UPDATE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
-
ASOBO_GT_Switch_Code
Parameters set:
- TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- ANIM_NAME (using ANIM_NAME_MAX)
- WWISE_EVENT_1
- WWISE_EVENT_2
- LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- ANIM_CODE
-
#NODE_ID_WINGLIGHT_ANNUN_TEST# (Node: #NODE_ID_WINGLIGHT_ANNUN_TEST#)
Parameters read:
- USE_INPUT_EVENT_ID
Parameters set:
- BTN_ID (using BTN_ID_WINGLIGHT_ANNUN_TEST)
- POS_ON
- POS_OFF
- POS_TEST
- TOOLTIP_TITLE
- TT_DESCRIPTION_ID
- NUM_STATES
- GET_STATE_EXTERNAL
- ENUM_VAL_TO_POS_EXTERNAL (using POS_OFF, POS_TEST, POS_ON)
- SET_STATE_#POS_ON#
- SET_STATE_#POS_OFF#
- SET_STATE_#POS_TEST#
- STR_STATE_#POS_ON#
- STR_STATE_#POS_OFF#
- STR_STATE_#POS_TEST#
- TT_VALUE_#POS_ON#
- TT_VALUE_#POS_OFF#
- TT_VALUE_#POS_TEST#
- SIMVAR_TO_WATCH_0
Templates used:
-
ASOBO_GT_Update
Parameters set:
- UPDATE_ONCE
- UPDATE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
-
ASOBO_GT_Switch_3States
Parameters set:
- TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- ANIM_NAME (using ANIM_NAME_WINGLIGHT_ANNUN_TEST)
- MOMENTARY_SWITCH
- STATE_MAX_TIMER
- STATE0_TIMER
- CODE_POS_#POS_ON# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- CODE_POS_#POS_OFF# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- CODE_POS_#POS_TEST# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
- STATE#POS_ON#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_ON)
- STATE#POS_TEST#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_TEST)
- STATE#POS_OFF#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_OFF)
-
DEICE_Panel_Lights
Parameters read:
- NODE_ID_LIGHT_NORM
- NODE_ID_LIGHT_HIGH
- NODE_ID_LIGHT_MAX
Parameters set:
- POS_HIGH
- POS_NORM
- POS_OFF
- ALT_CODE
Components:
-
#NODE_ID_LIGHT_NORM# (Node: #NODE_ID_LIGHT_NORM#)
Templates used:
-
ASOBO_GT_Emissive_Gauge
Parameters set:
- EMISSIVE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_WINGS_ICELIGHT, POS_OFF)
-
ASOBO_GT_Emissive_Gauge
-
#NODE_ID_LIGHT_HIGH# (Node: #NODE_ID_LIGHT_HIGH#)
Templates used:
-
ASOBO_GT_Emissive_Gauge
Parameters set:
- EMISSIVE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_WINGS_ICELIGHT, POS_HIGH)
-
ASOBO_GT_Emissive_Gauge
-
#NODE_ID_LIGHT_MAX# (Node: #NODE_ID_LIGHT_MAX#)
Templates used:
-
ASOBO_GT_Emissive_Gauge
Parameters set:
- EMISSIVE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_WINGS_ICELIGHT, POS_HIGH, BTN_ID_MAX)
-
ASOBO_GT_Emissive_Gauge
-
Default