[Go back to index]

Asobo\Common\Subtemplates\Safety_Subtemplates.xml

Source XML
<ModelBehaviors> <Template Name="ASOBO_SAFETY_Push_SubTemplate"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <WWISE_EVENT_1>safety_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>safety_push_button_off</WWISE_EVENT_2> <ANIM_NAME>SAFETY_Push_#PUSH_ID##SUFFIX_ID#</ANIM_NAME> <NODE_ID>SAFETY_Push_#PUSH_ID##SUFFIX_ID#</NODE_ID> <PART_ID>SAFETY_Push_#PUSH_ID#</PART_ID> <Switch Param="TYPE"> <Case Value="AIRLINER"> <NODE_ID_SEQ1>SAFETY_Push_#PUSH_ID##SUFFIX_ID#_SEQ1</NODE_ID_SEQ1> <NODE_ID_SEQ2>SAFETY_Push_#PUSH_ID##SUFFIX_ID#_SEQ2</NODE_ID_SEQ2> </Case> </Switch> <Condition NotEmpty="IS_STATE_ACTIVE"> <EMISSIVE_CODE>#IS_STATE_ACTIVE#</EMISSIVE_CODE> </Condition> <BTN_ID>#PUSH_ID##SUFFIX_ID#</BTN_ID> <RELEASE_EVENT/> <ANIM_VAR>_ButtonAnimVar</ANIM_VAR> <ANIM_VAR_TYPE>O</ANIM_VAR_TYPE> </Parameters> <Parameters Type="Override"> <ANIM_CODE>(#ANIM_VAR_TYPE#:#ANIM_VAR#)</ANIM_CODE> <PUSH_EVENT>#PUSH_EVENT# 100 (&gt;#ANIM_VAR_TYPE#:#ANIM_VAR#)</PUSH_EVENT> <RELEASE_EVENT>#RELEASE_EVENT# 0 (&gt;#ANIM_VAR_TYPE#:#ANIM_VAR#)</RELEASE_EVENT> <Condition NotEmpty="EMISSIVE_CODE"> <EMISSIVE_CODE>#EMISSIVE_CODE# (#ANIM_VAR_TYPE#:#ANIM_VAR#) 0 &gt; or</EMISSIVE_CODE> </Condition> <Condition NotEmpty="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> </Condition> </Parameters> <Component ID="SAFETY_#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="SAFETY"> <BINDING_DEC_0>Release</BINDING_DEC_0> <BINDING_DEC_0_PARAM_0>0</BINDING_DEC_0_PARAM_0> <SET_STATE_EXTERNAL>if{ #PUSH_EVENT# } els{ #RELEASE_EVENT# }</SET_STATE_EXTERNAL> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> <ANIM>EXTERNAL</ANIM> </UseInputEvent> <UseTemplate Name = "ASOBO_GT_Anim_Code"/> <UseTemplate Name="ASOBO_GT_Push_Button_Held"> <Condition NotEmpty="IS_STATE_ACTIVE_SEQ1"> <EMISSIVE_CODE/> </Condition> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> <LEFT_LEAVE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Release)</LEFT_LEAVE_CODE> <ANIM_HANDLED_SEPARATELY>True</ANIM_HANDLED_SEPARATELY> </UseTemplate> </Component> <Switch Param="TYPE"> <Case Value="AIRLINER"> <Condition NotEmpty="IS_STATE_ACTIVE_SEQ1"> <Component ID="#NODE_ID_SEQ1#" Node="#NODE_ID_SEQ1#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>#IS_STATE_ACTIVE_SEQ1#</EMISSIVE_CODE> </UseTemplate> </Component> </Condition> <Condition NotEmpty="IS_STATE_ACTIVE_SEQ2"> <Component ID="#NODE_ID_SEQ2#" Node="#NODE_ID_SEQ2#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>#IS_STATE_ACTIVE_SEQ2#</EMISSIVE_CODE> </UseTemplate> </Component> </Condition> </Case> </Switch> </Template> <Template Name="ASOBO_SAFETY_Push_Acknowledge_SubTemplate"> <Parameters Type="Default"> <NODE_ID>SAFETY_Push_Acknowledge</NODE_ID> <ANIM_NAME>SAFETY_Push_Acknowledge</ANIM_NAME> <GREEN_LIGHT_NODE_ID>SAFETY_Acknowledge_Light_Green</GREEN_LIGHT_NODE_ID> <ORANGE_LIGHT_NODE_ID>SAFETY_Acknowledge_Light_Orange</ORANGE_LIGHT_NODE_ID> <GREEN_LIGHT_ANIM_NAME>SAFETY_Acknowledge_Light_Green</GREEN_LIGHT_ANIM_NAME> <ORANGE_LIGHT_ANIM_NAME>SAFETY_Acknowledge_Light_Orange</ORANGE_LIGHT_ANIM_NAME> <WWISE_EVENT_1>annunciator_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>annunciator_push_button_off</WWISE_EVENT_2> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <NORMALIZED_TIME_2>0.3</NORMALIZED_TIME_2> <TOOLTIP_TITLE>@TT_Package.SAFETY_PUSH_MASTER_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.SAFETY_PUSH_MASTER_ACTION</TT_DESCRIPTION_ID> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> </Parameters> <Parameters Type="Override"> <ACK_CODE> 0 (&gt;L:XMLVAR_SAFETY_Panel_Test_Enabled) (E:SIMULATION TIME, second) (&gt;L:XMLVAR_AcknowledgeTime) 0 (&gt;I:XMLVAR_CautionWaitingAck) 0 (&gt;I:XMLVAR_WarningWaitingAck) 0 (&gt;L:XMLVAR_CautionEnabled) 0 (&gt;L:XMLVAR_WarningEnabled) </ACK_CODE> <LONG_PRESS_CODE>1 (&gt;L:XMLVAR_SAFETY_Panel_Test_Enabled)</LONG_PRESS_CODE> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Parameters Type="Override"> <BTN_ID>Acknowledge</BTN_ID> <LONG_CLICK_TIME>2</LONG_CLICK_TIME> <Condition NotEmpty="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_Acknowledge</TOOLTIP_ENTRY_0> </Condition> </Parameters> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>2</FREQUENCY> <UPDATE_CODE>(I:XMLVAR_SAFETY_Blink_Step) ++ 3 % (&gt;I:XMLVAR_SAFETY_Blink_Step) (I:XMLVAR_SAFETY_Blink_Step) 2 &lt; (&gt;I:XMLVAR_SAFETY_Blink)</UPDATE_CODE> </UseTemplate> <UseInputEvent ID="#USE_INPUT_EVENT#"> <ANIM>HOLD</ANIM> <!-- Configure event processing --> <SET_ARG_COUNT>2</SET_ARG_COUNT><!-- p0: Press/Release, p1:PressDuration, 0 = infinite (if pressing) --> <SET_STATE_EXTERNAL>p0 sp0 l0 0 == if{ (O:_PressTime) 0 &gt; if{ (E:SIMULATION TIME, second) (O:_PressTime) - #LONG_CLICK_TIME# &lt; if{ #ACK_CODE# } els{ #LONG_PRESS_CODE# } 0 (&gt;O:_PressTime) } } l0 1 == if{ (E:SIMULATION TIME, second) (&gt;O:_PressTime) p1 (&gt;O:_PressForDuration) } </SET_STATE_EXTERNAL> <!-- Configure binding for longpress event --> <BINDING_SET_0>Push_Long</BINDING_SET_0> <BINDING_SET_0_PARAM_0>1</BINDING_SET_0_PARAM_0> <BINDING_SET_0_PARAM_1>#LONG_CLICK_TIME#</BINDING_SET_0_PARAM_1> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> <BINDING_DEC_0>Release</BINDING_DEC_0> <BINDING_DEC_0_PARAM_0>0</BINDING_DEC_0_PARAM_0> </UseInputEvent> <UseTemplate Name = "ASOBO_GT_Push_Button_Timed"> <PART_ID>SAFETY_Push_Acknowledge</PART_ID> <!-- Simply push/release the button --> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> <SHORT_CLICK_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Release)</SHORT_CLICK_CODE> <LONG_CLICK_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Release)</LONG_CLICK_CODE> </UseTemplate> <Condition Check="USE_EMISSIVE_BUTTON"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>(L:XMLVAR_CautionEnabled) (L:XMLVAR_WarningEnabled) or (L:XMLVAR_LTS_Test) or</EMISSIVE_CODE> </UseTemplate> </Condition> </Component> <Condition Check="NO_INDICATOR_LIGHTS"> <False> <Component ID="#GREEN_LIGHT_NODE_ID#" Node="#GREEN_LIGHT_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE> (L:XMLVAR_SAFETY_Panel_Test_Enabled) ! (L:XMLVAR_CautionEnabled) ! (L:XMLVAR_WarningEnabled) ! and and </EMISSIVE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE> (A:ELECTRICAL MASTER BATTERY, Bool) if{ (L:XMLVAR_SAFETY_Panel_Test_Enabled) (L:XMLVAR_CautionEnabled) (L:XMLVAR_WarningEnabled) or or 100 * } els{ 0 } </ANIM_CODE> <ANIM_NAME>#GREEN_LIGHT_ANIM_NAME#</ANIM_NAME> <ANIM_LAG>0</ANIM_LAG> </UseTemplate> </Component> <Component ID="#ORANGE_LIGHT_NODE_ID#" Node="#ORANGE_LIGHT_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE> (L:XMLVAR_SAFETY_Panel_Test_Enabled) (L:XMLVAR_CautionEnabled) (L:XMLVAR_WarningEnabled) or or </EMISSIVE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE> (A:ELECTRICAL MASTER BATTERY, Bool) if{ (L:XMLVAR_SAFETY_Panel_Test_Enabled) ! (L:XMLVAR_CautionEnabled) ! (L:XMLVAR_WarningEnabled) ! and and 100 * } els{ 0 } </ANIM_CODE> <ANIM_NAME>#ORANGE_LIGHT_ANIM_NAME#</ANIM_NAME> <ANIM_LAG>0</ANIM_LAG> </UseTemplate> </Component> </False> </Condition> </Template> <Template Name="ASOBO_SAFETY_Gauge_OxygenPressure_SubTemplate"> <Parameters Type="Default"> <MIN_TEMP>0</MIN_TEMP> <MAX_TEMP>110</MAX_TEMP> <PRESSURE_MIN_TEMP_FAHRENHEIT>1515</PRESSURE_MIN_TEMP_FAHRENHEIT> <PRESSURE_MAX_TEMP_FAHRENHEIT>2040</PRESSURE_MAX_TEMP_FAHRENHEIT> <DISPLAY_PRESSURE_MIN>0</DISPLAY_PRESSURE_MIN> <DISPLAY_PRESSURE_MAX>4000</DISPLAY_PRESSURE_MAX> <NODE_ID>SAFETY_Gauge_OxygenPressure#SUFFIX_ID#</NODE_ID> <ANIM_NAME>SAFETY_Gauge_OxygenPressure#SUFFIX_ID#</ANIM_NAME> <PART_ID>SAFETY_Gauge_OxygenPressure</PART_ID> <ANIM_LENGTH>100</ANIM_LENGTH> <TEMPERATURE_UNIT>fahrenheit</TEMPERATURE_UNIT> </Parameters> <Parameters Type="Override"> <FACTOR Process="Float">#PRESSURE_MAX_TEMP_FAHRENHEIT# #PRESSURE_MIN_TEMP_FAHRENHEIT# - #MAX_TEMP# #MIN_TEMP# - /</FACTOR> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>10</FREQUENCY> <UPDATE_CODE>#FACTOR# (A:AMBIENT TEMPERATURE, #TEMPERATURE_UNIT#) * #PRESSURE_MIN_TEMP_FAHRENHEIT# + (&gt;O:XMLVAR_TargetPressure)</UPDATE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE>(O:XMLVAR_TargetPressure) #DISPLAY_PRESSURE_MAX# min #DISPLAY_PRESSURE_MIN# max #DISPLAY_PRESSURE_MAX# / 100 *</ANIM_CODE> </UseTemplate> </Component> </Template> <Template Name="ASOBO_SAFETY_Light_SubTemplate"> <Parameters Type="Default"> <PART_ID>SAFETY_Switch_Light</PART_ID> <NODE_ID>SAFETY_Switch_Light</NODE_ID> <ANIM_NAME>SAFETY_Switch_Light</ANIM_NAME> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <STATE_MAX_TIMER>0.1</STATE_MAX_TIMER> <SWITCH_TYPE>DIM_OFF_TEST</SWITCH_TYPE> <VAR_NAME>XMLVAR_WarningsAttenuated</VAR_NAME> <VAR_SCOPE>L</VAR_SCOPE> <WWISE_EVENT>light_switch</WWISE_EVENT> <BTN_ID>Light</BTN_ID> </Case> </Switch> </Parameters> <Parameters Type="Override"> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <Switch Param="SWITCH_TYPE"> <Case Value="DIM_OFF_TEST"> <POS_DIM>0</POS_DIM> <POS_TEST>2</POS_TEST> </Case> <Case Value="TEST_OFF_DIM"> <POS_TEST>0</POS_TEST> <POS_DIM>2</POS_DIM> </Case> </Switch> <POS_OFF>1</POS_OFF> <SET_STATE_DIM>(&gt;K:ANNUNCIATOR_SWITCH_OFF) 1 (&gt;#VAR_SCOPE#:#VAR_NAME#)</SET_STATE_DIM> <SET_STATE_OFF>(&gt;K:ANNUNCIATOR_SWITCH_OFF) 0 (&gt;#VAR_SCOPE#:#VAR_NAME#)</SET_STATE_OFF> <SET_STATE_TEST>(&gt;K:ANNUNCIATOR_SWITCH_ON) 0 (&gt;#VAR_SCOPE#:#VAR_NAME#)</SET_STATE_TEST> <GET_STATE_EXTERNAL>(A:ANNUNCIATOR SWITCH, Bool) sp0 (#VAR_SCOPE#:#VAR_NAME#) sp1</GET_STATE_EXTERNAL> <IS_STATE_DIM>l0 ! l1 and</IS_STATE_DIM> <IS_STATE_OFF>l0 ! l1 ! and</IS_STATE_OFF> <IS_STATE_TEST>l0 l1 and</IS_STATE_TEST> </Case> </Switch> </Parameters> <Parameters Type="Default"> <TOOLTIP_TITLE>@TT_Package.SAFETY_LIGHT_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <TT_DESCRIPTION_ID>@TT_Package.SAFETY_LIGHT_ACTION</TT_DESCRIPTION_ID> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <TT_VALUE_DIMMED>@TT_Package.GT_STATE_DIM_MODE</TT_VALUE_DIMMED> <TT_VALUE_OFF>@TT_Package.GT_STATE_OFF</TT_VALUE_OFF> <TT_VALUE_TEST>@TT_Package.GT_STATE_TEST</TT_VALUE_TEST> </Case> </Switch> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <NUM_STATES>3</NUM_STATES> <ENUM_VAL_TO_POS_EXTERNAL>#IS_STATE_DIM# if{ #POS_DIM# sp2 } #IS_STATE_OFF# if{ #POS_OFF# sp2 } #IS_STATE_TEST# if{ #POS_TEST# sp2 } l2</ENUM_VAL_TO_POS_EXTERNAL> <!-- DIM --> <TT_VALUE_#POS_DIM#>#TT_VALUE_DIMMED#</TT_VALUE_#POS_DIM#> <SET_STATE_#POS_DIM#>#SET_STATE_DIM#</SET_STATE_#POS_DIM#> <STR_STATE_#POS_DIM#>Dim</STR_STATE_#POS_DIM#> <!-- OFF --> <TT_VALUE_#POS_OFF#>#TT_VALUE_OFF#</TT_VALUE_#POS_OFF#> <SET_STATE_#POS_OFF#>#SET_STATE_OFF#</SET_STATE_#POS_OFF#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <!-- TEST --> <TT_VALUE_#POS_TEST#>#TT_VALUE_TEST#</TT_VALUE_#POS_TEST#> <SET_STATE_#POS_TEST#>#SET_STATE_TEST#</SET_STATE_#POS_TEST#> <STR_STATE_#POS_TEST#>Test</STR_STATE_#POS_TEST#> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <SWITCH_POSITION_TYPE>L</SWITCH_POSITION_TYPE> <SWITCH_POSITION_VAR>XMLVAR_DayNightSwitch</SWITCH_POSITION_VAR> <SWITCH_POSITION_TYPE_TIMER>L</SWITCH_POSITION_TYPE_TIMER> <SWITCH_POSITION_VAR_TIMER>XMLVAR_DayNightSwitch_Timer</SWITCH_POSITION_VAR_TIMER> <CODE_POS_#POS_DIM#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Dim)</CODE_POS_#POS_DIM#> <CODE_POS_#POS_OFF#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</CODE_POS_#POS_OFF#> <CODE_POS_#POS_TEST#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Test)</CODE_POS_#POS_TEST#> <STATE#POS_DIM#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_DIM# ==</STATE#POS_DIM#_TEST> <STATE#POS_OFF#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_OFF# ==</STATE#POS_OFF#_TEST> <STATE#POS_TEST#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_TEST# ==</STATE#POS_TEST#_TEST> <MOMENTARY_SWITCH/> <STATE#POS_DIM#_TIMER>0</STATE#POS_DIM#_TIMER> <STATE#POS_TEST#_TIMER>0.1</STATE#POS_TEST#_TIMER> </UseTemplate> </Case> </Switch> </Component> </Template> <Template Name="ASOBO_SAFETY_AlternateStaticAir_SubTemplate"> <Parameters Type="Default"> <NODE_ID>SAFETY_Push_AlternateStaticAir#SUFFIX_ID#</NODE_ID> <ANIM_NAME>SAFETY_Push_AlternateStaticAir#SUFFIX_ID#</ANIM_NAME> <PART_ID>SAFETY_Push_AlternateStaticAir</PART_ID> <WWISE_EVENT_1>safety_alternate_static_air_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>safety_alternate_static_air_push_button_off</WWISE_EVENT_2> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> </Parameters> <Parameters Type="Override"> <BTN_ID>Alternate_Static_Air</BTN_ID> </Parameters> <Parameters Type="Default"> <TOOLTIP_TITLE>@TT_Package.CABIN_ALTERNATE_AIR_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <Switch Param="INTERACTION_TYPE"> <Case Value="Push"> <SET_STATE_EXTERNAL>p0 if{ (&gt;K:TOGGLE_ALTERNATE_STATIC) }</SET_STATE_EXTERNAL> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> </Case> <Case Value="Switch"> <ANIM>EXTERNAL</ANIM> <SET_STATE_ON>(A:ALTERNATE STATIC SOURCE OPEN, Bool) ! if{ (&gt;K:TOGGLE_ALTERNATE_STATIC) }</SET_STATE_ON> <SET_STATE_OFF>(A:ALTERNATE STATIC SOURCE OPEN, Bool) if{ (&gt;K:TOGGLE_ALTERNATE_STATIC) }</SET_STATE_OFF> </Case> </Switch> <GET_STATE_EXTERNAL>(A:ALTERNATE STATIC SOURCE OPEN, Bool) sp0</GET_STATE_EXTERNAL> <SIM_STATE_IS_ON_EXTERNAL>l0</SIM_STATE_IS_ON_EXTERNAL> <TT_DESCRIPTION_ID>@TT_Package.CABIN_ALTERNATE_AIR_ACTION</TT_DESCRIPTION_ID> </UseInputEvent> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <UseTemplate Name="ASOBO_GT_Switch_Code"> <ANIM_CODE>(A:ALTERNATE STATIC SOURCE OPEN, Percent)</ANIM_CODE> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> </UseTemplate> </Case> <Case Value="Push"> <UseTemplate Name="ASOBO_GT_Push_Button"> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> </UseTemplate> </Case> </Switch> </Component> </Template> <Template Name="ASOBO_SAFETY_ELT_SubTemplate"> <Parameters Type="Default"> <TYPE>ON_ARM_TEST</TYPE> <NODE_ID>SAFETY_Switch_ELT#SUFFIX_ID#</NODE_ID> <ANIM_NAME>SAFETY_Switch_ELT#SUFFIX_ID#</ANIM_NAME> <EMISSIVE_NODE_ID>SAFETY_Switch_ELT_Text#SUFFIX_ID#</EMISSIVE_NODE_ID> <PART_ID>SWITCH_ELT</PART_ID> <WWISE_EVENT>safety_elt_switch</WWISE_EVENT> <WWISE_EVENT_1>safety_elt_switch_on</WWISE_EVENT_1> <WWISE_EVENT_2>safety_elt_switch_off</WWISE_EVENT_2> <!-- 0=OFF, 1=ARMED, 2=ON, 3=TEST/RESET --> <ELT_VAR>XMLVAR_ELT_STATE</ELT_VAR> <ELT_ACTIVATED_VAR>XMLVAR_ELT_ACTIVATION_TIME</ELT_ACTIVATED_VAR> <ELT_TEST_VAR>XMLVAR_ELT_TEST_TIME</ELT_TEST_VAR> <ELT_SCOPE>L</ELT_SCOPE> <!-- supposed to be around 3 blinks per second by default --> <ELT_LED_BLINK>(E:SIMULATION TIME, second) 6 * 2 %</ELT_LED_BLINK> <ELT_MIN_TIME_ON_FOR_TEST_RESET>1</ELT_MIN_TIME_ON_FOR_TEST_RESET> <ELT_TEST_DURATION>1</ELT_TEST_DURATION> </Parameters> <Parameters Type="Override"> <ELT_OFF>0</ELT_OFF> <ELT_ARM>1</ELT_ARM> <ELT_ON>2</ELT_ON> <ELT_TEST>3</ELT_TEST> </Parameters> <Parameters Type="Default"> <Switch Param="TYPE"> <Case Value="ON_ARM_TEST"> <POS_ON>0</POS_ON> <POS_ARM>1</POS_ARM> <POS_TEST>2</POS_TEST> </Case> <Case Value="ARM_ON"> <POS_ARM>0</POS_ARM> <POS_ON>1</POS_ON> </Case> <Case Value="ARM_ON_OFF"> <POS_ARM>0</POS_ARM> <POS_ON>1</POS_ON> <POS_OFF>2</POS_OFF> </Case> </Switch> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <BTN_ID>ELT#SUFFIX_ID#</BTN_ID> </Parameters> <Parameters Type="Default"> <TOOLTIP_TITLE>@TT_Package.ELT_SWITCH_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <TT_DESCRIPTION_ID>@TT_Package.ELT_SWITCH_ACTION_SET</TT_DESCRIPTION_ID> </Parameters> <Parameters Type="Override"> <Condition Check="#ELT_SCOPE#" Match="L"> <LOCAL_VAR_TO_WATCH_0>#ELT_VAR#</LOCAL_VAR_TO_WATCH_0> </Condition> <LED_ON_CHECK>(A:ELT ACTIVATED, Bool) #ELT_LED_BLINK# and (#ELT_SCOPE#:#ELT_VAR#) 3 == or</LED_ON_CHECK> <ARM_TEST_RESET_CONDITION>(E:SIMULATION TIME, second) (#ELT_SCOPE#:#ELT_TEST_VAR#) - #ELT_MIN_TIME_ON_FOR_TEST_RESET# &gt; (A:ELT ACTIVATED, Bool) and</ARM_TEST_RESET_CONDITION> <SET_STATE_ON>#ELT_ON# (&gt;#ELT_SCOPE#:#ELT_VAR#) (E:SIMULATION TIME, second) (&gt;#ELT_SCOPE#:#ELT_ACTIVATED_VAR#)</SET_STATE_ON> <IS_STATE_ON>(#ELT_SCOPE#:#ELT_VAR#) #ELT_ON# ==</IS_STATE_ON> <SET_STATE_ARM>#ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#)</SET_STATE_ARM> <IS_STATE_ARM>(#ELT_SCOPE#:#ELT_VAR#) #ELT_ARM# ==</IS_STATE_ARM> <SET_STATE_OFF>#ELT_OFF# (&gt;#ELT_SCOPE#:#ELT_VAR#)</SET_STATE_OFF> <IS_STATE_OFF>(#ELT_SCOPE#:#ELT_VAR#) #ELT_OFF# ==</IS_STATE_OFF> <SET_STATE_TEST>#ELT_TEST# (&gt;#ELT_SCOPE#:#ELT_VAR#) (E:SIMULATION TIME, second) (&gt;#ELT_SCOPE#:#ELT_TEST_VAR#)</SET_STATE_TEST> <IS_STATE_TEST>(#ELT_SCOPE#:#ELT_VAR#) #ELT_TEST# ==</IS_STATE_TEST> <Condition Check="ID" Match="1"> <UPDATE_ELT_STATE> (A:ELT ACTIVATED, Bool) if{ #ELT_ON# (&gt;#ELT_SCOPE#:#ELT_VAR#) } els{ #ELT_ON# (#ELT_SCOPE#:#ELT_VAR#) == if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) } #ELT_TEST# (#ELT_SCOPE#:#ELT_VAR#) == if{ (E:SIMULATION TIME, second) (L:XMLVAR_ELT_TEST_TIME) - #ELT_TEST_DURATION# &gt; if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) } } } </UPDATE_ELT_STATE> <ON_STATE_CHANGED_EXTERNAL_CODE>(#ELT_SCOPE#:#ELT_VAR#) #ELT_ON# == (A:ELT ACTIVATED, Bool) s0 != if{ l0 if{ (&gt;K:ELT_OFF) } els{ (&gt;K:ELT_ON) } } </ON_STATE_CHANGED_EXTERNAL_CODE> </Condition> </Parameters> <Condition Valid="NO_EMISSIVE"> <False> <Component ID="#EMISSIVE_NODE_ID#" Node="#EMISSIVE_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>#LED_ON_CHECK#</EMISSIVE_CODE> </UseTemplate> </Component> </False> </Condition> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Condition NotEmpty="UPDATE_ELT_STATE"> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_CODE>#UPDATE_ELT_STATE#</UPDATE_CODE> </UseTemplate> </Condition> <Switch Param="TYPE"> <Case Value="ON_ARM_TEST"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <NUM_STATES>3</NUM_STATES> <GET_STATE_EXTERNAL>(#ELT_SCOPE#:#ELT_VAR#) s0 #ELT_OFF# == if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) (#ELT_SCOPE#:#ELT_VAR#) sp0 }</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0 #ELT_ON# == if{ #POS_ON# sp1 } l0 #ELT_ARM# == if{ #POS_ARM# sp1 } l0 #ELT_TEST# == if{ #POS_TEST# sp1 } l1</ENUM_VAL_TO_POS_EXTERNAL> <!-- ON --> <TT_VALUE_#POS_ON#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ON#> <SET_STATE_#POS_ON#>#SET_STATE_ON#</SET_STATE_#POS_ON#> <STR_STATE_#POS_ON#>On</STR_STATE_#POS_ON#> <!-- ARM --> <TT_VALUE_#POS_ARM#>@TT_Package.GT_STATE_ARM</TT_VALUE_#POS_ARM#> <SET_STATE_#POS_ARM#>#SET_STATE_ARM#</SET_STATE_#POS_ARM#> <STR_STATE_#POS_ARM#>Arm</STR_STATE_#POS_ARM#> <!-- TEST --> <TT_VALUE_#POS_TEST#>@TT_Package.GT_STATE_TEST</TT_VALUE_#POS_TEST#> <SET_STATE_#POS_TEST#>#SET_STATE_TEST#</SET_STATE_#POS_TEST#> <STR_STATE_#POS_TEST#>Test</STR_STATE_#POS_TEST#> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <CODE_POS_#POS_ARM#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Arm)</CODE_POS_#POS_ARM#> <CODE_POS_#POS_ON#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_On)</CODE_POS_#POS_ON#> <CODE_POS_#POS_TEST#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Test)</CODE_POS_#POS_TEST#> <STATE#POS_ARM#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_ARM# ==</STATE#POS_ARM#_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> </UseTemplate> </Case> <Case Value="ARM_ON"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <SET_STATE_OFF>#ARM_TEST_RESET_CONDITION# if{ #SET_STATE_TEST# } els{ #SET_STATE_ARM# }</SET_STATE_OFF> <SET_STATE_ON>#SET_STATE_ON#</SET_STATE_ON> <GET_STATE_EXTERNAL>(A:ELT ACTIVATED, Bool) sp0</GET_STATE_EXTERNAL> <STR_STATE_OFF>Arm</STR_STATE_OFF> <STR_STATE_ON>On</STR_STATE_ON> <TT_VALUE_OFF>(R:1:@TT_Package.GT_STATE_ARM)</TT_VALUE_OFF> <TT_VALUE_ON>@TT_On</TT_VALUE_ON> <SIM_STATE_IS_ON_EXTERNAL>l0</SIM_STATE_IS_ON_EXTERNAL> <SIMVAR_TO_WATCH_0>ELT ACTIVATED</SIMVAR_TO_WATCH_0> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_Code"> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> <ANIM_CODE>(A:ELT ACTIVATED, Percent)</ANIM_CODE> </UseTemplate> </Case> <Case Value="ARM_ON_OFF"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <NUM_STATES>3</NUM_STATES> <GET_STATE_EXTERNAL>(#ELT_SCOPE#:#ELT_VAR#) s0 #ELT_TEST# == if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) (#ELT_SCOPE#:#ELT_VAR#) sp0 }</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0 #ELT_ARM# == l0 #ELT_TEST# == or if{ #POS_ARM# sp2 } l0 #ELT_ON# == if{ #POS_ON# sp2 } l0 #ELT_OFF# == if{ #POS_OFF# sp2 } l2</ENUM_VAL_TO_POS_EXTERNAL> <!-- ARM --> <TT_VALUE_#POS_ARM#>@TT_Package.GT_STATE_ARM</TT_VALUE_#POS_ARM#> <SET_STATE_#POS_ARM#>#ARM_TEST_RESET_CONDITION# if{ #SET_STATE_TEST# } els{ #SET_STATE_ARM# }</SET_STATE_#POS_ARM#> <STR_STATE_#POS_ARM#>Arm</STR_STATE_#POS_ARM#> <!-- ON --> <TT_VALUE_#POS_ON#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ON#> <SET_STATE_#POS_ON#>#SET_STATE_ON#</SET_STATE_#POS_ON#> <STR_STATE_#POS_ON#>On</STR_STATE_#POS_ON#> <!-- OFF --> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <SET_STATE_#POS_OFF#>#SET_STATE_OFF#</SET_STATE_#POS_OFF#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <CODE_POS_#POS_ARM#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Arm)</CODE_POS_#POS_ARM#> <CODE_POS_#POS_ON#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_On)</CODE_POS_#POS_ON#> <CODE_POS_#POS_OFF#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</CODE_POS_#POS_OFF#> <STATE#POS_ARM#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_ARM# ==</STATE#POS_ARM#_TEST> <STATE#POS_ON#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_ON# ==</STATE#POS_ON#_TEST> <STATE#POS_OFF#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_OFF# ==</STATE#POS_OFF#_TEST> </UseTemplate> </Case> </Switch> </Component> </Template> <!-- Generic SAFETY indicators template --> <Template Name="ASOBO_SAFETY_Indicator_SubTemplate"> <Parameters Type="Default"> <EMISSIVE_CODE>0</EMISSIVE_CODE> <REQUIRE_ACK_CODE/> <CANCEL_ACK_CODE/> <DAYNIGHT_FACTOR>0.7</DAYNIGHT_FACTOR> </Parameters> <Parameters Type="Override"> <Condition Check="CHECK_DAYNIGHT_SWITCH"> <EMISSIVE_CODE>#EMISSIVE_CODE# #DAYNIGHT_FACTOR# 1 (L:XMLVAR_WarningsAttenuated) ? *</EMISSIVE_CODE> </Condition> </Parameters> <Parameters Type="Default"> <CUSTOM_TEST_CODE>1</CUSTOM_TEST_CODE> <Condition Check="CHECK_ANNUNCIATOR_SWITCH"> <True> <CUSTOM_TEST_COND>(A:ANNUNCIATOR SWITCH, bool)</CUSTOM_TEST_COND> </True> <False> <CUSTOM_TEST_COND>(L:XMLVAR_LTS_Test)</CUSTOM_TEST_COND> </False> </Condition> </Parameters> <UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge"> <Condition Check="CHECK_ACKNOWLEDGE"> <True> <EMISSIVE_CODE> #EMISSIVE_CODE# (&gt;O:NewIndicatorState) (O:NewIndicatorState) (O:IndicatorActive) != if{ (O:IndicatorActive) if{ 0 (&gt;O:IndicatorActive) (O:Local_Ack_Request_Time) (L:XMLVAR_AcknowledgeTime) &gt; if{ #CANCEL_ACK_CODE# } } els{ 1 (&gt;O:IndicatorActive) (E:SIMULATION TIME, second) (&gt;O:Local_Ack_Request_Time) (O:Local_Ack_Request_Time) (L:XMLVAR_AcknowledgeTime) &gt; if{ #REQUIRE_ACK_CODE# } } } #CUSTOM_TEST_COND# if{ #CUSTOM_TEST_CODE# } els{ (O:Local_Ack_Request_Time) (L:XMLVAR_AcknowledgeTime) &gt; if{ (O:NewIndicatorState) (I:XMLVAR_SAFETY_Blink) min } els{ (O:NewIndicatorState) } } </EMISSIVE_CODE> </True> <False> <EMISSIVE_CODE> #CUSTOM_TEST_COND# if{ #CUSTOM_TEST_CODE# } els{ #EMISSIVE_CODE# } </EMISSIVE_CODE> </False> </Condition> </UseTemplate> </Template> </ModelBehaviors>

Templates

Template list
  • ASOBO_SAFETY_Push_SubTemplate

    Definition from XML
    <Template Name="ASOBO_SAFETY_Push_SubTemplate"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <WWISE_EVENT_1>safety_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>safety_push_button_off</WWISE_EVENT_2> <ANIM_NAME>SAFETY_Push_#PUSH_ID##SUFFIX_ID#</ANIM_NAME> <NODE_ID>SAFETY_Push_#PUSH_ID##SUFFIX_ID#</NODE_ID> <PART_ID>SAFETY_Push_#PUSH_ID#</PART_ID> <Switch Param="TYPE"> <Case Value="AIRLINER"> <NODE_ID_SEQ1>SAFETY_Push_#PUSH_ID##SUFFIX_ID#_SEQ1</NODE_ID_SEQ1> <NODE_ID_SEQ2>SAFETY_Push_#PUSH_ID##SUFFIX_ID#_SEQ2</NODE_ID_SEQ2> </Case> </Switch> <Condition NotEmpty="IS_STATE_ACTIVE"> <EMISSIVE_CODE>#IS_STATE_ACTIVE#</EMISSIVE_CODE> </Condition> <BTN_ID>#PUSH_ID##SUFFIX_ID#</BTN_ID> <RELEASE_EVENT/> <ANIM_VAR>_ButtonAnimVar</ANIM_VAR> <ANIM_VAR_TYPE>O</ANIM_VAR_TYPE> </Parameters> <Parameters Type="Override"> <ANIM_CODE>(#ANIM_VAR_TYPE#:#ANIM_VAR#)</ANIM_CODE> <PUSH_EVENT>#PUSH_EVENT# 100 (&gt;#ANIM_VAR_TYPE#:#ANIM_VAR#)</PUSH_EVENT> <RELEASE_EVENT>#RELEASE_EVENT# 0 (&gt;#ANIM_VAR_TYPE#:#ANIM_VAR#)</RELEASE_EVENT> <Condition NotEmpty="EMISSIVE_CODE"> <EMISSIVE_CODE>#EMISSIVE_CODE# (#ANIM_VAR_TYPE#:#ANIM_VAR#) 0 &gt; or</EMISSIVE_CODE> </Condition> <Condition NotEmpty="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> </Condition> </Parameters> <Component ID="SAFETY_#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="SAFETY"> <BINDING_DEC_0>Release</BINDING_DEC_0> <BINDING_DEC_0_PARAM_0>0</BINDING_DEC_0_PARAM_0> <SET_STATE_EXTERNAL>if{ #PUSH_EVENT# } els{ #RELEASE_EVENT# }</SET_STATE_EXTERNAL> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> <ANIM>EXTERNAL</ANIM> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Anim_Code"/> <UseTemplate Name="ASOBO_GT_Push_Button_Held"> <Condition NotEmpty="IS_STATE_ACTIVE_SEQ1"> <EMISSIVE_CODE/> </Condition> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> <LEFT_LEAVE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Release)</LEFT_LEAVE_CODE> <ANIM_HANDLED_SEPARATELY>True</ANIM_HANDLED_SEPARATELY> </UseTemplate> </Component> <Switch Param="TYPE"> <Case Value="AIRLINER"> <Condition NotEmpty="IS_STATE_ACTIVE_SEQ1"> <Component ID="#NODE_ID_SEQ1#" Node="#NODE_ID_SEQ1#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>#IS_STATE_ACTIVE_SEQ1#</EMISSIVE_CODE> </UseTemplate> </Component> </Condition> <Condition NotEmpty="IS_STATE_ACTIVE_SEQ2"> <Component ID="#NODE_ID_SEQ2#" Node="#NODE_ID_SEQ2#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>#IS_STATE_ACTIVE_SEQ2#</EMISSIVE_CODE> </UseTemplate> </Component> </Condition> </Case> </Switch> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • INPUT_EVENT_ID_SOURCE
      • WWISE_EVENT_1
      • WWISE_EVENT_2
      • ANIM_NAME (using PUSH_ID, SUFFIX_ID)
      • NODE_ID (using PUSH_ID, SUFFIX_ID)
      • PART_ID (using PUSH_ID)
      • BTN_ID (using PUSH_ID, SUFFIX_ID)
      • RELEASE_EVENT
      • ANIM_VAR
      • ANIM_VAR_TYPE

      Condition: Switch(TYPE)

      • Case: AIRLINER

        Parameters set:

        • NODE_ID_SEQ1 (using PUSH_ID, SUFFIX_ID)
        • NODE_ID_SEQ2 (using PUSH_ID, SUFFIX_ID)

      Condition: NotEmpty(IS_STATE_ACTIVE)

      • Case: True

        Parameters set:

        • EMISSIVE_CODE (using IS_STATE_ACTIVE)
    • Override

      Parameters set:

      • ANIM_CODE (using ANIM_VAR_TYPE, ANIM_VAR)
      • PUSH_EVENT (using PUSH_EVENT, ANIM_VAR_TYPE, ANIM_VAR)
      • RELEASE_EVENT (using RELEASE_EVENT, ANIM_VAR_TYPE, ANIM_VAR)

      Condition: NotEmpty(EMISSIVE_CODE)

      • Case: True

        Parameters set:

        • EMISSIVE_CODE (using EMISSIVE_CODE, ANIM_VAR_TYPE, ANIM_VAR)

      Condition: NotEmpty(TOOLTIP_TITLE)

      • Case: True

        Parameters set:

        • TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)

    Parameters read:

    • NODE_ID

    Components:

    • SAFETY_#NODE_ID# (Node: #NODE_ID#)

      Parameters set:

      • BINDING_DEC_0
      • BINDING_DEC_0_PARAM_0
      • SET_STATE_EXTERNAL (using PUSH_EVENT, RELEASE_EVENT)
      • BINDING_INC_0
      • BINDING_INC_0_PARAM_0
      • ANIM

      Templates used:

      • ASOBO_GT_Anim_Code
      • ASOBO_GT_Push_Button_Held

        Parameters set:

        • LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
        • LEFT_LEAVE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
        • ANIM_HANDLED_SEPARATELY

        Condition: NotEmpty(IS_STATE_ACTIVE_SEQ1)

        • Case: True

          Parameters set:

          • EMISSIVE_CODE

    Condition: Switch(TYPE)

    • Case: AIRLINER

      Condition: NotEmpty(IS_STATE_ACTIVE_SEQ1)

      • Case: True

        Parameters read:

        • NODE_ID_SEQ1

        Components:

        • #NODE_ID_SEQ1# (Node: #NODE_ID_SEQ1#)

          Templates used:

      Condition: NotEmpty(IS_STATE_ACTIVE_SEQ2)

      • Case: True

        Parameters read:

        • NODE_ID_SEQ2

        Components:

        • #NODE_ID_SEQ2# (Node: #NODE_ID_SEQ2#)

          Templates used:

  • ASOBO_SAFETY_Push_Acknowledge_SubTemplate

    Definition from XML
    <Template Name="ASOBO_SAFETY_Push_Acknowledge_SubTemplate"> <Parameters Type="Default"> <NODE_ID>SAFETY_Push_Acknowledge</NODE_ID> <ANIM_NAME>SAFETY_Push_Acknowledge</ANIM_NAME> <GREEN_LIGHT_NODE_ID>SAFETY_Acknowledge_Light_Green</GREEN_LIGHT_NODE_ID> <ORANGE_LIGHT_NODE_ID>SAFETY_Acknowledge_Light_Orange</ORANGE_LIGHT_NODE_ID> <GREEN_LIGHT_ANIM_NAME>SAFETY_Acknowledge_Light_Green</GREEN_LIGHT_ANIM_NAME> <ORANGE_LIGHT_ANIM_NAME>SAFETY_Acknowledge_Light_Orange</ORANGE_LIGHT_ANIM_NAME> <WWISE_EVENT_1>annunciator_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>annunciator_push_button_off</WWISE_EVENT_2> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <NORMALIZED_TIME_2>0.3</NORMALIZED_TIME_2> <TOOLTIP_TITLE>@TT_Package.SAFETY_PUSH_MASTER_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.SAFETY_PUSH_MASTER_ACTION</TT_DESCRIPTION_ID> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> </Parameters> <Parameters Type="Override"> <ACK_CODE> 0 (&gt;L:XMLVAR_SAFETY_Panel_Test_Enabled) (E:SIMULATION TIME, second) (&gt;L:XMLVAR_AcknowledgeTime) 0 (&gt;I:XMLVAR_CautionWaitingAck) 0 (&gt;I:XMLVAR_WarningWaitingAck) 0 (&gt;L:XMLVAR_CautionEnabled) 0 (&gt;L:XMLVAR_WarningEnabled) </ACK_CODE> <LONG_PRESS_CODE>1 (&gt;L:XMLVAR_SAFETY_Panel_Test_Enabled)</LONG_PRESS_CODE> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Parameters Type="Override"> <BTN_ID>Acknowledge</BTN_ID> <LONG_CLICK_TIME>2</LONG_CLICK_TIME> <Condition NotEmpty="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_Acknowledge</TOOLTIP_ENTRY_0> </Condition> </Parameters> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>2</FREQUENCY> <UPDATE_CODE>(I:XMLVAR_SAFETY_Blink_Step) ++ 3 % (&gt;I:XMLVAR_SAFETY_Blink_Step) (I:XMLVAR_SAFETY_Blink_Step) 2 &lt; (&gt;I:XMLVAR_SAFETY_Blink)</UPDATE_CODE> </UseTemplate> <UseInputEvent ID="#USE_INPUT_EVENT#"> <ANIM>HOLD</ANIM> <SET_ARG_COUNT>2</SET_ARG_COUNT> <SET_STATE_EXTERNAL>p0 sp0 l0 0 == if{ (O:_PressTime) 0 &gt; if{ (E:SIMULATION TIME, second) (O:_PressTime) - #LONG_CLICK_TIME# &lt; if{ #ACK_CODE# } els{ #LONG_PRESS_CODE# } 0 (&gt;O:_PressTime) } } l0 1 == if{ (E:SIMULATION TIME, second) (&gt;O:_PressTime) p1 (&gt;O:_PressForDuration) } </SET_STATE_EXTERNAL> <BINDING_SET_0>Push_Long</BINDING_SET_0> <BINDING_SET_0_PARAM_0>1</BINDING_SET_0_PARAM_0> <BINDING_SET_0_PARAM_1>#LONG_CLICK_TIME#</BINDING_SET_0_PARAM_1> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> <BINDING_DEC_0>Release</BINDING_DEC_0> <BINDING_DEC_0_PARAM_0>0</BINDING_DEC_0_PARAM_0> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Push_Button_Timed"> <PART_ID>SAFETY_Push_Acknowledge</PART_ID> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> <SHORT_CLICK_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Release)</SHORT_CLICK_CODE> <LONG_CLICK_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Release)</LONG_CLICK_CODE> </UseTemplate> <Condition Check="USE_EMISSIVE_BUTTON"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>(L:XMLVAR_CautionEnabled) (L:XMLVAR_WarningEnabled) or (L:XMLVAR_LTS_Test) or</EMISSIVE_CODE> </UseTemplate> </Condition> </Component> <Condition Check="NO_INDICATOR_LIGHTS"> <False> <Component ID="#GREEN_LIGHT_NODE_ID#" Node="#GREEN_LIGHT_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE> (L:XMLVAR_SAFETY_Panel_Test_Enabled) ! (L:XMLVAR_CautionEnabled) ! (L:XMLVAR_WarningEnabled) ! and and </EMISSIVE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE> (A:ELECTRICAL MASTER BATTERY, Bool) if{ (L:XMLVAR_SAFETY_Panel_Test_Enabled) (L:XMLVAR_CautionEnabled) (L:XMLVAR_WarningEnabled) or or 100 * } els{ 0 } </ANIM_CODE> <ANIM_NAME>#GREEN_LIGHT_ANIM_NAME#</ANIM_NAME> <ANIM_LAG>0</ANIM_LAG> </UseTemplate> </Component> <Component ID="#ORANGE_LIGHT_NODE_ID#" Node="#ORANGE_LIGHT_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE> (L:XMLVAR_SAFETY_Panel_Test_Enabled) (L:XMLVAR_CautionEnabled) (L:XMLVAR_WarningEnabled) or or </EMISSIVE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE> (A:ELECTRICAL MASTER BATTERY, Bool) if{ (L:XMLVAR_SAFETY_Panel_Test_Enabled) ! (L:XMLVAR_CautionEnabled) ! (L:XMLVAR_WarningEnabled) ! and and 100 * } els{ 0 } </ANIM_CODE> <ANIM_NAME>#ORANGE_LIGHT_ANIM_NAME#</ANIM_NAME> <ANIM_LAG>0</ANIM_LAG> </UseTemplate> </Component> </False> </Condition> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • NODE_ID
      • ANIM_NAME
      • GREEN_LIGHT_NODE_ID
      • ORANGE_LIGHT_NODE_ID
      • GREEN_LIGHT_ANIM_NAME
      • ORANGE_LIGHT_ANIM_NAME
      • WWISE_EVENT_1
      • WWISE_EVENT_2
      • NORMALIZED_TIME_1
      • NORMALIZED_TIME_2
      • TOOLTIP_TITLE
      • TT_DESCRIPTION_ID
      • INPUT_EVENT_ID_SOURCE
      • USE_INPUT_EVENT
    • Override

      Parameters set:

      • ACK_CODE
      • LONG_PRESS_CODE

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Parameters read:

      • USE_INPUT_EVENT

      Parameters set:

      • BTN_ID
      • LONG_CLICK_TIME
      • ANIM
      • SET_ARG_COUNT
      • SET_STATE_EXTERNAL (using LONG_CLICK_TIME, ACK_CODE, LONG_PRESS_CODE)
      • BINDING_SET_0
      • BINDING_SET_0_PARAM_0
      • BINDING_SET_0_PARAM_1 (using LONG_CLICK_TIME)
      • BINDING_INC_0
      • BINDING_INC_0_PARAM_0
      • BINDING_DEC_0
      • BINDING_DEC_0_PARAM_0

      Templates used:

      • ASOBO_GT_Update

        Parameters set:

        • FREQUENCY
        • UPDATE_CODE
      • ASOBO_GT_Push_Button_Timed

        Parameters set:

        • PART_ID
        • LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
        • SHORT_CLICK_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
        • LONG_CLICK_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)

      Condition: NotEmpty(TOOLTIP_TITLE)

      • Case: True

        Parameters set:

        • TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE)

      Condition: Check(USE_EMISSIVE_BUTTON)

    Condition: Check(NO_INDICATOR_LIGHTS)

    • Case: False

      Parameters read:

      • GREEN_LIGHT_NODE_ID
      • ORANGE_LIGHT_NODE_ID

      Components:

      • #GREEN_LIGHT_NODE_ID# (Node: #GREEN_LIGHT_NODE_ID#)

        Templates used:

      • #ORANGE_LIGHT_NODE_ID# (Node: #ORANGE_LIGHT_NODE_ID#)

        Templates used:

  • ASOBO_SAFETY_Gauge_OxygenPressure_SubTemplate

    Definition from XML
    <Template Name="ASOBO_SAFETY_Gauge_OxygenPressure_SubTemplate"> <Parameters Type="Default"> <MIN_TEMP>0</MIN_TEMP> <MAX_TEMP>110</MAX_TEMP> <PRESSURE_MIN_TEMP_FAHRENHEIT>1515</PRESSURE_MIN_TEMP_FAHRENHEIT> <PRESSURE_MAX_TEMP_FAHRENHEIT>2040</PRESSURE_MAX_TEMP_FAHRENHEIT> <DISPLAY_PRESSURE_MIN>0</DISPLAY_PRESSURE_MIN> <DISPLAY_PRESSURE_MAX>4000</DISPLAY_PRESSURE_MAX> <NODE_ID>SAFETY_Gauge_OxygenPressure#SUFFIX_ID#</NODE_ID> <ANIM_NAME>SAFETY_Gauge_OxygenPressure#SUFFIX_ID#</ANIM_NAME> <PART_ID>SAFETY_Gauge_OxygenPressure</PART_ID> <ANIM_LENGTH>100</ANIM_LENGTH> <TEMPERATURE_UNIT>fahrenheit</TEMPERATURE_UNIT> </Parameters> <Parameters Type="Override"> <FACTOR Process="Float">#PRESSURE_MAX_TEMP_FAHRENHEIT# #PRESSURE_MIN_TEMP_FAHRENHEIT# - #MAX_TEMP# #MIN_TEMP# - /</FACTOR> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseTemplate Name="ASOBO_GT_Update"> <FREQUENCY>10</FREQUENCY> <UPDATE_CODE>#FACTOR# (A:AMBIENT TEMPERATURE, #TEMPERATURE_UNIT#) * #PRESSURE_MIN_TEMP_FAHRENHEIT# + (&gt;O:XMLVAR_TargetPressure)</UPDATE_CODE> </UseTemplate> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE>(O:XMLVAR_TargetPressure) #DISPLAY_PRESSURE_MAX# min #DISPLAY_PRESSURE_MIN# max #DISPLAY_PRESSURE_MAX# / 100 *</ANIM_CODE> </UseTemplate> </Component> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • MIN_TEMP
      • MAX_TEMP
      • PRESSURE_MIN_TEMP_FAHRENHEIT
      • PRESSURE_MAX_TEMP_FAHRENHEIT
      • DISPLAY_PRESSURE_MIN
      • DISPLAY_PRESSURE_MAX
      • NODE_ID (using SUFFIX_ID)
      • ANIM_NAME (using SUFFIX_ID)
      • PART_ID
      • ANIM_LENGTH
      • TEMPERATURE_UNIT
    • Override

      Parameters set:

      • FACTOR (using PRESSURE_MAX_TEMP_FAHRENHEIT, PRESSURE_MIN_TEMP_FAHRENHEIT, MAX_TEMP, MIN_TEMP)

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Templates used:

      • ASOBO_GT_Update

        Parameters set:

        • FREQUENCY
        • UPDATE_CODE (using FACTOR, TEMPERATURE_UNIT, PRESSURE_MIN_TEMP_FAHRENHEIT)
      • ASOBO_GT_Anim_Code

        Parameters set:

        • ANIM_CODE (using DISPLAY_PRESSURE_MAX, DISPLAY_PRESSURE_MIN)
  • ASOBO_SAFETY_Light_SubTemplate

    Definition from XML
    <Template Name="ASOBO_SAFETY_Light_SubTemplate"> <Parameters Type="Default"> <PART_ID>SAFETY_Switch_Light</PART_ID> <NODE_ID>SAFETY_Switch_Light</NODE_ID> <ANIM_NAME>SAFETY_Switch_Light</ANIM_NAME> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <STATE_MAX_TIMER>0.1</STATE_MAX_TIMER> <SWITCH_TYPE>DIM_OFF_TEST</SWITCH_TYPE> <VAR_NAME>XMLVAR_WarningsAttenuated</VAR_NAME> <VAR_SCOPE>L</VAR_SCOPE> <WWISE_EVENT>light_switch</WWISE_EVENT> <BTN_ID>Light</BTN_ID> </Case> </Switch> </Parameters> <Parameters Type="Override"> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <Switch Param="SWITCH_TYPE"> <Case Value="DIM_OFF_TEST"> <POS_DIM>0</POS_DIM> <POS_TEST>2</POS_TEST> </Case> <Case Value="TEST_OFF_DIM"> <POS_TEST>0</POS_TEST> <POS_DIM>2</POS_DIM> </Case> </Switch> <POS_OFF>1</POS_OFF> <SET_STATE_DIM>(&gt;K:ANNUNCIATOR_SWITCH_OFF) 1 (&gt;#VAR_SCOPE#:#VAR_NAME#)</SET_STATE_DIM> <SET_STATE_OFF>(&gt;K:ANNUNCIATOR_SWITCH_OFF) 0 (&gt;#VAR_SCOPE#:#VAR_NAME#)</SET_STATE_OFF> <SET_STATE_TEST>(&gt;K:ANNUNCIATOR_SWITCH_ON) 0 (&gt;#VAR_SCOPE#:#VAR_NAME#)</SET_STATE_TEST> <GET_STATE_EXTERNAL>(A:ANNUNCIATOR SWITCH, Bool) sp0 (#VAR_SCOPE#:#VAR_NAME#) sp1</GET_STATE_EXTERNAL> <IS_STATE_DIM>l0 ! l1 and</IS_STATE_DIM> <IS_STATE_OFF>l0 ! l1 ! and</IS_STATE_OFF> <IS_STATE_TEST>l0 l1 and</IS_STATE_TEST> </Case> </Switch> </Parameters> <Parameters Type="Default"> <TOOLTIP_TITLE>@TT_Package.SAFETY_LIGHT_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <TT_DESCRIPTION_ID>@TT_Package.SAFETY_LIGHT_ACTION</TT_DESCRIPTION_ID> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <TT_VALUE_DIMMED>@TT_Package.GT_STATE_DIM_MODE</TT_VALUE_DIMMED> <TT_VALUE_OFF>@TT_Package.GT_STATE_OFF</TT_VALUE_OFF> <TT_VALUE_TEST>@TT_Package.GT_STATE_TEST</TT_VALUE_TEST> </Case> </Switch> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <NUM_STATES>3</NUM_STATES> <ENUM_VAL_TO_POS_EXTERNAL>#IS_STATE_DIM# if{ #POS_DIM# sp2 } #IS_STATE_OFF# if{ #POS_OFF# sp2 } #IS_STATE_TEST# if{ #POS_TEST# sp2 } l2</ENUM_VAL_TO_POS_EXTERNAL> <TT_VALUE_#POS_DIM#>#TT_VALUE_DIMMED#</TT_VALUE_#POS_DIM#> <SET_STATE_#POS_DIM#>#SET_STATE_DIM#</SET_STATE_#POS_DIM#> <STR_STATE_#POS_DIM#>Dim</STR_STATE_#POS_DIM#> <TT_VALUE_#POS_OFF#>#TT_VALUE_OFF#</TT_VALUE_#POS_OFF#> <SET_STATE_#POS_OFF#>#SET_STATE_OFF#</SET_STATE_#POS_OFF#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> <TT_VALUE_#POS_TEST#>#TT_VALUE_TEST#</TT_VALUE_#POS_TEST#> <SET_STATE_#POS_TEST#>#SET_STATE_TEST#</SET_STATE_#POS_TEST#> <STR_STATE_#POS_TEST#>Test</STR_STATE_#POS_TEST#> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <SWITCH_POSITION_TYPE>L</SWITCH_POSITION_TYPE> <SWITCH_POSITION_VAR>XMLVAR_DayNightSwitch</SWITCH_POSITION_VAR> <SWITCH_POSITION_TYPE_TIMER>L</SWITCH_POSITION_TYPE_TIMER> <SWITCH_POSITION_VAR_TIMER>XMLVAR_DayNightSwitch_Timer</SWITCH_POSITION_VAR_TIMER> <CODE_POS_#POS_DIM#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Dim)</CODE_POS_#POS_DIM#> <CODE_POS_#POS_OFF#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</CODE_POS_#POS_OFF#> <CODE_POS_#POS_TEST#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Test)</CODE_POS_#POS_TEST#> <STATE#POS_DIM#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_DIM# ==</STATE#POS_DIM#_TEST> <STATE#POS_OFF#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_OFF# ==</STATE#POS_OFF#_TEST> <STATE#POS_TEST#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_TEST# ==</STATE#POS_TEST#_TEST> <MOMENTARY_SWITCH/> <STATE#POS_DIM#_TIMER>0</STATE#POS_DIM#_TIMER> <STATE#POS_TEST#_TIMER>0.1</STATE#POS_TEST#_TIMER> </UseTemplate> </Case> </Switch> </Component> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • PART_ID
      • NODE_ID
      • ANIM_NAME
      • INPUT_EVENT_ID_SOURCE
      • USE_INPUT_EVENT

      Condition: Switch(INTERACTION_TYPE)

      • Case: Switch

        Parameters set:

        • STATE_MAX_TIMER
        • SWITCH_TYPE
        • VAR_NAME
        • VAR_SCOPE
        • WWISE_EVENT
        • BTN_ID
    • Override

      Condition: Switch(INTERACTION_TYPE)

      • Case: Switch

        Parameters set:

        • POS_OFF
        • SET_STATE_DIM (using VAR_SCOPE, VAR_NAME)
        • SET_STATE_OFF (using VAR_SCOPE, VAR_NAME)
        • SET_STATE_TEST (using VAR_SCOPE, VAR_NAME)
        • GET_STATE_EXTERNAL (using VAR_SCOPE, VAR_NAME)
        • IS_STATE_DIM
        • IS_STATE_OFF
        • IS_STATE_TEST

        Condition: Switch(SWITCH_TYPE)

        • Case: DIM_OFF_TEST

          Parameters set:

          • POS_DIM
          • POS_TEST
        • Case: TEST_OFF_DIM

          Parameters set:

          • POS_TEST
          • POS_DIM
    • Default

      Parameters set:

      • TOOLTIP_TITLE
      • TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
      • TT_DESCRIPTION_ID

      Condition: Switch(INTERACTION_TYPE)

      • Case: Switch

        Parameters set:

        • TT_VALUE_DIMMED
        • TT_VALUE_OFF
        • TT_VALUE_TEST

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Condition: Switch(INTERACTION_TYPE)

      • Case: Switch

        Parameters read:

        • USE_INPUT_EVENT

        Parameters set:

        • NUM_STATES
        • ENUM_VAL_TO_POS_EXTERNAL (using IS_STATE_DIM, POS_DIM, IS_STATE_OFF, POS_OFF, IS_STATE_TEST, POS_TEST)
        • TT_VALUE_#POS_DIM# (using TT_VALUE_DIMMED)
        • SET_STATE_#POS_DIM# (using SET_STATE_DIM)
        • STR_STATE_#POS_DIM#
        • TT_VALUE_#POS_OFF# (using TT_VALUE_OFF)
        • SET_STATE_#POS_OFF# (using SET_STATE_OFF)
        • STR_STATE_#POS_OFF#
        • TT_VALUE_#POS_TEST# (using TT_VALUE_TEST)
        • SET_STATE_#POS_TEST# (using SET_STATE_TEST)
        • STR_STATE_#POS_TEST#

        Templates used:

        • ASOBO_GT_Switch_3States

          Parameters set:

          • SWITCH_POSITION_TYPE
          • SWITCH_POSITION_VAR
          • SWITCH_POSITION_TYPE_TIMER
          • SWITCH_POSITION_VAR_TIMER
          • CODE_POS_#POS_DIM# (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_DIM#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_DIM)
          • STATE#POS_OFF#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_OFF)
          • STATE#POS_TEST#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_TEST)
          • MOMENTARY_SWITCH
          • STATE#POS_DIM#_TIMER
          • STATE#POS_TEST#_TIMER
  • ASOBO_SAFETY_AlternateStaticAir_SubTemplate

    Definition from XML
    <Template Name="ASOBO_SAFETY_AlternateStaticAir_SubTemplate"> <Parameters Type="Default"> <NODE_ID>SAFETY_Push_AlternateStaticAir#SUFFIX_ID#</NODE_ID> <ANIM_NAME>SAFETY_Push_AlternateStaticAir#SUFFIX_ID#</ANIM_NAME> <PART_ID>SAFETY_Push_AlternateStaticAir</PART_ID> <WWISE_EVENT_1>safety_alternate_static_air_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>safety_alternate_static_air_push_button_off</WWISE_EVENT_2> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> </Parameters> <Parameters Type="Override"> <BTN_ID>Alternate_Static_Air</BTN_ID> </Parameters> <Parameters Type="Default"> <TOOLTIP_TITLE>@TT_Package.CABIN_ALTERNATE_AIR_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <Switch Param="INTERACTION_TYPE"> <Case Value="Push"> <SET_STATE_EXTERNAL>p0 if{ (&gt;K:TOGGLE_ALTERNATE_STATIC) }</SET_STATE_EXTERNAL> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> </Case> <Case Value="Switch"> <ANIM>EXTERNAL</ANIM> <SET_STATE_ON>(A:ALTERNATE STATIC SOURCE OPEN, Bool) ! if{ (&gt;K:TOGGLE_ALTERNATE_STATIC) }</SET_STATE_ON> <SET_STATE_OFF>(A:ALTERNATE STATIC SOURCE OPEN, Bool) if{ (&gt;K:TOGGLE_ALTERNATE_STATIC) }</SET_STATE_OFF> </Case> </Switch> <GET_STATE_EXTERNAL>(A:ALTERNATE STATIC SOURCE OPEN, Bool) sp0</GET_STATE_EXTERNAL> <SIM_STATE_IS_ON_EXTERNAL>l0</SIM_STATE_IS_ON_EXTERNAL> <TT_DESCRIPTION_ID>@TT_Package.CABIN_ALTERNATE_AIR_ACTION</TT_DESCRIPTION_ID> </UseInputEvent> <Switch Param="INTERACTION_TYPE"> <Case Value="Switch"> <UseTemplate Name="ASOBO_GT_Switch_Code"> <ANIM_CODE>(A:ALTERNATE STATIC SOURCE OPEN, Percent)</ANIM_CODE> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> </UseTemplate> </Case> <Case Value="Push"> <UseTemplate Name="ASOBO_GT_Push_Button"> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> </UseTemplate> </Case> </Switch> </Component> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • NODE_ID (using SUFFIX_ID)
      • ANIM_NAME (using SUFFIX_ID)
      • PART_ID
      • WWISE_EVENT_1
      • WWISE_EVENT_2
      • INPUT_EVENT_ID_SOURCE
      • USE_INPUT_EVENT
    • Override

      Parameters set:

      • BTN_ID
    • Default

      Parameters set:

      • TOOLTIP_TITLE
      • TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Parameters read:

      • USE_INPUT_EVENT

      Parameters set:

      • GET_STATE_EXTERNAL
      • SIM_STATE_IS_ON_EXTERNAL
      • TT_DESCRIPTION_ID

      Condition: Switch(INTERACTION_TYPE)

      • Case: Push

        Parameters set:

        • SET_STATE_EXTERNAL
        • BINDING_INC_0
        • BINDING_INC_0_PARAM_0
      • Case: Switch

        Parameters set:

        • ANIM
        • SET_STATE_ON
        • SET_STATE_OFF

      Condition: Switch(INTERACTION_TYPE)

      • Case: Switch

        Templates used:

        • ASOBO_GT_Switch_Code

          Parameters set:

          • ANIM_CODE
          • LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
      • Case: Push

        Templates used:

  • ASOBO_SAFETY_ELT_SubTemplate

    Definition from XML
    <Template Name="ASOBO_SAFETY_ELT_SubTemplate"> <Parameters Type="Default"> <TYPE>ON_ARM_TEST</TYPE> <NODE_ID>SAFETY_Switch_ELT#SUFFIX_ID#</NODE_ID> <ANIM_NAME>SAFETY_Switch_ELT#SUFFIX_ID#</ANIM_NAME> <EMISSIVE_NODE_ID>SAFETY_Switch_ELT_Text#SUFFIX_ID#</EMISSIVE_NODE_ID> <PART_ID>SWITCH_ELT</PART_ID> <WWISE_EVENT>safety_elt_switch</WWISE_EVENT> <WWISE_EVENT_1>safety_elt_switch_on</WWISE_EVENT_1> <WWISE_EVENT_2>safety_elt_switch_off</WWISE_EVENT_2> <ELT_VAR>XMLVAR_ELT_STATE</ELT_VAR> <ELT_ACTIVATED_VAR>XMLVAR_ELT_ACTIVATION_TIME</ELT_ACTIVATED_VAR> <ELT_TEST_VAR>XMLVAR_ELT_TEST_TIME</ELT_TEST_VAR> <ELT_SCOPE>L</ELT_SCOPE> <ELT_LED_BLINK>(E:SIMULATION TIME, second) 6 * 2 %</ELT_LED_BLINK> <ELT_MIN_TIME_ON_FOR_TEST_RESET>1</ELT_MIN_TIME_ON_FOR_TEST_RESET> <ELT_TEST_DURATION>1</ELT_TEST_DURATION> </Parameters> <Parameters Type="Override"> <ELT_OFF>0</ELT_OFF> <ELT_ARM>1</ELT_ARM> <ELT_ON>2</ELT_ON> <ELT_TEST>3</ELT_TEST> </Parameters> <Parameters Type="Default"> <Switch Param="TYPE"> <Case Value="ON_ARM_TEST"> <POS_ON>0</POS_ON> <POS_ARM>1</POS_ARM> <POS_TEST>2</POS_TEST> </Case> <Case Value="ARM_ON"> <POS_ARM>0</POS_ARM> <POS_ON>1</POS_ON> </Case> <Case Value="ARM_ON_OFF"> <POS_ARM>0</POS_ARM> <POS_ON>1</POS_ON> <POS_OFF>2</POS_OFF> </Case> </Switch> <USE_INPUT_EVENT>SAFETY</USE_INPUT_EVENT> <INPUT_EVENT_ID_SOURCE>SAFETY</INPUT_EVENT_ID_SOURCE> <BTN_ID>ELT#SUFFIX_ID#</BTN_ID> </Parameters> <Parameters Type="Default"> <TOOLTIP_TITLE>@TT_Package.ELT_SWITCH_TITLE</TOOLTIP_TITLE> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> <TT_DESCRIPTION_ID>@TT_Package.ELT_SWITCH_ACTION_SET</TT_DESCRIPTION_ID> </Parameters> <Parameters Type="Override"> <Condition Check="#ELT_SCOPE#" Match="L"> <LOCAL_VAR_TO_WATCH_0>#ELT_VAR#</LOCAL_VAR_TO_WATCH_0> </Condition> <LED_ON_CHECK>(A:ELT ACTIVATED, Bool) #ELT_LED_BLINK# and (#ELT_SCOPE#:#ELT_VAR#) 3 == or</LED_ON_CHECK> <ARM_TEST_RESET_CONDITION>(E:SIMULATION TIME, second) (#ELT_SCOPE#:#ELT_TEST_VAR#) - #ELT_MIN_TIME_ON_FOR_TEST_RESET# &gt; (A:ELT ACTIVATED, Bool) and</ARM_TEST_RESET_CONDITION> <SET_STATE_ON>#ELT_ON# (&gt;#ELT_SCOPE#:#ELT_VAR#) (E:SIMULATION TIME, second) (&gt;#ELT_SCOPE#:#ELT_ACTIVATED_VAR#)</SET_STATE_ON> <IS_STATE_ON>(#ELT_SCOPE#:#ELT_VAR#) #ELT_ON# ==</IS_STATE_ON> <SET_STATE_ARM>#ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#)</SET_STATE_ARM> <IS_STATE_ARM>(#ELT_SCOPE#:#ELT_VAR#) #ELT_ARM# ==</IS_STATE_ARM> <SET_STATE_OFF>#ELT_OFF# (&gt;#ELT_SCOPE#:#ELT_VAR#)</SET_STATE_OFF> <IS_STATE_OFF>(#ELT_SCOPE#:#ELT_VAR#) #ELT_OFF# ==</IS_STATE_OFF> <SET_STATE_TEST>#ELT_TEST# (&gt;#ELT_SCOPE#:#ELT_VAR#) (E:SIMULATION TIME, second) (&gt;#ELT_SCOPE#:#ELT_TEST_VAR#)</SET_STATE_TEST> <IS_STATE_TEST>(#ELT_SCOPE#:#ELT_VAR#) #ELT_TEST# ==</IS_STATE_TEST> <Condition Check="ID" Match="1"> <UPDATE_ELT_STATE> (A:ELT ACTIVATED, Bool) if{ #ELT_ON# (&gt;#ELT_SCOPE#:#ELT_VAR#) } els{ #ELT_ON# (#ELT_SCOPE#:#ELT_VAR#) == if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) } #ELT_TEST# (#ELT_SCOPE#:#ELT_VAR#) == if{ (E:SIMULATION TIME, second) (L:XMLVAR_ELT_TEST_TIME) - #ELT_TEST_DURATION# &gt; if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) } } } </UPDATE_ELT_STATE> <ON_STATE_CHANGED_EXTERNAL_CODE>(#ELT_SCOPE#:#ELT_VAR#) #ELT_ON# == (A:ELT ACTIVATED, Bool) s0 != if{ l0 if{ (&gt;K:ELT_OFF) } els{ (&gt;K:ELT_ON) } } </ON_STATE_CHANGED_EXTERNAL_CODE> </Condition> </Parameters> <Condition Valid="NO_EMISSIVE"> <False> <Component ID="#EMISSIVE_NODE_ID#" Node="#EMISSIVE_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <EMISSIVE_CODE>#LED_ON_CHECK#</EMISSIVE_CODE> </UseTemplate> </Component> </False> </Condition> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Condition NotEmpty="UPDATE_ELT_STATE"> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_CODE>#UPDATE_ELT_STATE#</UPDATE_CODE> </UseTemplate> </Condition> <Switch Param="TYPE"> <Case Value="ON_ARM_TEST"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <NUM_STATES>3</NUM_STATES> <GET_STATE_EXTERNAL>(#ELT_SCOPE#:#ELT_VAR#) s0 #ELT_OFF# == if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) (#ELT_SCOPE#:#ELT_VAR#) sp0 }</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0 #ELT_ON# == if{ #POS_ON# sp1 } l0 #ELT_ARM# == if{ #POS_ARM# sp1 } l0 #ELT_TEST# == if{ #POS_TEST# sp1 } l1</ENUM_VAL_TO_POS_EXTERNAL> <TT_VALUE_#POS_ON#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ON#> <SET_STATE_#POS_ON#>#SET_STATE_ON#</SET_STATE_#POS_ON#> <STR_STATE_#POS_ON#>On</STR_STATE_#POS_ON#> <TT_VALUE_#POS_ARM#>@TT_Package.GT_STATE_ARM</TT_VALUE_#POS_ARM#> <SET_STATE_#POS_ARM#>#SET_STATE_ARM#</SET_STATE_#POS_ARM#> <STR_STATE_#POS_ARM#>Arm</STR_STATE_#POS_ARM#> <TT_VALUE_#POS_TEST#>@TT_Package.GT_STATE_TEST</TT_VALUE_#POS_TEST#> <SET_STATE_#POS_TEST#>#SET_STATE_TEST#</SET_STATE_#POS_TEST#> <STR_STATE_#POS_TEST#>Test</STR_STATE_#POS_TEST#> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <CODE_POS_#POS_ARM#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Arm)</CODE_POS_#POS_ARM#> <CODE_POS_#POS_ON#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_On)</CODE_POS_#POS_ON#> <CODE_POS_#POS_TEST#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Test)</CODE_POS_#POS_TEST#> <STATE#POS_ARM#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_ARM# ==</STATE#POS_ARM#_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> </UseTemplate> </Case> <Case Value="ARM_ON"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <SET_STATE_OFF>#ARM_TEST_RESET_CONDITION# if{ #SET_STATE_TEST# } els{ #SET_STATE_ARM# }</SET_STATE_OFF> <SET_STATE_ON>#SET_STATE_ON#</SET_STATE_ON> <GET_STATE_EXTERNAL>(A:ELT ACTIVATED, Bool) sp0</GET_STATE_EXTERNAL> <STR_STATE_OFF>Arm</STR_STATE_OFF> <STR_STATE_ON>On</STR_STATE_ON> <TT_VALUE_OFF>(R:1:@TT_Package.GT_STATE_ARM)</TT_VALUE_OFF> <TT_VALUE_ON>@TT_On</TT_VALUE_ON> <SIM_STATE_IS_ON_EXTERNAL>l0</SIM_STATE_IS_ON_EXTERNAL> <SIMVAR_TO_WATCH_0>ELT ACTIVATED</SIMVAR_TO_WATCH_0> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_Code"> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> <ANIM_CODE>(A:ELT ACTIVATED, Percent)</ANIM_CODE> </UseTemplate> </Case> <Case Value="ARM_ON_OFF"> <UseInputEvent ID="#USE_INPUT_EVENT#"> <NUM_STATES>3</NUM_STATES> <GET_STATE_EXTERNAL>(#ELT_SCOPE#:#ELT_VAR#) s0 #ELT_TEST# == if{ #ELT_ARM# (&gt;#ELT_SCOPE#:#ELT_VAR#) (#ELT_SCOPE#:#ELT_VAR#) sp0 }</GET_STATE_EXTERNAL> <ENUM_VAL_TO_POS_EXTERNAL>l0 #ELT_ARM# == l0 #ELT_TEST# == or if{ #POS_ARM# sp2 } l0 #ELT_ON# == if{ #POS_ON# sp2 } l0 #ELT_OFF# == if{ #POS_OFF# sp2 } l2</ENUM_VAL_TO_POS_EXTERNAL> <TT_VALUE_#POS_ARM#>@TT_Package.GT_STATE_ARM</TT_VALUE_#POS_ARM#> <SET_STATE_#POS_ARM#>#ARM_TEST_RESET_CONDITION# if{ #SET_STATE_TEST# } els{ #SET_STATE_ARM# }</SET_STATE_#POS_ARM#> <STR_STATE_#POS_ARM#>Arm</STR_STATE_#POS_ARM#> <TT_VALUE_#POS_ON#>@TT_Package.GT_STATE_ON</TT_VALUE_#POS_ON#> <SET_STATE_#POS_ON#>#SET_STATE_ON#</SET_STATE_#POS_ON#> <STR_STATE_#POS_ON#>On</STR_STATE_#POS_ON#> <TT_VALUE_#POS_OFF#>@TT_Package.GT_STATE_OFF</TT_VALUE_#POS_OFF#> <SET_STATE_#POS_OFF#>#SET_STATE_OFF#</SET_STATE_#POS_OFF#> <STR_STATE_#POS_OFF#>Off</STR_STATE_#POS_OFF#> </UseInputEvent> <UseTemplate Name="ASOBO_GT_Switch_3States"> <CODE_POS_#POS_ARM#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Arm)</CODE_POS_#POS_ARM#> <CODE_POS_#POS_ON#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_On)</CODE_POS_#POS_ON#> <CODE_POS_#POS_OFF#>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Off)</CODE_POS_#POS_OFF#> <STATE#POS_ARM#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_ARM# ==</STATE#POS_ARM#_TEST> <STATE#POS_ON#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_ON# ==</STATE#POS_ON#_TEST> <STATE#POS_OFF#_TEST>(B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#) #POS_OFF# ==</STATE#POS_OFF#_TEST> </UseTemplate> </Case> </Switch> </Component> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • TYPE
      • NODE_ID (using SUFFIX_ID)
      • ANIM_NAME (using SUFFIX_ID)
      • EMISSIVE_NODE_ID (using SUFFIX_ID)
      • PART_ID
      • WWISE_EVENT
      • WWISE_EVENT_1
      • WWISE_EVENT_2
      • ELT_VAR
      • ELT_ACTIVATED_VAR
      • ELT_TEST_VAR
      • ELT_SCOPE
      • ELT_LED_BLINK
      • ELT_MIN_TIME_ON_FOR_TEST_RESET
      • ELT_TEST_DURATION
    • Override

      Parameters set:

      • ELT_OFF
      • ELT_ARM
      • ELT_ON
      • ELT_TEST
    • Default

      Parameters set:

      • USE_INPUT_EVENT
      • INPUT_EVENT_ID_SOURCE
      • BTN_ID (using SUFFIX_ID)

      Condition: Switch(TYPE)

      • Case: ON_ARM_TEST

        Parameters set:

        • POS_ON
        • POS_ARM
        • POS_TEST
      • Case: ARM_ON

        Parameters set:

        • POS_ARM
        • POS_ON
      • Case: ARM_ON_OFF

        Parameters set:

        • POS_ARM
        • POS_ON
        • POS_OFF
    • Default

      Parameters set:

      • TOOLTIP_TITLE
      • TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, BTN_ID)
      • TT_DESCRIPTION_ID
    • Override

      Parameters set:

      • LED_ON_CHECK (using ELT_LED_BLINK, ELT_SCOPE, ELT_VAR)
      • ARM_TEST_RESET_CONDITION (using ELT_SCOPE, ELT_TEST_VAR, ELT_MIN_TIME_ON_FOR_TEST_RESET)
      • SET_STATE_ON (using ELT_ON, ELT_SCOPE, ELT_VAR, ELT_ACTIVATED_VAR)
      • IS_STATE_ON (using ELT_SCOPE, ELT_VAR, ELT_ON)
      • SET_STATE_ARM (using ELT_ARM, ELT_SCOPE, ELT_VAR)
      • IS_STATE_ARM (using ELT_SCOPE, ELT_VAR, ELT_ARM)
      • SET_STATE_OFF (using ELT_OFF, ELT_SCOPE, ELT_VAR)
      • IS_STATE_OFF (using ELT_SCOPE, ELT_VAR, ELT_OFF)
      • SET_STATE_TEST (using ELT_TEST, ELT_SCOPE, ELT_VAR, ELT_TEST_VAR)
      • IS_STATE_TEST (using ELT_SCOPE, ELT_VAR, ELT_TEST)

      Condition: Check(#ELT_SCOPE#)

      • Case: True

        Parameters set:

        • LOCAL_VAR_TO_WATCH_0 (using ELT_VAR)

      Condition: Check(ID)

      • Case: True

        Parameters set:

        • UPDATE_ELT_STATE (using ELT_ON, ELT_SCOPE, ELT_VAR, ELT_ARM, ELT_TEST, ELT_TEST_DURATION)
        • ON_STATE_CHANGED_EXTERNAL_CODE (using ELT_SCOPE, ELT_VAR, ELT_ON)

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Condition: NotEmpty(UPDATE_ELT_STATE)

      • Case: True

        Templates used:

      Condition: Switch(TYPE)

      • Case: ON_ARM_TEST

        Parameters read:

        • USE_INPUT_EVENT

        Parameters set:

        • NUM_STATES
        • GET_STATE_EXTERNAL (using ELT_SCOPE, ELT_VAR, ELT_OFF, ELT_ARM)
        • ENUM_VAL_TO_POS_EXTERNAL (using ELT_ON, POS_ON, ELT_ARM, POS_ARM, ELT_TEST, POS_TEST)
        • TT_VALUE_#POS_ON#
        • SET_STATE_#POS_ON# (using SET_STATE_ON)
        • STR_STATE_#POS_ON#
        • TT_VALUE_#POS_ARM#
        • SET_STATE_#POS_ARM# (using SET_STATE_ARM)
        • STR_STATE_#POS_ARM#
        • TT_VALUE_#POS_TEST#
        • SET_STATE_#POS_TEST# (using SET_STATE_TEST)
        • STR_STATE_#POS_TEST#

        Templates used:

        • ASOBO_GT_Switch_3States

          Parameters set:

          • CODE_POS_#POS_ARM# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
          • CODE_POS_#POS_ON# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
          • CODE_POS_#POS_TEST# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
          • STATE#POS_ARM#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_ARM)
          • 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)
      • Case: ARM_ON

        Parameters read:

        • USE_INPUT_EVENT

        Parameters set:

        • SET_STATE_OFF (using ARM_TEST_RESET_CONDITION, SET_STATE_TEST, SET_STATE_ARM)
        • SET_STATE_ON (using SET_STATE_ON)
        • GET_STATE_EXTERNAL
        • STR_STATE_OFF
        • STR_STATE_ON
        • TT_VALUE_OFF
        • TT_VALUE_ON
        • SIM_STATE_IS_ON_EXTERNAL
        • SIMVAR_TO_WATCH_0

        Templates used:

        • ASOBO_GT_Switch_Code

          Parameters set:

          • LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
          • ANIM_CODE
      • Case: ARM_ON_OFF

        Parameters read:

        • USE_INPUT_EVENT

        Parameters set:

        • NUM_STATES
        • GET_STATE_EXTERNAL (using ELT_SCOPE, ELT_VAR, ELT_TEST, ELT_ARM)
        • ENUM_VAL_TO_POS_EXTERNAL (using ELT_ARM, ELT_TEST, POS_ARM, ELT_ON, POS_ON, ELT_OFF, POS_OFF)
        • TT_VALUE_#POS_ARM#
        • SET_STATE_#POS_ARM# (using ARM_TEST_RESET_CONDITION, SET_STATE_TEST, SET_STATE_ARM)
        • STR_STATE_#POS_ARM#
        • TT_VALUE_#POS_ON#
        • SET_STATE_#POS_ON# (using SET_STATE_ON)
        • STR_STATE_#POS_ON#
        • TT_VALUE_#POS_OFF#
        • SET_STATE_#POS_OFF# (using SET_STATE_OFF)
        • STR_STATE_#POS_OFF#

        Templates used:

        • ASOBO_GT_Switch_3States

          Parameters set:

          • CODE_POS_#POS_ARM# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
          • CODE_POS_#POS_ON# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
          • CODE_POS_#POS_OFF# (using INPUT_EVENT_ID_SOURCE, BTN_ID)
          • STATE#POS_ARM#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_ARM)
          • STATE#POS_ON#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_ON)
          • STATE#POS_OFF#_TEST (using INPUT_EVENT_ID_SOURCE, BTN_ID, POS_OFF)

    Condition: Valid(NO_EMISSIVE)

    • Case: False

      Parameters read:

      • EMISSIVE_NODE_ID

      Components:

      • #EMISSIVE_NODE_ID# (Node: #EMISSIVE_NODE_ID#)

        Templates used:

  • ASOBO_SAFETY_Indicator_SubTemplate

    Definition from XML
    <Template Name="ASOBO_SAFETY_Indicator_SubTemplate"> <Parameters Type="Default"> <EMISSIVE_CODE>0</EMISSIVE_CODE> <REQUIRE_ACK_CODE/> <CANCEL_ACK_CODE/> <DAYNIGHT_FACTOR>0.7</DAYNIGHT_FACTOR> </Parameters> <Parameters Type="Override"> <Condition Check="CHECK_DAYNIGHT_SWITCH"> <EMISSIVE_CODE>#EMISSIVE_CODE# #DAYNIGHT_FACTOR# 1 (L:XMLVAR_WarningsAttenuated) ? *</EMISSIVE_CODE> </Condition> </Parameters> <Parameters Type="Default"> <CUSTOM_TEST_CODE>1</CUSTOM_TEST_CODE> <Condition Check="CHECK_ANNUNCIATOR_SWITCH"> <True> <CUSTOM_TEST_COND>(A:ANNUNCIATOR SWITCH, bool)</CUSTOM_TEST_COND> </True> <False> <CUSTOM_TEST_COND>(L:XMLVAR_LTS_Test)</CUSTOM_TEST_COND> </False> </Condition> </Parameters> <UseTemplate Name="ASOBO_GT_Component_Emissive_Gauge"> <Condition Check="CHECK_ACKNOWLEDGE"> <True> <EMISSIVE_CODE> #EMISSIVE_CODE# (&gt;O:NewIndicatorState) (O:NewIndicatorState) (O:IndicatorActive) != if{ (O:IndicatorActive) if{ 0 (&gt;O:IndicatorActive) (O:Local_Ack_Request_Time) (L:XMLVAR_AcknowledgeTime) &gt; if{ #CANCEL_ACK_CODE# } } els{ 1 (&gt;O:IndicatorActive) (E:SIMULATION TIME, second) (&gt;O:Local_Ack_Request_Time) (O:Local_Ack_Request_Time) (L:XMLVAR_AcknowledgeTime) &gt; if{ #REQUIRE_ACK_CODE# } } } #CUSTOM_TEST_COND# if{ #CUSTOM_TEST_CODE# } els{ (O:Local_Ack_Request_Time) (L:XMLVAR_AcknowledgeTime) &gt; if{ (O:NewIndicatorState) (I:XMLVAR_SAFETY_Blink) min } els{ (O:NewIndicatorState) } } </EMISSIVE_CODE> </True> <False> <EMISSIVE_CODE> #CUSTOM_TEST_COND# if{ #CUSTOM_TEST_CODE# } els{ #EMISSIVE_CODE# } </EMISSIVE_CODE> </False> </Condition> </UseTemplate> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • EMISSIVE_CODE
      • REQUIRE_ACK_CODE
      • CANCEL_ACK_CODE
      • DAYNIGHT_FACTOR
    • Override

      Condition: Check(CHECK_DAYNIGHT_SWITCH)

      • Case: True

        Parameters set:

        • EMISSIVE_CODE (using EMISSIVE_CODE, DAYNIGHT_FACTOR)
    • Default

      Parameters set:

      • CUSTOM_TEST_CODE

      Condition: Check(CHECK_ANNUNCIATOR_SWITCH)

      • Case: True

        Parameters set:

        • CUSTOM_TEST_COND
      • Case: False

        Parameters set:

        • CUSTOM_TEST_COND

    Templates used:

    • ASOBO_GT_Component_Emissive_Gauge

      Condition: Check(CHECK_ACKNOWLEDGE)

      • Case: True

        Parameters set:

        • EMISSIVE_CODE (using EMISSIVE_CODE, CANCEL_ACK_CODE, REQUIRE_ACK_CODE, CUSTOM_TEST_COND, CUSTOM_TEST_CODE)
      • Case: False

        Parameters set:

        • EMISSIVE_CODE (using CUSTOM_TEST_COND, CUSTOM_TEST_CODE, EMISSIVE_CODE)