[Go back to index]

Asobo\Common\Subtemplates\Autopilot_Subtemplates.xml

Source XML
<ModelBehaviors> <!-- ####################### --> <!-- ##### AP PUSH BTN ##### --> <!-- ####################### --> <Template Name="ASOBO_AUTOPILOT_Push_Active_Template"> <Parameters Type="Default"> <Condition Valid="ACTIVE_EMISSIVE_BUTTON"> <True> <ACTIVE_NODE_ID>#NODE_ID#</ACTIVE_NODE_ID> </True> <False> <Condition Check="BASE_NODE_ID"> <True> <ACTIVE_NODE_ID>#BASE_NODE_ID#_Active#SUFFIX_ID#</ACTIVE_NODE_ID> </True> <False> <ACTIVE_NODE_ID>AUTOPILOT_Push_#DEFAULT_NAME#_Active#SUFFIX_ID#</ACTIVE_NODE_ID> </False> </Condition> </False> </Condition> <RECURSIVE_ID>2</RECURSIVE_ID> </Parameters> <Component ID="#ACTIVE_NODE_ID#_Active" Node="#ACTIVE_NODE_ID#"> <Condition Check="EMISSIVE_SIMVAR_ACTIVE"> <True> <UseTemplate Name="ASOBO_GT_Emissive_Gauge_Sim"> <ALT_CODE>(L:XMLVAR_LTS_Test)</ALT_CODE> <Condition Check="EMISSIVE_SIMVAR_ACTIVE"> <EMISSIVE_SIMVAR>#EMISSIVE_SIMVAR_ACTIVE#</EMISSIVE_SIMVAR> </Condition> <Condition Valid="EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY"> <EMISSIVE_DRIVES_VISIBILITY>#EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY#</EMISSIVE_DRIVES_VISIBILITY> </Condition> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <ALT_CODE>(L:XMLVAR_LTS_Test)</ALT_CODE> <Condition Check="EMISSIVE_CODE_ACTIVE"> <EMISSIVE_CODE>#EMISSIVE_CODE_ACTIVE#</EMISSIVE_CODE> </Condition> <Condition Valid="EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY"> <EMISSIVE_DRIVES_VISIBILITY>#EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY#</EMISSIVE_DRIVES_VISIBILITY> </Condition> </UseTemplate> </False> </Condition> </Component> <Condition Valid="ACTIVE_NODE_ID#RECURSIVE_ID#"> <True> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Active_Template"> <RECURSIVE_ID Process="Int">#RECURSIVE_ID# 1 +</RECURSIVE_ID> <ACTIVE_NODE_ID Process="Param">ACTIVE_NODE_ID#RECURSIVE_ID#</ACTIVE_NODE_ID> </UseTemplate> </True> </Condition> </Template> <Template Name="ASOBO_AUTOPILOT_Push_Emissive_Template"> <Parameters Type="Default"> <DEFAULT_TEMPLATE_EMISSIVE>ASOBO_LIGHTING_Cabin_Emissive_Template</DEFAULT_TEMPLATE_EMISSIVE> <Condition Check="BASE_NODE_ID"> <True> <EMISSIVE_NODE_ID>#BASE_NODE_ID#_Text#SUFFIX_ID#</EMISSIVE_NODE_ID> </True> <False> <EMISSIVE_NODE_ID>AUTOPILOT_Push_#DEFAULT_NAME#_Text#SUFFIX_ID#</EMISSIVE_NODE_ID> </False> </Condition> <Switch> <Case Check="POTENTIOMETER"> <EMISSIVE_CODE>(A:LIGHT POTENTIOMETER:#POTENTIOMETER#, Percent over 100)</EMISSIVE_CODE> </Case> <Case Check="SIMVAR_POWER_SETTING"> <EMISSIVE_CODE>(A:#SIMVAR_POWER_SETTING#, Percent over 100)</EMISSIVE_CODE> </Case> <Default> <EMISSIVE_CODE>1</EMISSIVE_CODE> </Default> </Switch> </Parameters> <Condition Check="CIRCUIT_ID"> <False> <UseTemplate Name="#DEFAULT_TEMPLATE_EMISSIVE#"> <NODE_ID>#EMISSIVE_NODE_ID#</NODE_ID> </UseTemplate> </False> <True> <Component ID="#EMISSIVE_NODE_ID#_Emissive_Node" Node="#EMISSIVE_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <FAILURE>(A:CIRCUIT ON:#CIRCUIT_ID#, Bool)</FAILURE> </UseTemplate> </Component> </True> </Condition> </Template> <Template Name="ASOBO_AUTOPILOT_Push_Template"> <Parameters Type="Default"> <ID>1</ID> </Parameters> <UseTemplate Name="ASOBO_GT_Helper_Suffix_ID_Appender"> <TEMPLATE_TO_CALL>ASOBO_AUTOPILOT_Push_SubTemplate</TEMPLATE_TO_CALL> </UseTemplate> </Template> <Template Name="ASOBO_AUTOPILOT_Push_SubTemplate"> <Parameters Type="Default"> <Condition Check="NODE_ID"> <True> <BASE_NODE_ID>#NODE_ID#</BASE_NODE_ID> </True> </Condition> <NODE_ID>AUTOPILOT_Push_#DEFAULT_NAME##SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Push_#DEFAULT_NAME##SUFFIX_ID#</ANIM_NAME> <PART_ID>AUTOPILOT_Push_#DEFAULT_NAME#</PART_ID> <WWISE_EVENT_AUTOPILOT_SWITCH_ON>autopilot_switch_on</WWISE_EVENT_AUTOPILOT_SWITCH_ON> <WWISE_EVENT_AUTOPILOT_SWITCH_OFF>autopilot_switch_off</WWISE_EVENT_AUTOPILOT_SWITCH_OFF> <WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON>autopilot_push_button_on</WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON> <WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF>autopilot_push_button_off</WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF> <Condition Check="ANIM_CODE"> <AXIS>Y</AXIS> </Condition> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT_ID>AUTOPILOT</USE_INPUT_EVENT_ID> </Parameters> <Parameters Type="Default"> <Condition NotEmpty="GET_STATE_EXTERNAL"> <True> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> <CHECK_STATE_HAS_CHANGED>True</CHECK_STATE_HAS_CHANGED> </True> <False> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> </False> </Condition> <Condition NotEmpty="EVENT_ID"> <BINDING_INC_0_EVENT_ID>#EVENT_ID#</BINDING_INC_0_EVENT_ID> </Condition> <Condition Valid="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> </Condition> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <Condition Check="ANIM_CODE"> <TT_ICON>MOVE_#AXIS#</TT_ICON> </Condition> </UseInputEvent> <Condition Check="ANIM_CODE"> <True> <UseTemplate Name="ASOBO_GT_Switch_Code"> <WWISE_EVENT_1>#WWISE_EVENT_AUTOPILOT_SWITCH_ON#</WWISE_EVENT_1> <WWISE_EVENT_2>#WWISE_EVENT_AUTOPILOT_SWITCH_OFF#</WWISE_EVENT_2> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO_GT_Push_Button"> <WWISE_EVENT_1>#WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON#</WWISE_EVENT_1> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <WWISE_EVENT_2>#WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF#</WWISE_EVENT_2> <NORMALIZED_TIME_2>0.5</NORMALIZED_TIME_2> </UseTemplate> </False> </Condition> </Component> <Condition Valid="NO_INDICATOR"> <False> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Active_Template"/> </False> </Condition> <Condition Valid="NO_TEXT_EMISSIVE"> <False> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Emissive_Template"/> </False> </Condition> <Condition Valid="BUTTON_EMISSIVE"> <True> <UseTemplate Name="ASOBO_LIGHTING_Cabin_Emissive_Template"/> </True> </Condition> <Condition Check="INIT"> <Update Once="True">#INIT#</Update> </Condition> </Template> <!-- ####################### --> <!-- ##### AP KNOBS ######## --> <!-- ####################### --> <!-- ####################### --> <Template Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <Parameters Type="Default"> <EVENT_TYPE>PUSH</EVENT_TYPE> </Parameters> <Parameters Type="Override"> <UseParametersFn Name="Compute_First_Available_Bindings"> </UseParametersFn> </Parameters> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT_ID>AUTOPILOT</USE_INPUT_EVENT_ID> <Switch Param="EVENT_TYPE"> <Case Value="PUSH"> <DEFAULT_BINDING_STR>Push</DEFAULT_BINDING_STR> <TT_INTERACTION>PRIMARY_DOWN+SECONDARY_DOWN</TT_INTERACTION> <TT_INTERACTION_LOCKABLE>PRIMARY_DOWN</TT_INTERACTION_LOCKABLE> <ANIM_VAR>_PushAnimVar</ANIM_VAR> <TT_ICON>Push</TT_ICON> </Case> <Case Value="PULL"> <DEFAULT_BINDING_STR>Pull</DEFAULT_BINDING_STR> <TT_INTERACTION>PRIMARY_DOWN+TERTIARY_DOWN</TT_INTERACTION> <TT_INTERACTION_LOCKABLE>SECONDARY_DOWN</TT_INTERACTION_LOCKABLE> <ANIM_VAR>_PullAnimVar</ANIM_VAR> <TT_ICON>Pull</TT_ICON> </Case> </Switch> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#>#DEFAULT_BINDING_STR#</BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#> <BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#_PARAM_0>1</BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#_PARAM_0> <ANIM>HOLD</ANIM> </UseInputEvent> </Template> <Template Name="ASOBO_AUTOPILOT_Knob_Template"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT_ID>AUTOPILOT</USE_INPUT_EVENT_ID> <IS_INFINITE>True</IS_INFINITE> </Parameters> <Parameters Type="Default"> <Condition Valid="IS_INFINITE"> <True> <KNOB_TYPE>Infinite</KNOB_TYPE> </True> <False> <KNOB_TYPE>Finite_Code</KNOB_TYPE> <Condition Valid="USE_BTN_IE"> <BTN_ID>#KNOB_ID#</BTN_ID> </Condition> </False> </Condition> <Condition Valid="BTN_ID_EXTERNAL"> <True> <TEMPLATE_VARIANT>_Push</TEMPLATE_VARIANT> </True> <False> <TEMPLATE_VARIANT/> </False> </Condition> <CURSOR_LEFT>TurnLeftSmall</CURSOR_LEFT> <CURSOR_RIGHT>TurnRightSmall</CURSOR_RIGHT> </Parameters> <Parameters Type="Default"> <COUNT>36</COUNT> <Condition Valid="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#KNOB_ID#</TOOLTIP_ENTRY_0> <Condition Valid="BTN_ID_EXTERNAL"> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_EXTERNAL#</TOOLTIP_ENTRY_1> </Condition> </Condition> </Parameters> <Parameters Type="Override"> <Condition Valid="BTN_ID_EXTERNAL"> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_EXTERNAL#_Push)</LEFT_SINGLE_CODE> </Condition> <CLOCKWISE_CODE>1 (&gt;B:#INPUT_EVENT_ID_SOURCE#_#KNOB_ID#_Inc)</CLOCKWISE_CODE> <ANTICLOCKWISE_CODE>1 (&gt;B:#INPUT_EVENT_ID_SOURCE#_#KNOB_ID#_Dec)</ANTICLOCKWISE_CODE> </Parameters> <Parameters Type="Override"> <Condition Valid="USE_BTN_IE"> <True> <TEMPLATE_TO_CALL>ASOBO_GT_Switch_XStates</TEMPLATE_TO_CALL> </True> <False> <TEMPLATE_TO_CALL>ASOBO_GT_Knob_#KNOB_TYPE##TEMPLATE_VARIANT#</TEMPLATE_TO_CALL> <ANIM_VAR_HANDLED_SEPARATELY>True</ANIM_VAR_HANDLED_SEPARATELY> </False> </Condition> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"/> <UseTemplate Name="#TEMPLATE_TO_CALL#"/> </Template> <!-- ####################### --> <Template Name="ASOBO_AUTOPILOT_Knob_VerticalSpeed_SubTemplate"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <NODE_ID>AUTOPILOT_Knob_VerticalSpeed#SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_VerticalSpeed#SUFFIX_ID#</ANIM_NAME> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_VerticalSpeed_PushPull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> <Condition Valid="SEPARATED_INTERACTION"> <HITBOX_UP_NODE_ID>AUTOPILOT_Knob_VerticalSpeed_DN#SUFFIX_ID#</HITBOX_UP_NODE_ID> <HITBOX_DOWN_NODE_ID>AUTOPILOT_Knob_VerticalSpeed_UP#SUFFIX_ID#</HITBOX_DOWN_NODE_ID> </Condition> <PART_ID>AUTOPILOT_Knob_VerticalSpeed</PART_ID> <WWISE_EVENT>autopilot_verticalspeed_knob</WWISE_EVENT> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <COUNT>36</COUNT> <MAX_PITCH>25</MAX_PITCH> <Switch> <Case Check="AIRBUS_TYPE"> <TYPE>AIRBUS</TYPE> </Case> <Case Valid="SET_AIRSPEED_ON_FLC"> <TYPE>FLC_AIRSPEED</TYPE> </Case> </Switch> </Parameters> <Parameters Type="Default"> <Switch Param="TYPE"> <Case Value="AIRBUS"> <CLOCKWISE_DIR>INC</CLOCKWISE_DIR> <ANTICLOCKWISE_DIR>DEC</ANTICLOCKWISE_DIR> <MACH_INCREMENT>1</MACH_INCREMENT> <SPEED_INCREMENT>1</SPEED_INCREMENT> <VS_INCREMENT>100</VS_INCREMENT> <VS_INDEX>3</VS_INDEX> <FORMAT_VS_VALUE>(L:XMLVAR_TRK_FPA_MODE_ACTIVE) if{ l0 60 / near 10 / '%.2f FPA' (F:Format) } els{ l0 '%d ft/min' (F:Format) }</FORMAT_VS_VALUE> </Case> <Default> <VS_INDEX>1</VS_INDEX> <FORMAT_VS_VALUE>l0 '%d ft/min' @sprintf</FORMAT_VS_VALUE> <Switch> <Case Valid="UP_DEC_DN_INC"> <CLOCKWISE_DIR>INC</CLOCKWISE_DIR> <ANTICLOCKWISE_DIR>DEC</ANTICLOCKWISE_DIR> <CLOCKWISE_DIR_PITCH>UP</CLOCKWISE_DIR_PITCH> <ANTICLOCKWISE_DIR_PITCH>DN</ANTICLOCKWISE_DIR_PITCH> <Condition Check="UP_DEC_DN_INC" Match="INVERT_ANIM"> <INVERT_ANIM>True</INVERT_ANIM> </Condition> <MACH_INCREMENT>1</MACH_INCREMENT> <SPEED_INCREMENT>1</SPEED_INCREMENT> <VS_INCREMENT>100</VS_INCREMENT> <PITCH_INCREMENT>0.2</PITCH_INCREMENT> </Case> <Default> <CLOCKWISE_DIR>DEC</CLOCKWISE_DIR> <ANTICLOCKWISE_DIR>INC</ANTICLOCKWISE_DIR> <CLOCKWISE_DIR_PITCH>DN</CLOCKWISE_DIR_PITCH> <ANTICLOCKWISE_DIR_PITCH>UP</ANTICLOCKWISE_DIR_PITCH> <MACH_INCREMENT>-1</MACH_INCREMENT> <SPEED_INCREMENT>-1</SPEED_INCREMENT> <PITCH_INCREMENT>-0.2</PITCH_INCREMENT> <VS_INCREMENT>100</VS_INCREMENT> </Default> </Switch> </Default> </Switch> <SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION> <THRESHOLD_Y_MOUSE>0.005</THRESHOLD_Y_MOUSE> </Parameters> <Parameters Type="Override"> <Condition> <Test> <Or> <Arg Check="HITBOX_UP_NODE_ID"/> <Arg Check="HITBOX_DOWN_NODE_ID"/> </Or> </Test> <True> <SEPARATED_INTERACTION>True</SEPARATED_INTERACTION> </True> </Condition> </Parameters> <Parameters Type="Override"> <Switch Param="TYPE"> <Case Value="FLC_AIRSPEED"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 l0 -1 * sp1 (A:AUTOPILOT FLIGHT LEVEL CHANGE, Bool) if{ (L:XMLVAR_AirSpeedIsInMach) if{ (A:AUTOPILOT MACH HOLD VAR, number) #MACH_INCREMENT# l1 * + 0 max (&gt;K:AP_MACH_VAR_SET) } els{ (A:AUTOPILOT AIRSPEED HOLD VAR, knot) #SPEED_INCREMENT# l1 * + 0 max (&gt;K:AP_SPD_VAR_SET) } } els{ (A:AUTOPILOT VERTICAL HOLD:#VS_INDEX#, Bool) if{ #VS_INDEX# (A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) #VS_INCREMENT# l0 * + (&gt;K:2:AP_VS_VAR_SET_ENGLISH) } els{ (A:AUTOPILOT PITCH HOLD, Bool) if{ (A:AUTOPILOT PITCH HOLD REF, degrees) -#PITCH_INCREMENT# l0 * + #MAX_PITCH# / 1 min -1 max 16384 * (&gt;K:AP_PITCH_REF_SET) } } } </SET_STATE_EXTERNAL> </Case> <Case Value="AIRBUS"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #VS_INDEX# (A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) #VS_INCREMENT# l0 * + (&gt;K:2:AP_VS_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:A320_Neo_FCU_VS_INC) } els{ (&gt;H:A320_Neo_FCU_VS_DEC) } </SET_STATE_EXTERNAL> <BTN_ID_PULL>VerticalSpeed_Hold</BTN_ID_PULL> <PULL_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_FCU_VS_HOLD)</PULL_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_HOLD</TT_DESCRIPTION_ID_PULL> <BTN_ID_PUSH>VerticalSpeed_Zero</BTN_ID_PUSH> <PUSH_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_FCU_VS_ZERO)</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_ZERO</TT_DESCRIPTION_ID_PUSH> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> </Case> <Default> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #VS_INDEX# (A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) #VS_INCREMENT# l0 * + (&gt;K:2:AP_VS_VAR_SET_ENGLISH) </SET_STATE_EXTERNAL> </Default> </Switch> <KNOB_ID>VerticalSpeed</KNOB_ID> </Parameters> <Switch> <Case Valid="SEPARATED_INTERACTION"> <Component ID="#NODE_ID#"> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TEMPLATE_VARIANT>_SeparatedInteraction</TEMPLATE_VARIANT> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_SET</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 '%d ft/min' @sprintf</FORMAT_VALUE> <INTERACTION_AXIS>Y</INTERACTION_AXIS> <TT_ICON>MOVE_AXIS_Y</TT_ICON> </UseTemplate> </Component> </Case> <Default> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_Pull)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_Push)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> <CENTER_RADIUS>0</CENTER_RADIUS> </Case> </Switch> <Condition Check="TYPE" Match="AIRBUS"> <False> <IS_WHEEL>True</IS_WHEEL> </False> </Condition> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_SET</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>#FORMAT_VS_VALUE#</FORMAT_VALUE> </UseTemplate> </Component> </Default> </Switch> </Template> <Template Name="ASOBO_AUTOPILOT_Knob_Heading_SubTemplate"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <ANIM_NAME_KNOB>AUTOPILOT_Knob_Heading#SUFFIX_ID#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Heading_Push#SUFFIX_ID#</ANIM_NAME_PUSH> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_Heading_PushPull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> <PART_ID>AUTOPILOT_Knob_Heading</PART_ID> <NODE_ID>AUTOPILOT_Knob_Heading#SUFFIX_ID#</NODE_ID> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <NORMALIZED_TIME_2>0.5</NORMALIZED_TIME_2> <WWISE_EVENT>autopilot_heading_knob</WWISE_EVENT> <COUNT>36</COUNT> <THRESHOLD_X_INPUT>0.01</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.001</THRESHOLD_X_MOUSE> <THRESHOLD_INPUT>0.01</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.001</THRESHOLD_MOUSE> <Condition Check="PUSH"> <TYPE>PUSH</TYPE> </Condition> <Switch Param="TYPE"> <Case Value="AIRBUS"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Default> <HEADING_INDEX>1</HEADING_INDEX> </Default> </Switch> </Parameters> <Parameters Type="Override"> <KNOB_ID>Heading</KNOB_ID> <Switch Param="TYPE"> <Case Value="PUSH"> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Heading_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(A:HEADING INDICATOR, degrees) (&gt;K:HEADING_BUG_SET)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="AIRBUS"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET) p0 0 &gt; if{ (&gt;H:A320_Neo_CDU_AP_INC_HEADING) } els{ (&gt;H:A320_Neo_CDU_AP_DEC_HEADING) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> <BTN_ID_PULL>Heading_Selected</BTN_ID_PULL> <BTN_ID_PUSH>Heading_Managed</BTN_ID_PUSH> <DEFAULT_BINDING_STR>Select</DEFAULT_BINDING_STR> <PULL_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_SELECTED_HEADING)</PULL_SET_STATE_EXTERNAL> <PUSH_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_MANAGED_HEADING)</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SLT</TT_DESCRIPTION_ID_PULL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_MAN</TT_DESCRIPTION_ID_PUSH> </Case> <Case Value="B747"> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Heading_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:B747_8_FMC_1_AP_HEADING_SEL)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="AS01B"> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Heading_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:AS01B_FMC_1_AP_HEADING_SEL)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Default> <ANIM_NAME>#ANIM_NAME_KNOB#</ANIM_NAME> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> </Default> </Switch> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PULL_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PULL_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_ADJUST</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_HEADING_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 '%d°' @sprintf</FORMAT_VALUE> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_#DEFAULT_BINDING_STR#)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_#DEFAULT_BINDING_STR#)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> </Case> </Switch> </UseTemplate> </Component> </Template> <Template Name="ASOBO_AUTOPILOT_Knob_Altitude_SubTemplate"> <Parameters Type="Override"> <Condition Check="PUSH"> <TYPE>PUSH</TYPE> </Condition> </Parameters> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <PART_ID>AUTOPILOT_Knob_Altitude</PART_ID> <Condition Check="INCREMENT"> <True> <NODE_ID>AUTOPILOT_Knob_Altitude_#INCREMENT##SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_Altitude_#INCREMENT##SUFFIX_ID#</ANIM_NAME> <Condition Check="TYPE" Match="PUSH"> <ANIM_NAME_KNOB>AUTOPILOT_Knob_Altitude_#INCREMENT##SUFFIX_ID#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Altitude_#INCREMENT#_Push#SUFFIX_ID#</ANIM_NAME_PUSH> </Condition> <WWISE_EVENT>autopilot_altitude_#INCREMENT#_knob</WWISE_EVENT> <COUNT>36</COUNT> <THRESHOLD_INPUT>0.0001</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.003</THRESHOLD_MOUSE> <INCREMENT_IN_KNOB_ID/> </True> <False> <Condition> <Test> <Or> <Arg Check="TYPE" Match="AIRBUS"/> <Arg Check="TYPE" Match="AS01B"/> </Or> </Test> <False> <IS_DYN_INCREMENT>True</IS_DYN_INCREMENT> </False> </Condition> <Condition Check="INCREMENT"> <False> <INCREMENT_VAR>XMLVAR_Autopilot_Altitude_Increment</INCREMENT_VAR> </False> </Condition> <INCREMENT>(L:XMLVAR_Autopilot_Altitude_Increment)</INCREMENT> <SET_INCREMENT>(&gt;L:XMLVAR_Autopilot_Altitude_Increment)</SET_INCREMENT> <DYN_INCREMENT_INIT>100</DYN_INCREMENT_INIT> <NODE_ID>AUTOPILOT_Knob_Altitude#SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_Altitude#SUFFIX_ID#</ANIM_NAME> <WWISE_EVENT>autopilot_altitude_knob</WWISE_EVENT> <COUNT>36</COUNT> <THRESHOLD_X_INPUT>0.05</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.01</THRESHOLD_X_MOUSE> <Switch Param="TYPE"> <Case Value="AIRBUS"> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_Altitude_PushPull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> </Case> <Case Value="PUSH"> <ANIM_NAME_KNOB>AUTOPILOT_Knob_Altitude#SUFFIX_ID#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Altitude_Push#SUFFIX_ID#</ANIM_NAME_PUSH> <ALT_PUSH_TYPE>ALT_SYNC</ALT_PUSH_TYPE> </Case> </Switch> </False> </Condition> <Switch Param="TYPE"> <Case Value="AIRBUS"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Case Value="B747"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Case Value="AS01B"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Default> <HEADING_INDEX>0</HEADING_INDEX> </Default> </Switch> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <NORMALIZED_TIME_2>0.3</NORMALIZED_TIME_2> <Switch Param="ALT_PUSH_TYPE"> <Case Value="ALT_FINE_TUNE"> <FINE_TUNE_INCREMENT>100</FINE_TUNE_INCREMENT> </Case> </Switch> </Parameters> <Parameters Type="Override"> <Condition Check="INCREMENT_IN_KNOB_ID"> <True> <KNOB_ID>Altitude_#INCREMENT#</KNOB_ID> </True> <False> <KNOB_ID>Altitude</KNOB_ID> </False> </Condition> <Switch Param="TYPE"> <Case Value="PUSH"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) } els{ (&gt;H:AP_KNOB_Down) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <Switch Param="ALT_PUSH_TYPE"> <Case Value="ALT_SYNC"> <BTN_ID_EXTERNAL>Altitude_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(A:INDICATED ALTITUDE, feet) (&gt;K:AP_ALT_VAR_SET_ENGLISH) (&gt;H:AP_KNOB)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="ALT_FINE_TUNE"> <BTN_ID_EXTERNAL>Altitude_Fine_Tune</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#FINE_TUNE_INCREMENT# #DYN_INCREMENT_INIT# #INCREMENT# #FINE_TUNE_INCREMENT# != ? #SET_INCREMENT#</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDE_INCREMENT_ACTION</TT_DESCRIPTION_ID_BTN> <PUSH_ANIM_HANDLED_SEPARATELY>True</PUSH_ANIM_HANDLED_SEPARATELY> <BTN_ANIM_CODE>#INCREMENT# #FINE_TUNE_INCREMENT# == 100 *</BTN_ANIM_CODE> <BTN_LOCAL_VAR_TO_WATCH_0>#INCREMENT_VAR#</BTN_LOCAL_VAR_TO_WATCH_0> <BTN_VALUE_CODE>#INCREMENT# #FINE_TUNE_INCREMENT# ==</BTN_VALUE_CODE> <BTN_TT_VALUE_ON>'100'</BTN_TT_VALUE_ON> <BTN_TT_VALUE_OFF>'1000'</BTN_TT_VALUE_OFF> </Case> </Switch> </Case> <Case Value="AIRBUS"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) (&gt;H:A320_Neo_CDU_AP_INC_ALT) } els{ (&gt;H:AP_KNOB_Down) (&gt;H:A320_Neo_CDU_AP_DEC_ALT) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> <BTN_ID_PULL>Altitude_Selected</BTN_ID_PULL> <BTN_ID_PUSH>Altitude_Managed</BTN_ID_PUSH> <DEFAULT_BINDING_STR>Mode</DEFAULT_BINDING_STR> <PULL_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_SELECTED_ALTITUDE)</PULL_SET_STATE_EXTERNAL> <PUSH_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_MANAGED_ALTITUDE)</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_PUSH_ALTITUDE_ACTION_SLT</TT_DESCRIPTION_ID_PULL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_PUSH_ALTITUDE_ACTION_MAN</TT_DESCRIPTION_ID_PUSH> </Case> <Case Value="B747"> <SET_STATE_EXTERNAL>p0 0 &gt; if{ #HEADING_INDEX# 0 (&gt;K:2:AP_ALT_VAR_INC) (&gt;H:AP_KNOB_Up) } els{ #HEADING_INDEX# 0 (&gt;K:2:AP_ALT_VAR_DEC) (&gt;H:AP_KNOB_Down) }</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Altitude_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:B747_8_FMC_1_AP_ALT_INTERVENTION)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="AS01B"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) } els{ (&gt;H:AP_KNOB_Down) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Altitude_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:AS01B_FMC_1_AP_ALT_INTERVENTION)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Default> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) } els{ (&gt;H:AP_KNOB_Down) } </SET_STATE_EXTERNAL> </Default> </Switch> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Condition Valid="IS_DYN_INCREMENT"> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>#DYN_INCREMENT_INIT# #SET_INCREMENT#</UPDATE_CODE> </UseTemplate> </Condition> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PULL_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PULL_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> <Condition NotEmpty="BTN_VALUE_CODE"> <VALUE_CODE>#BTN_VALUE_CODE#</VALUE_CODE> <TT_VALUE>#BTN_VALUE_CODE# if{ #BTN_TT_VALUE_ON# } els{ #BTN_TT_VALUE_OFF# }</TT_VALUE> <TT_VALUE_IS_DYNAMIC>True</TT_VALUE_IS_DYNAMIC> </Condition> <Condition NotEmpty="BTN_LOCAL_VAR_TO_WATCH_0"> <LOCAL_VAR_TO_WATCH_0>#BTN_LOCAL_VAR_TO_WATCH_0#</LOCAL_VAR_TO_WATCH_0> </Condition> </UseTemplate> <Condition NotEmpty="PUSH_ANIM_HANDLED_SEPARATELY"> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE>#BTN_ANIM_CODE#</ANIM_CODE> <ANIM_NAME>#ANIM_NAME_PUSH#</ANIM_NAME> <ANIM_LAG>100</ANIM_LAG> </UseTemplate> </Condition> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <BINDING_INC_0>Inc_Event</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> <BINDING_INC_0_EVENT_ID>AP_ALT_VAR_INC</BINDING_INC_0_EVENT_ID> <BINDING_INC_0_EVENT_ID_ONLY>True</BINDING_INC_0_EVENT_ID_ONLY> <BINDING_DEC_0>Dec_Event</BINDING_DEC_0> <BINDING_DEC_0_PARAM_0>1</BINDING_DEC_0_PARAM_0> <BINDING_DEC_0_EVENT_ID>AP_ALT_VAR_DEC</BINDING_DEC_0_EVENT_ID> <BINDING_DEC_0_EVENT_ID_ONLY>True</BINDING_DEC_0_EVENT_ID_ONLY> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_ADJUST</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 '%d ft' @sprintf</FORMAT_VALUE> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_#DEFAULT_BINDING_STR#)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_#DEFAULT_BINDING_STR#)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> </Case> </Switch> </UseTemplate> <Condition Check="EMISSIVE_KNOB"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"/> </Condition> </Component> </Template> <Template Name="ASOBO_AUTOPILOT_Knob_Course_SubTemplate"> <Parameters Type="Override"> <Condition Check="PUSH"> <TYPE>PUSH</TYPE> </Condition> </Parameters> <Parameters Type="Default"> <ANIM_NAME>AUTOPILOT_Knob_Course_#ID##SUFFIX_ID#</ANIM_NAME> <Condition Check="TYPE" Match="PUSH"> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Course_#ID#_push#SUFFIX_ID#</ANIM_NAME_PUSH> </Condition> <NODE_ID>AUTOPILOT_Knob_Course_#ID##SUFFIX_ID#</NODE_ID> <PART_ID>AUTOPILOT_Knob_Course</PART_ID> <COUNT>72</COUNT> <Condition Valid="DYNAMIC_VOR_ID"> <VOR_ID_1_SELECTED_CHECK>1</VOR_ID_1_SELECTED_CHECK> <ID_1>#ID#</ID_1> <ID_2>#ID#</ID_2> </Condition> <THRESHOLD_X_INPUT>0.01</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.002</THRESHOLD_X_MOUSE> <THRESHOLD_INPUT>0.01</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.002</THRESHOLD_MOUSE> <WWISE_EVENT>autopilot_knob_turn</WWISE_EVENT> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <SYNC_VAR>(A:HEADING INDICATOR, degrees)</SYNC_VAR> <INCREMENT>1</INCREMENT> </Parameters> <Parameters Type="Override"> <Condition Valid="DYNAMIC_VOR_ID"> <True> <KNOB_ID>Course_Dyn_#ID#</KNOB_ID> </True> <False> <KNOB_ID>Course_#ID#</KNOB_ID> </False> </Condition> <Switch Param="TYPE"> <Case Value="PUSH"> <ANIM_NAME_KNOB>#ANIM_NAME#</ANIM_NAME_KNOB> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_COURSE_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <Condition Valid="DYNAMIC_VOR_ID"> <True> <BTN_ID_EXTERNAL>Course_Dyn_#ID#_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#SYNC_VAR# sp0 #VOR_ID_1_SELECTED_CHECK# if{ l0 (&gt;K:VOR#ID_1#_SET) } els{ l0 (&gt;K:VOR#ID_2#_SET) }</BTN_SET_STATE_EXTERNAL> </True> <False> <BTN_ID_EXTERNAL>Course_#ID#_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#SYNC_VAR# (&gt;K:VOR#ID#_SET)</BTN_SET_STATE_EXTERNAL> </False> </Condition> </Case> </Switch> <Condition Valid="DYNAMIC_VOR_ID"> <True> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #VOR_ID_1_SELECTED_CHECK# if{ (A:NAV OBS:#ID_1#, degree) #INCREMENT# l0 * + dnor (&gt;K:VOR#ID_1#_SET) } els{ (A:NAV OBS:#ID_2#, degree) #INCREMENT# l0 * + dnor (&gt;K:VOR#ID_2#_SET) }</SET_STATE_EXTERNAL> <GET_COURSE>(A:NAV OBS:#ID_1#, degree) (A:NAV OBS:#ID_2#, degree) #VOR_ID_1_SELECTED_CHECK# ?</GET_COURSE> </True> <False> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 (A:NAV OBS:#ID#, degree) #INCREMENT# l0 * + dnor (&gt;K:VOR#ID#_SET)</SET_STATE_EXTERNAL> <GET_COURSE>(A:NAV OBS:#ID#, degree)</GET_COURSE> </False> </Condition> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_COURSE_ACTION_ADJUST</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_COURSE_TITLE</TOOLTIP_TITLE> <Condition NotEmpty="DYN_VOR_FORMAT_VALUE_OVERRIDE"> <True> <FORMAT_VALUE>#DYN_VOR_FORMAT_VALUE_OVERRIDE#</FORMAT_VALUE> </True> <False> <FORMAT_VALUE>l0 '%d°' @sprintf</FORMAT_VALUE> </False> </Condition> <GET_TT_VALUE_STATE>#GET_COURSE# sp0</GET_TT_VALUE_STATE> </UseTemplate> </Component> </Template> <Template Name="ASOBO_AUTOPILOT_Push_STD_SubTemplate"> <Parameters Type="Default"> <BARO_ID>#ID#</BARO_ID> </Parameters> <Parameters Type="Default"> <NODE_ID>AUTOPILOT_Push_STD#SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Push_STD#SUFFIX_ID#</ANIM_NAME> <IE_NAME>AUTOPILOT_Push_STD#SUFFIX_ID#</IE_NAME> </Parameters> <UseTemplate Name="ASOBO_AUTOPILOT_Base_Template"> <SET_STATE_EXTERNAL> (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) ! (&gt;L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) if{ (A:KOHLSMAN SETTING MB:#BARO_ID#, mbars) 16 * (&gt;L:XMLVAR_Baro#BARO_ID#_SavedPressure) #BARO_ID# (&gt;K:BAROMETRIC_STD_PRESSURE) } els{ #BARO_ID# (L:XMLVAR_Baro#BARO_ID#_SavedPressure) (&gt;K:2:KOHLSMAN_SET) } </SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) sp0</GET_STATE_EXTERNAL> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_PUSH_BARO_STD_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_STD</TT_DESCRIPTION_ID> <INTERACTION_TYPE>Push</INTERACTION_TYPE> </UseTemplate> </Template> <Template Name="ASOBO_AUTOPILOT_Knob_Baro_SubTemplate"> <Parameters Type="Override"> <Condition> <Test> <Or> <Arg Valid="USE_PUSH_STD"/> <Arg Check="PUSH"/> </Or> </Test> <True> <TYPE>PUSH</TYPE> </True> </Condition> <Condition> <Test> <Or> <Arg Check="AIRLINER_TYPE"/> <Arg Check="USE_AIRLINER_STD"/> </Or> </Test> <True> <Condition NotEmpty="AIRLINER_TYPE"> <True> <TYPE>#AIRLINER_TYPE#</TYPE> </True> <False> <TYPE>AIRLINER</TYPE> </False> </Condition> </True> </Condition> </Parameters> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <NODE_ID>AUTOPILOT_Knob_Baro_#ID##SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_Baro_#ID##SUFFIX_ID#</ANIM_NAME> <PART_ID>AUTOPILOT_Knob_Baro</PART_ID> </Parameters> <Parameters Type="Default"> <BARO_ID>#ID#</BARO_ID> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <COUNT>36</COUNT> <Switch Param="TYPE"> <Case Value="PUSH"> <ANIM_NAME_KNOB>#ANIM_NAME#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Baro_#ID#_push#SUFFIX_ID#</ANIM_NAME_PUSH> <THRESHOLD_X_INPUT>0.05</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.01</THRESHOLD_X_MOUSE> <THRESHOLD_INPUT>0.05</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.01</THRESHOLD_MOUSE> <WWISE_EVENT>autopilot_knob</WWISE_EVENT> </Case> <Case Value="A320"> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_Baro_#ID#_pushpull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> <MODE_BARO>0</MODE_BARO> <MODE_QNH>1</MODE_QNH> <MODE_STD>2</MODE_STD> <WWISE_EVENT>autopilot_selector_knob</WWISE_EVENT> <CENTER_RADIUS>0</CENTER_RADIUS> </Case> <Case Value="AIRLINER"> <ANIM_NAME_KNOB>#ANIM_NAME#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Baro_#ID#_push#SUFFIX_ID#</ANIM_NAME_PUSH> </Case> <Default> <Condition NotEmpty="AIRLINER_TYPE"> <True> <WWISE_EVENT>autopilot_selector_knob</WWISE_EVENT> </True> <False> <WWISE_EVENT>autopilot_knob</WWISE_EVENT> </False> </Condition> </Default> </Switch> </Parameters> <Parameters Type="Override"> <Switch Param="TYPE"> <Case Value="PUSH"> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Baro_#ID#_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#BARO_ID# (&gt;K:BAROMETRIC)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="A320"> <DEFAULT_BINDING_STR>Mode</DEFAULT_BINDING_STR> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> <BTN_ID_PULL>Baro_#ID#_STD</BTN_ID_PULL> <BTN_ID_PUSH>Baro_#ID#_QNH</BTN_ID_PUSH> <PULL_SET_STATE_EXTERNAL>#MODE_STD# (&gt;L:XMLVAR_Baro#BARO_ID#_Mode)</PULL_SET_STATE_EXTERNAL> <PUSH_SET_STATE_EXTERNAL>(L:XMLVAR_Baro#BARO_ID#_Mode) #MODE_STD# == if{ #MODE_BARO# (&gt;L:XMLVAR_Baro#BARO_ID#_Mode) } els{ (L:XMLVAR_Baro#BARO_ID#_Mode) ! (&gt;L:XMLVAR_Baro#BARO_ID#_Mode) }</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_STD</TT_DESCRIPTION_ID_PULL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_QNH</TT_DESCRIPTION_ID_PUSH> <OVERRIDE_PUSH_ANIM_CODE>0 100 (L:XMLVAR_Baro#BARO_ID#_Mode) #MODE_STD# == ? 50 (O:_PushAnimVar) ?</OVERRIDE_PUSH_ANIM_CODE> <BARO_SET_CONDITION>(L:XMLVAR_Baro#BARO_ID#_Mode) #MODE_STD# !=</BARO_SET_CONDITION> </Case> <Case Value="AIRLINER"> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Baro_#ID#_STD</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL> (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) ! (&gt;L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) if{ (A:KOHLSMAN SETTING MB:#BARO_ID#, mbars) 16 * (&gt;L:XMLVAR_Baro#BARO_ID#_SavedPressure) #BARO_ID# (&gt;K:BAROMETRIC_STD_PRESSURE) } els{ #BARO_ID# (L:XMLVAR_Baro#BARO_ID#_SavedPressure) (&gt;K:2:KOHLSMAN_SET) } </BTN_SET_STATE_EXTERNAL> <BARO_SET_CONDITION>(L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) !</BARO_SET_CONDITION> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_STD</TT_DESCRIPTION_ID_BTN> </Case> </Switch> <KNOB_ID>Baro_#ID#</KNOB_ID> <SET_STATE_EXTERNAL>p0 0 &gt; if{ #BARO_ID# (&gt;K:KOHLSMAN_INC) (&gt;H:AP_BARO_Up) } els{ #BARO_ID# (&gt;K:KOHLSMAN_DEC) (&gt;H:AP_BARO_Down) }</SET_STATE_EXTERNAL> </Parameters> <Parameters Type="Override"> <Condition Valid="ALLOW_HTML_EVENTS_IN_STD"> <True> <SET_STATE_EXTERNAL>(L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) if{ p0 0 &gt; if{ #BARO_ID# (&gt;H:AP_BARO_Up) } els{ #BARO_ID# (&gt;H:AP_BARO_Down) } } els{ #SET_STATE_EXTERNAL# }</SET_STATE_EXTERNAL> <BARO_SET_CONDITION/> </True> <False> <Condition NotEmpty="BARO_SET_CONDITION"> <True> <SET_STATE_EXTERNAL>#BARO_SET_CONDITION# if{ #SET_STATE_EXTERNAL# }</SET_STATE_EXTERNAL> </True> </Condition> </False> </Condition> <GET_BARO>(A:KOHLSMAN SETTING MB:#BARO_ID#, inHg)</GET_BARO> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PULL_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PULL_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_BTN_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_BTN_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_BARO_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>#GET_BARO# sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 '%.2fIN' @sprintf</FORMAT_VALUE> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_#DEFAULT_BINDING_STR#)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_#DEFAULT_BINDING_STR#)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> </Case> </Switch> </UseTemplate> </Component> </Template> </ModelBehaviors>

Templates

Template list
  • ASOBO_AUTOPILOT_Push_Active_Template

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Push_Active_Template"> <Parameters Type="Default"> <Condition Valid="ACTIVE_EMISSIVE_BUTTON"> <True> <ACTIVE_NODE_ID>#NODE_ID#</ACTIVE_NODE_ID> </True> <False> <Condition Check="BASE_NODE_ID"> <True> <ACTIVE_NODE_ID>#BASE_NODE_ID#_Active#SUFFIX_ID#</ACTIVE_NODE_ID> </True> <False> <ACTIVE_NODE_ID>AUTOPILOT_Push_#DEFAULT_NAME#_Active#SUFFIX_ID#</ACTIVE_NODE_ID> </False> </Condition> </False> </Condition> <RECURSIVE_ID>2</RECURSIVE_ID> </Parameters> <Component ID="#ACTIVE_NODE_ID#_Active" Node="#ACTIVE_NODE_ID#"> <Condition Check="EMISSIVE_SIMVAR_ACTIVE"> <True> <UseTemplate Name="ASOBO_GT_Emissive_Gauge_Sim"> <ALT_CODE>(L:XMLVAR_LTS_Test)</ALT_CODE> <Condition Check="EMISSIVE_SIMVAR_ACTIVE"> <EMISSIVE_SIMVAR>#EMISSIVE_SIMVAR_ACTIVE#</EMISSIVE_SIMVAR> </Condition> <Condition Valid="EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY"> <EMISSIVE_DRIVES_VISIBILITY>#EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY#</EMISSIVE_DRIVES_VISIBILITY> </Condition> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <ALT_CODE>(L:XMLVAR_LTS_Test)</ALT_CODE> <Condition Check="EMISSIVE_CODE_ACTIVE"> <EMISSIVE_CODE>#EMISSIVE_CODE_ACTIVE#</EMISSIVE_CODE> </Condition> <Condition Valid="EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY"> <EMISSIVE_DRIVES_VISIBILITY>#EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY#</EMISSIVE_DRIVES_VISIBILITY> </Condition> </UseTemplate> </False> </Condition> </Component> <Condition Valid="ACTIVE_NODE_ID#RECURSIVE_ID#"> <True> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Active_Template"> <RECURSIVE_ID Process="Int">#RECURSIVE_ID# 1 +</RECURSIVE_ID> <ACTIVE_NODE_ID Process="Param">ACTIVE_NODE_ID#RECURSIVE_ID#</ACTIVE_NODE_ID> </UseTemplate> </True> </Condition> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • RECURSIVE_ID

      Condition: Valid(ACTIVE_EMISSIVE_BUTTON)

      • Case: True

        Parameters set:

        • ACTIVE_NODE_ID (using NODE_ID)
      • Case: False

        Condition: Check(BASE_NODE_ID)

        • Case: True

          Parameters set:

          • ACTIVE_NODE_ID (using BASE_NODE_ID, SUFFIX_ID)
        • Case: False

          Parameters set:

          • ACTIVE_NODE_ID (using DEFAULT_NAME, SUFFIX_ID)

    Parameters read:

    • ACTIVE_NODE_ID

    Components:

    • #ACTIVE_NODE_ID#_Active (Node: #ACTIVE_NODE_ID#)

      Condition: Check(EMISSIVE_SIMVAR_ACTIVE)

      • Case: True

        Templates used:

        • ASOBO_GT_Emissive_Gauge_Sim

          Parameters set:

          • ALT_CODE

          Condition: Check(EMISSIVE_SIMVAR_ACTIVE)

          • Case: True

            Parameters set:

            • EMISSIVE_SIMVAR (using EMISSIVE_SIMVAR_ACTIVE)

          Condition: Valid(EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY)

          • Case: True

            Parameters set:

            • EMISSIVE_DRIVES_VISIBILITY (using EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY)
      • Case: False

        Templates used:

        • ASOBO_GT_Emissive_Gauge

          Parameters set:

          • ALT_CODE

          Condition: Check(EMISSIVE_CODE_ACTIVE)

          • Case: True

            Parameters set:

            • EMISSIVE_CODE (using EMISSIVE_CODE_ACTIVE)

          Condition: Valid(EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY)

          • Case: True

            Parameters set:

            • EMISSIVE_DRIVES_VISIBILITY (using EMISSIVE_CODE_ACTIVE_DRIVES_VISIBILITY)

    Condition: Valid(ACTIVE_NODE_ID#RECURSIVE_ID#)

  • ASOBO_AUTOPILOT_Push_Emissive_Template

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Push_Emissive_Template"> <Parameters Type="Default"> <DEFAULT_TEMPLATE_EMISSIVE>ASOBO_LIGHTING_Cabin_Emissive_Template</DEFAULT_TEMPLATE_EMISSIVE> <Condition Check="BASE_NODE_ID"> <True> <EMISSIVE_NODE_ID>#BASE_NODE_ID#_Text#SUFFIX_ID#</EMISSIVE_NODE_ID> </True> <False> <EMISSIVE_NODE_ID>AUTOPILOT_Push_#DEFAULT_NAME#_Text#SUFFIX_ID#</EMISSIVE_NODE_ID> </False> </Condition> <Switch> <Case Check="POTENTIOMETER"> <EMISSIVE_CODE>(A:LIGHT POTENTIOMETER:#POTENTIOMETER#, Percent over 100)</EMISSIVE_CODE> </Case> <Case Check="SIMVAR_POWER_SETTING"> <EMISSIVE_CODE>(A:#SIMVAR_POWER_SETTING#, Percent over 100)</EMISSIVE_CODE> </Case> <Default> <EMISSIVE_CODE>1</EMISSIVE_CODE> </Default> </Switch> </Parameters> <Condition Check="CIRCUIT_ID"> <False> <UseTemplate Name="#DEFAULT_TEMPLATE_EMISSIVE#"> <NODE_ID>#EMISSIVE_NODE_ID#</NODE_ID> </UseTemplate> </False> <True> <Component ID="#EMISSIVE_NODE_ID#_Emissive_Node" Node="#EMISSIVE_NODE_ID#"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"> <FAILURE>(A:CIRCUIT ON:#CIRCUIT_ID#, Bool)</FAILURE> </UseTemplate> </Component> </True> </Condition> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • DEFAULT_TEMPLATE_EMISSIVE

      Condition: Check(BASE_NODE_ID)

      • Case: True

        Parameters set:

        • EMISSIVE_NODE_ID (using BASE_NODE_ID, SUFFIX_ID)
      • Case: False

        Parameters set:

        • EMISSIVE_NODE_ID (using DEFAULT_NAME, SUFFIX_ID)

      Condition: Switch

      • Case: Check(POTENTIOMETER)

        Parameters read:

        • POTENTIOMETER

        Parameters set:

        • EMISSIVE_CODE (using POTENTIOMETER)
      • Case: Check(SIMVAR_POWER_SETTING)

        Parameters read:

        • SIMVAR_POWER_SETTING

        Parameters set:

        • EMISSIVE_CODE (using SIMVAR_POWER_SETTING)
      • Default case:

        Parameters set:

        • EMISSIVE_CODE

    Condition: Check(CIRCUIT_ID)

    • Case: False

      Parameters read:

      • DEFAULT_TEMPLATE_EMISSIVE

      Templates used:

    • Case: True

      Parameters read:

      • EMISSIVE_NODE_ID

      Components:

      • #EMISSIVE_NODE_ID#_Emissive_Node (Node: #EMISSIVE_NODE_ID#)

        Templates used:

  • ASOBO_AUTOPILOT_Push_Template

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Push_Template"> <Parameters Type="Default"> <ID>1</ID> </Parameters> <UseTemplate Name="ASOBO_GT_Helper_Suffix_ID_Appender"> <TEMPLATE_TO_CALL>ASOBO_AUTOPILOT_Push_SubTemplate</TEMPLATE_TO_CALL> </UseTemplate> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • ID

    Templates used:

  • ASOBO_AUTOPILOT_Push_SubTemplate

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Push_SubTemplate"> <Parameters Type="Default"> <Condition Check="NODE_ID"> <True> <BASE_NODE_ID>#NODE_ID#</BASE_NODE_ID> </True> </Condition> <NODE_ID>AUTOPILOT_Push_#DEFAULT_NAME##SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Push_#DEFAULT_NAME##SUFFIX_ID#</ANIM_NAME> <PART_ID>AUTOPILOT_Push_#DEFAULT_NAME#</PART_ID> <WWISE_EVENT_AUTOPILOT_SWITCH_ON>autopilot_switch_on</WWISE_EVENT_AUTOPILOT_SWITCH_ON> <WWISE_EVENT_AUTOPILOT_SWITCH_OFF>autopilot_switch_off</WWISE_EVENT_AUTOPILOT_SWITCH_OFF> <WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON>autopilot_push_button_on</WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON> <WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF>autopilot_push_button_off</WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF> <Condition Check="ANIM_CODE"> <AXIS>Y</AXIS> </Condition> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT_ID>AUTOPILOT</USE_INPUT_EVENT_ID> </Parameters> <Parameters Type="Default"> <Condition NotEmpty="GET_STATE_EXTERNAL"> <True> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Toggle)</LEFT_SINGLE_CODE> <CHECK_STATE_HAS_CHANGED>True</CHECK_STATE_HAS_CHANGED> </True> <False> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID#_Push)</LEFT_SINGLE_CODE> <BINDING_INC_0>Push</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> </False> </Condition> <Condition NotEmpty="EVENT_ID"> <BINDING_INC_0_EVENT_ID>#EVENT_ID#</BINDING_INC_0_EVENT_ID> </Condition> <Condition Valid="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#BTN_ID#</TOOLTIP_ENTRY_0> </Condition> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <Condition Check="ANIM_CODE"> <TT_ICON>MOVE_#AXIS#</TT_ICON> </Condition> </UseInputEvent> <Condition Check="ANIM_CODE"> <True> <UseTemplate Name="ASOBO_GT_Switch_Code"> <WWISE_EVENT_1>#WWISE_EVENT_AUTOPILOT_SWITCH_ON#</WWISE_EVENT_1> <WWISE_EVENT_2>#WWISE_EVENT_AUTOPILOT_SWITCH_OFF#</WWISE_EVENT_2> </UseTemplate> </True> <False> <UseTemplate Name="ASOBO_GT_Push_Button"> <WWISE_EVENT_1>#WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON#</WWISE_EVENT_1> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <WWISE_EVENT_2>#WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF#</WWISE_EVENT_2> <NORMALIZED_TIME_2>0.5</NORMALIZED_TIME_2> </UseTemplate> </False> </Condition> </Component> <Condition Valid="NO_INDICATOR"> <False> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Active_Template"/> </False> </Condition> <Condition Valid="NO_TEXT_EMISSIVE"> <False> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Emissive_Template"/> </False> </Condition> <Condition Valid="BUTTON_EMISSIVE"> <True> <UseTemplate Name="ASOBO_LIGHTING_Cabin_Emissive_Template"/> </True> </Condition> <Condition Check="INIT"> <Update Once="True">#INIT#</Update> </Condition> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • NODE_ID (using DEFAULT_NAME, SUFFIX_ID)
      • ANIM_NAME (using DEFAULT_NAME, SUFFIX_ID)
      • PART_ID (using DEFAULT_NAME)
      • WWISE_EVENT_AUTOPILOT_SWITCH_ON
      • WWISE_EVENT_AUTOPILOT_SWITCH_OFF
      • WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON
      • WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF
      • INPUT_EVENT_ID_SOURCE
      • USE_INPUT_EVENT_ID

      Condition: Check(NODE_ID)

      • Case: True

        Parameters set:

        • BASE_NODE_ID (using NODE_ID)

      Condition: Check(ANIM_CODE)

      • Case: True

        Parameters set:

        • AXIS
    • Default

      Condition: NotEmpty(GET_STATE_EXTERNAL)

      • Case: True

        Parameters set:

        • LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
        • CHECK_STATE_HAS_CHANGED
      • Case: False

        Parameters set:

        • LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID)
        • BINDING_INC_0
        • BINDING_INC_0_PARAM_0

      Condition: NotEmpty(EVENT_ID)

      • Case: True

        Parameters set:

        • BINDING_INC_0_EVENT_ID (using EVENT_ID)

      Condition: Valid(TOOLTIP_TITLE)

      • Case: True

        Parameters set:

        • 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_ID

      Condition: Check(ANIM_CODE)

      • Case: True

        Parameters set:

        • TT_ICON (using AXIS)

      Condition: Check(ANIM_CODE)

      • Case: True

        Templates used:

        • ASOBO_GT_Switch_Code

          Parameters set:

          • WWISE_EVENT_1 (using WWISE_EVENT_AUTOPILOT_SWITCH_ON)
          • WWISE_EVENT_2 (using WWISE_EVENT_AUTOPILOT_SWITCH_OFF)
      • Case: False

        Templates used:

        • ASOBO_GT_Push_Button

          Parameters set:

          • WWISE_EVENT_1 (using WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_ON)
          • NORMALIZED_TIME_1
          • WWISE_EVENT_2 (using WWISE_EVENT_AUTOPILOT_PUSH_BUTTON_OFF)
          • NORMALIZED_TIME_2

    Condition: Valid(NO_INDICATOR)

    Condition: Valid(NO_TEXT_EMISSIVE)

    Condition: Valid(BUTTON_EMISSIVE)

    Condition: Check(INIT)

    • Case: True

      Parameters read:

      • INIT
  • ASOBO_AUTOPILOT_Push_Event_Only_Template

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <Parameters Type="Default"> <EVENT_TYPE>PUSH</EVENT_TYPE> </Parameters> <Parameters Type="Override"> <UseParametersFn Name="Compute_First_Available_Bindings"/> </Parameters> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT_ID>AUTOPILOT</USE_INPUT_EVENT_ID> <Switch Param="EVENT_TYPE"> <Case Value="PUSH"> <DEFAULT_BINDING_STR>Push</DEFAULT_BINDING_STR> <TT_INTERACTION>PRIMARY_DOWN+SECONDARY_DOWN</TT_INTERACTION> <TT_INTERACTION_LOCKABLE>PRIMARY_DOWN</TT_INTERACTION_LOCKABLE> <ANIM_VAR>_PushAnimVar</ANIM_VAR> <TT_ICON>Push</TT_ICON> </Case> <Case Value="PULL"> <DEFAULT_BINDING_STR>Pull</DEFAULT_BINDING_STR> <TT_INTERACTION>PRIMARY_DOWN+TERTIARY_DOWN</TT_INTERACTION> <TT_INTERACTION_LOCKABLE>SECONDARY_DOWN</TT_INTERACTION_LOCKABLE> <ANIM_VAR>_PullAnimVar</ANIM_VAR> <TT_ICON>Pull</TT_ICON> </Case> </Switch> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"> <BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#>#DEFAULT_BINDING_STR#</BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#> <BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#_PARAM_0>1</BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#_PARAM_0> <ANIM>HOLD</ANIM> </UseInputEvent> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • EVENT_TYPE
    • Override
    • Default

      Parameters set:

      • INPUT_EVENT_ID_SOURCE
      • USE_INPUT_EVENT_ID

      Condition: Switch(EVENT_TYPE)

      • Case: PUSH

        Parameters set:

        • DEFAULT_BINDING_STR
        • TT_INTERACTION
        • TT_INTERACTION_LOCKABLE
        • ANIM_VAR
        • TT_ICON
      • Case: PULL

        Parameters set:

        • DEFAULT_BINDING_STR
        • TT_INTERACTION
        • TT_INTERACTION_LOCKABLE
        • ANIM_VAR
        • TT_ICON

    Parameters read:

    • USE_INPUT_EVENT_ID

    Parameters set:

    • BINDING_INC_#FIRST_AVAILABLE_INC_BINDING# (using DEFAULT_BINDING_STR)
    • BINDING_INC_#FIRST_AVAILABLE_INC_BINDING#_PARAM_0
    • ANIM
  • ASOBO_AUTOPILOT_Knob_Template

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Knob_Template"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <USE_INPUT_EVENT_ID>AUTOPILOT</USE_INPUT_EVENT_ID> <IS_INFINITE>True</IS_INFINITE> </Parameters> <Parameters Type="Default"> <Condition Valid="IS_INFINITE"> <True> <KNOB_TYPE>Infinite</KNOB_TYPE> </True> <False> <KNOB_TYPE>Finite_Code</KNOB_TYPE> <Condition Valid="USE_BTN_IE"> <BTN_ID>#KNOB_ID#</BTN_ID> </Condition> </False> </Condition> <Condition Valid="BTN_ID_EXTERNAL"> <True> <TEMPLATE_VARIANT>_Push</TEMPLATE_VARIANT> </True> <False> <TEMPLATE_VARIANT/> </False> </Condition> <CURSOR_LEFT>TurnLeftSmall</CURSOR_LEFT> <CURSOR_RIGHT>TurnRightSmall</CURSOR_RIGHT> </Parameters> <Parameters Type="Default"> <COUNT>36</COUNT> <Condition Valid="TOOLTIP_TITLE"> <TOOLTIP_ENTRY_0>#INPUT_EVENT_ID_SOURCE#_#KNOB_ID#</TOOLTIP_ENTRY_0> <Condition Valid="BTN_ID_EXTERNAL"> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_EXTERNAL#</TOOLTIP_ENTRY_1> </Condition> </Condition> </Parameters> <Parameters Type="Override"> <Condition Valid="BTN_ID_EXTERNAL"> <LEFT_SINGLE_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_EXTERNAL#_Push)</LEFT_SINGLE_CODE> </Condition> <CLOCKWISE_CODE>1 (&gt;B:#INPUT_EVENT_ID_SOURCE#_#KNOB_ID#_Inc)</CLOCKWISE_CODE> <ANTICLOCKWISE_CODE>1 (&gt;B:#INPUT_EVENT_ID_SOURCE#_#KNOB_ID#_Dec)</ANTICLOCKWISE_CODE> </Parameters> <Parameters Type="Override"> <Condition Valid="USE_BTN_IE"> <True> <TEMPLATE_TO_CALL>ASOBO_GT_Switch_XStates</TEMPLATE_TO_CALL> </True> <False> <TEMPLATE_TO_CALL>ASOBO_GT_Knob_#KNOB_TYPE##TEMPLATE_VARIANT#</TEMPLATE_TO_CALL> <ANIM_VAR_HANDLED_SEPARATELY>True</ANIM_VAR_HANDLED_SEPARATELY> </False> </Condition> </Parameters> <UseInputEvent ID="#USE_INPUT_EVENT_ID#"/> <UseTemplate Name="#TEMPLATE_TO_CALL#"/> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • INPUT_EVENT_ID_SOURCE
      • USE_INPUT_EVENT_ID
      • IS_INFINITE
    • Default

      Parameters set:

      • CURSOR_LEFT
      • CURSOR_RIGHT

      Condition: Valid(IS_INFINITE)

      • Case: True

        Parameters set:

        • KNOB_TYPE
      • Case: False

        Parameters set:

        • KNOB_TYPE

        Condition: Valid(USE_BTN_IE)

        • Case: True

          Parameters set:

          • BTN_ID (using KNOB_ID)

      Condition: Valid(BTN_ID_EXTERNAL)

      • Case: True

        Parameters set:

        • TEMPLATE_VARIANT
      • Case: False

        Parameters set:

        • TEMPLATE_VARIANT
    • Default

      Parameters set:

      • COUNT

      Condition: Valid(TOOLTIP_TITLE)

      • Case: True

        Parameters set:

        • TOOLTIP_ENTRY_0 (using INPUT_EVENT_ID_SOURCE, KNOB_ID)

        Condition: Valid(BTN_ID_EXTERNAL)

        • Case: True

          Parameters set:

          • TOOLTIP_ENTRY_1 (using INPUT_EVENT_ID_SOURCE, BTN_ID_EXTERNAL)
    • Override

      Parameters set:

      • CLOCKWISE_CODE (using INPUT_EVENT_ID_SOURCE, KNOB_ID)
      • ANTICLOCKWISE_CODE (using INPUT_EVENT_ID_SOURCE, KNOB_ID)

      Condition: Valid(BTN_ID_EXTERNAL)

      • Case: True

        Parameters set:

        • LEFT_SINGLE_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_EXTERNAL)
    • Override

      Condition: Valid(USE_BTN_IE)

      • Case: True

        Parameters set:

        • TEMPLATE_TO_CALL
      • Case: False

        Parameters set:

        • TEMPLATE_TO_CALL (using KNOB_TYPE, TEMPLATE_VARIANT)
        • ANIM_VAR_HANDLED_SEPARATELY

    Parameters read:

    • USE_INPUT_EVENT_ID
    • TEMPLATE_TO_CALL

    Templates used:

    • #TEMPLATE_TO_CALL#
  • ASOBO_AUTOPILOT_Knob_VerticalSpeed_SubTemplate

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Knob_VerticalSpeed_SubTemplate"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <NODE_ID>AUTOPILOT_Knob_VerticalSpeed#SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_VerticalSpeed#SUFFIX_ID#</ANIM_NAME> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_VerticalSpeed_PushPull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> <Condition Valid="SEPARATED_INTERACTION"> <HITBOX_UP_NODE_ID>AUTOPILOT_Knob_VerticalSpeed_DN#SUFFIX_ID#</HITBOX_UP_NODE_ID> <HITBOX_DOWN_NODE_ID>AUTOPILOT_Knob_VerticalSpeed_UP#SUFFIX_ID#</HITBOX_DOWN_NODE_ID> </Condition> <PART_ID>AUTOPILOT_Knob_VerticalSpeed</PART_ID> <WWISE_EVENT>autopilot_verticalspeed_knob</WWISE_EVENT> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <COUNT>36</COUNT> <MAX_PITCH>25</MAX_PITCH> <Switch> <Case Check="AIRBUS_TYPE"> <TYPE>AIRBUS</TYPE> </Case> <Case Valid="SET_AIRSPEED_ON_FLC"> <TYPE>FLC_AIRSPEED</TYPE> </Case> </Switch> </Parameters> <Parameters Type="Default"> <Switch Param="TYPE"> <Case Value="AIRBUS"> <CLOCKWISE_DIR>INC</CLOCKWISE_DIR> <ANTICLOCKWISE_DIR>DEC</ANTICLOCKWISE_DIR> <MACH_INCREMENT>1</MACH_INCREMENT> <SPEED_INCREMENT>1</SPEED_INCREMENT> <VS_INCREMENT>100</VS_INCREMENT> <VS_INDEX>3</VS_INDEX> <FORMAT_VS_VALUE>(L:XMLVAR_TRK_FPA_MODE_ACTIVE) if{ l0 60 / near 10 / &apos;%.2f FPA&apos; (F:Format) } els{ l0 &apos;%d ft/min&apos; (F:Format) }</FORMAT_VS_VALUE> </Case> <Default> <VS_INDEX>1</VS_INDEX> <FORMAT_VS_VALUE>l0 &apos;%d ft/min&apos; @sprintf</FORMAT_VS_VALUE> <Switch> <Case Valid="UP_DEC_DN_INC"> <CLOCKWISE_DIR>INC</CLOCKWISE_DIR> <ANTICLOCKWISE_DIR>DEC</ANTICLOCKWISE_DIR> <CLOCKWISE_DIR_PITCH>UP</CLOCKWISE_DIR_PITCH> <ANTICLOCKWISE_DIR_PITCH>DN</ANTICLOCKWISE_DIR_PITCH> <Condition Check="UP_DEC_DN_INC" Match="INVERT_ANIM"> <INVERT_ANIM>True</INVERT_ANIM> </Condition> <MACH_INCREMENT>1</MACH_INCREMENT> <SPEED_INCREMENT>1</SPEED_INCREMENT> <VS_INCREMENT>100</VS_INCREMENT> <PITCH_INCREMENT>0.2</PITCH_INCREMENT> </Case> <Default> <CLOCKWISE_DIR>DEC</CLOCKWISE_DIR> <ANTICLOCKWISE_DIR>INC</ANTICLOCKWISE_DIR> <CLOCKWISE_DIR_PITCH>DN</CLOCKWISE_DIR_PITCH> <ANTICLOCKWISE_DIR_PITCH>UP</ANTICLOCKWISE_DIR_PITCH> <MACH_INCREMENT>-1</MACH_INCREMENT> <SPEED_INCREMENT>-1</SPEED_INCREMENT> <PITCH_INCREMENT>-0.2</PITCH_INCREMENT> <VS_INCREMENT>100</VS_INCREMENT> </Default> </Switch> </Default> </Switch> <SWITCH_DIRECTION>Vertical</SWITCH_DIRECTION> <THRESHOLD_Y_MOUSE>0.005</THRESHOLD_Y_MOUSE> </Parameters> <Parameters Type="Override"> <Condition> <Test> <Or> <Arg Check="HITBOX_UP_NODE_ID"/> <Arg Check="HITBOX_DOWN_NODE_ID"/> </Or> </Test> <True> <SEPARATED_INTERACTION>True</SEPARATED_INTERACTION> </True> </Condition> </Parameters> <Parameters Type="Override"> <Switch Param="TYPE"> <Case Value="FLC_AIRSPEED"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 l0 -1 * sp1 (A:AUTOPILOT FLIGHT LEVEL CHANGE, Bool) if{ (L:XMLVAR_AirSpeedIsInMach) if{ (A:AUTOPILOT MACH HOLD VAR, number) #MACH_INCREMENT# l1 * + 0 max (&gt;K:AP_MACH_VAR_SET) } els{ (A:AUTOPILOT AIRSPEED HOLD VAR, knot) #SPEED_INCREMENT# l1 * + 0 max (&gt;K:AP_SPD_VAR_SET) } } els{ (A:AUTOPILOT VERTICAL HOLD:#VS_INDEX#, Bool) if{ #VS_INDEX# (A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) #VS_INCREMENT# l0 * + (&gt;K:2:AP_VS_VAR_SET_ENGLISH) } els{ (A:AUTOPILOT PITCH HOLD, Bool) if{ (A:AUTOPILOT PITCH HOLD REF, degrees) -#PITCH_INCREMENT# l0 * + #MAX_PITCH# / 1 min -1 max 16384 * (&gt;K:AP_PITCH_REF_SET) } } } </SET_STATE_EXTERNAL> </Case> <Case Value="AIRBUS"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #VS_INDEX# (A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) #VS_INCREMENT# l0 * + (&gt;K:2:AP_VS_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:A320_Neo_FCU_VS_INC) } els{ (&gt;H:A320_Neo_FCU_VS_DEC) } </SET_STATE_EXTERNAL> <BTN_ID_PULL>VerticalSpeed_Hold</BTN_ID_PULL> <PULL_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_FCU_VS_HOLD)</PULL_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_HOLD</TT_DESCRIPTION_ID_PULL> <BTN_ID_PUSH>VerticalSpeed_Zero</BTN_ID_PUSH> <PUSH_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_FCU_VS_ZERO)</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_ZERO</TT_DESCRIPTION_ID_PUSH> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> </Case> <Default> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #VS_INDEX# (A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) #VS_INCREMENT# l0 * + (&gt;K:2:AP_VS_VAR_SET_ENGLISH) </SET_STATE_EXTERNAL> </Default> </Switch> <KNOB_ID>VerticalSpeed</KNOB_ID> </Parameters> <Switch> <Case Valid="SEPARATED_INTERACTION"> <Component ID="#NODE_ID#"> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TEMPLATE_VARIANT>_SeparatedInteraction</TEMPLATE_VARIANT> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_SET</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 &apos;%d ft/min&apos; @sprintf</FORMAT_VALUE> <INTERACTION_AXIS>Y</INTERACTION_AXIS> <TT_ICON>MOVE_AXIS_Y</TT_ICON> </UseTemplate> </Component> </Case> <Default> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_Pull)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_Push)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> <CENTER_RADIUS>0</CENTER_RADIUS> </Case> </Switch> <Condition Check="TYPE" Match="AIRBUS"> <False> <IS_WHEEL>True</IS_WHEEL> </False> </Condition> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_ACTION_SET</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_VERTICALSPEED_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT VERTICAL HOLD VAR:#VS_INDEX#, feet per minute) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>#FORMAT_VS_VALUE#</FORMAT_VALUE> </UseTemplate> </Component> </Default> </Switch> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • INPUT_EVENT_ID_SOURCE
      • NODE_ID (using SUFFIX_ID)
      • ANIM_NAME (using SUFFIX_ID)
      • ANIM_NAME_PUSHPULL (using SUFFIX_ID)
      • PART_ID
      • WWISE_EVENT
      • WWISE_EVENT_1
      • WWISE_EVENT_2
      • COUNT
      • MAX_PITCH

      Condition: Valid(SEPARATED_INTERACTION)

      • Case: True

        Parameters set:

        • HITBOX_UP_NODE_ID (using SUFFIX_ID)
        • HITBOX_DOWN_NODE_ID (using SUFFIX_ID)

      Condition: Switch

      • Case: Check(AIRBUS_TYPE)

        Parameters read:

        • AIRBUS_TYPE

        Parameters set:

        • TYPE
      • Case: Valid(SET_AIRSPEED_ON_FLC)

        Parameters set:

        • TYPE
    • Default

      Parameters set:

      • SWITCH_DIRECTION
      • THRESHOLD_Y_MOUSE

      Condition: Switch(TYPE)

      • Case: AIRBUS

        Parameters set:

        • CLOCKWISE_DIR
        • ANTICLOCKWISE_DIR
        • MACH_INCREMENT
        • SPEED_INCREMENT
        • VS_INCREMENT
        • VS_INDEX
        • FORMAT_VS_VALUE
      • Default case:

        Parameters set:

        • VS_INDEX
        • FORMAT_VS_VALUE

        Condition: Switch

        • Case: Valid(UP_DEC_DN_INC)

          Parameters set:

          • CLOCKWISE_DIR
          • ANTICLOCKWISE_DIR
          • CLOCKWISE_DIR_PITCH
          • ANTICLOCKWISE_DIR_PITCH
          • MACH_INCREMENT
          • SPEED_INCREMENT
          • VS_INCREMENT
          • PITCH_INCREMENT

          Condition: Check(UP_DEC_DN_INC)

          • Case: True

            Parameters set:

            • INVERT_ANIM
        • Default case:

          Parameters set:

          • CLOCKWISE_DIR
          • ANTICLOCKWISE_DIR
          • CLOCKWISE_DIR_PITCH
          • ANTICLOCKWISE_DIR_PITCH
          • MACH_INCREMENT
          • SPEED_INCREMENT
          • PITCH_INCREMENT
          • VS_INCREMENT
    • Override

      Condition: Test(HITBOX_UP_NODE_ID, HITBOX_DOWN_NODE_ID)

      • Case: True

        Parameters set:

        • SEPARATED_INTERACTION
    • Override

      Parameters set:

      • KNOB_ID

      Condition: Switch(TYPE)

      • Case: FLC_AIRSPEED

        Parameters set:

        • SET_STATE_EXTERNAL (using MACH_INCREMENT, SPEED_INCREMENT, VS_INDEX, VS_INCREMENT, PITCH_INCREMENT, MAX_PITCH)
      • Case: AIRBUS

        Parameters set:

        • SET_STATE_EXTERNAL (using VS_INDEX, VS_INCREMENT)
        • BTN_ID_PULL
        • PULL_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_PULL
        • BTN_ID_PUSH
        • PUSH_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_PUSH
        • ADDITIONAL_EVENT_TYPE
      • Default case:

        Parameters set:

        • SET_STATE_EXTERNAL (using VS_INDEX, VS_INCREMENT)

    Condition: Switch

    • Case: Valid(SEPARATED_INTERACTION)

      Parameters read:

      • NODE_ID

      Components:

      • #NODE_ID#

        Templates used:

        • ASOBO_AUTOPILOT_Knob_Template
          • May include a subtemplate using the parameter 'TEMPLATE_TO_CALL' and resolve to the following template(s):

          Parameters set:

          • TEMPLATE_VARIANT
          • TT_DESCRIPTION_ID
          • TOOLTIP_TITLE
          • GET_TT_VALUE_STATE (using VS_INDEX)
          • FORMAT_VALUE
          • INTERACTION_AXIS
          • TT_ICON
    • Default case:

      Parameters read:

      • NODE_ID

      Components:

      • #NODE_ID# (Node: #NODE_ID#)

        Templates used:

        • ASOBO_AUTOPILOT_Knob_Template
          • May include a subtemplate using the parameter 'TEMPLATE_TO_CALL' and resolve to the following template(s):

          Parameters set:

          • TT_DESCRIPTION_ID
          • TOOLTIP_TITLE
          • GET_TT_VALUE_STATE (using VS_INDEX)
          • FORMAT_VALUE (using FORMAT_VS_VALUE)

          Condition: Switch(ADDITIONAL_EVENT_TYPE)

          • Case: PUSH_PULL

            Parameters set:

            • TEMPLATE_VARIANT
            • PULL_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL)
            • PUSH_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH)
            • TOOLTIP_ENTRY_1 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL)
            • TOOLTIP_ENTRY_2 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH)
            • CENTER_RADIUS

          Condition: Check(TYPE)

          • Case: False

            Parameters set:

            • IS_WHEEL

        Condition: Switch(ADDITIONAL_EVENT_TYPE)

        • Case: PUSH_PULL

          Templates used:

  • ASOBO_AUTOPILOT_Knob_Heading_SubTemplate

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Knob_Heading_SubTemplate"> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <ANIM_NAME_KNOB>AUTOPILOT_Knob_Heading#SUFFIX_ID#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Heading_Push#SUFFIX_ID#</ANIM_NAME_PUSH> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_Heading_PushPull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> <PART_ID>AUTOPILOT_Knob_Heading</PART_ID> <NODE_ID>AUTOPILOT_Knob_Heading#SUFFIX_ID#</NODE_ID> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <NORMALIZED_TIME_2>0.5</NORMALIZED_TIME_2> <WWISE_EVENT>autopilot_heading_knob</WWISE_EVENT> <COUNT>36</COUNT> <THRESHOLD_X_INPUT>0.01</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.001</THRESHOLD_X_MOUSE> <THRESHOLD_INPUT>0.01</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.001</THRESHOLD_MOUSE> <Condition Check="PUSH"> <TYPE>PUSH</TYPE> </Condition> <Switch Param="TYPE"> <Case Value="AIRBUS"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Default> <HEADING_INDEX>1</HEADING_INDEX> </Default> </Switch> </Parameters> <Parameters Type="Override"> <KNOB_ID>Heading</KNOB_ID> <Switch Param="TYPE"> <Case Value="PUSH"> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Heading_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(A:HEADING INDICATOR, degrees) (&gt;K:HEADING_BUG_SET)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="AIRBUS"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET) p0 0 &gt; if{ (&gt;H:A320_Neo_CDU_AP_INC_HEADING) } els{ (&gt;H:A320_Neo_CDU_AP_DEC_HEADING) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> <BTN_ID_PULL>Heading_Selected</BTN_ID_PULL> <BTN_ID_PUSH>Heading_Managed</BTN_ID_PUSH> <DEFAULT_BINDING_STR>Select</DEFAULT_BINDING_STR> <PULL_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_SELECTED_HEADING)</PULL_SET_STATE_EXTERNAL> <PUSH_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_MANAGED_HEADING)</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SLT</TT_DESCRIPTION_ID_PULL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_MAN</TT_DESCRIPTION_ID_PUSH> </Case> <Case Value="B747"> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Heading_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:B747_8_FMC_1_AP_HEADING_SEL)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="AS01B"> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Heading_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:AS01B_FMC_1_AP_HEADING_SEL)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Default> <ANIM_NAME>#ANIM_NAME_KNOB#</ANIM_NAME> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) 1 l0 * + dnor (&gt;K:2:HEADING_BUG_SET)</SET_STATE_EXTERNAL> </Default> </Switch> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PULL_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PULL_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_HEADING_ACTION_SET_ADJUST</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_HEADING_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT HEADING LOCK DIR:#HEADING_INDEX#, degrees) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 &apos;%d°&apos; @sprintf</FORMAT_VALUE> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_#DEFAULT_BINDING_STR#)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_#DEFAULT_BINDING_STR#)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> </Case> </Switch> </UseTemplate> </Component> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • INPUT_EVENT_ID_SOURCE
      • ANIM_NAME_KNOB (using SUFFIX_ID)
      • ANIM_NAME_PUSH (using SUFFIX_ID)
      • ANIM_NAME_PUSHPULL (using SUFFIX_ID)
      • PART_ID
      • NODE_ID (using SUFFIX_ID)
      • WWISE_EVENT_1
      • NORMALIZED_TIME_1
      • WWISE_EVENT_2
      • NORMALIZED_TIME_2
      • WWISE_EVENT
      • COUNT
      • THRESHOLD_X_INPUT
      • THRESHOLD_X_MOUSE
      • THRESHOLD_INPUT
      • THRESHOLD_MOUSE

      Condition: Check(PUSH)

      • Case: True

        Parameters set:

        • TYPE

      Condition: Switch(TYPE)

      • Case: AIRBUS

        Parameters set:

        • HEADING_INDEX
      • Default case:

        Parameters set:

        • HEADING_INDEX
    • Override

      Parameters set:

      • KNOB_ID

      Condition: Switch(TYPE)

      • Case: PUSH

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX)
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_EXTERNAL
        • BTN_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_BTN
      • Case: AIRBUS

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX)
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_PULL
        • BTN_ID_PUSH
        • DEFAULT_BINDING_STR
        • PULL_SET_STATE_EXTERNAL
        • PUSH_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_PULL
        • TT_DESCRIPTION_ID_PUSH
      • Case: B747

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX)
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_EXTERNAL
        • BTN_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_BTN
      • Case: AS01B

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX)
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_EXTERNAL
        • BTN_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_BTN
      • Default case:

        Parameters set:

        • ANIM_NAME (using ANIM_NAME_KNOB)
        • SET_STATE_EXTERNAL (using HEADING_INDEX)

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Templates used:

      • ASOBO_AUTOPILOT_Knob_Template
        • May include a subtemplate using the parameter 'TEMPLATE_TO_CALL' and resolve to the following template(s):

        Parameters set:

        • TT_DESCRIPTION_ID
        • TOOLTIP_TITLE
        • GET_TT_VALUE_STATE (using HEADING_INDEX)
        • FORMAT_VALUE

        Condition: Switch(ADDITIONAL_EVENT_TYPE)

        • Case: PUSH_PULL

          Parameters set:

          • TEMPLATE_VARIANT
          • PULL_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL, DEFAULT_BINDING_STR)
          • PUSH_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH, DEFAULT_BINDING_STR)
          • TOOLTIP_ENTRY_1 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL)
          • TOOLTIP_ENTRY_2 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH)

      Condition: Switch(ADDITIONAL_EVENT_TYPE)

      • Case: PUSH_PULL

        Templates used:

        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_PULL)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using PULL_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_PULL)

          Condition: Valid(TT_DESCRIPTION_ID_PULL_IS_DYNAMIC)

          • Case: True

            Parameters set:

            • TT_DESCRIPTION_IS_DYNAMIC (using TT_DESCRIPTION_ID_PULL_IS_DYNAMIC)
        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_PUSH)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using PUSH_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_PUSH)

          Condition: Valid(TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC)

          • Case: True

            Parameters set:

            • TT_DESCRIPTION_IS_DYNAMIC (using TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC)
      • Case: PUSH

        Templates used:

  • ASOBO_AUTOPILOT_Knob_Altitude_SubTemplate

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Knob_Altitude_SubTemplate"> <Parameters Type="Override"> <Condition Check="PUSH"> <TYPE>PUSH</TYPE> </Condition> </Parameters> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <PART_ID>AUTOPILOT_Knob_Altitude</PART_ID> <Condition Check="INCREMENT"> <True> <NODE_ID>AUTOPILOT_Knob_Altitude_#INCREMENT##SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_Altitude_#INCREMENT##SUFFIX_ID#</ANIM_NAME> <Condition Check="TYPE" Match="PUSH"> <ANIM_NAME_KNOB>AUTOPILOT_Knob_Altitude_#INCREMENT##SUFFIX_ID#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Altitude_#INCREMENT#_Push#SUFFIX_ID#</ANIM_NAME_PUSH> </Condition> <WWISE_EVENT>autopilot_altitude_#INCREMENT#_knob</WWISE_EVENT> <COUNT>36</COUNT> <THRESHOLD_INPUT>0.0001</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.003</THRESHOLD_MOUSE> <INCREMENT_IN_KNOB_ID/> </True> <False> <Condition> <Test> <Or> <Arg Check="TYPE" Match="AIRBUS"/> <Arg Check="TYPE" Match="AS01B"/> </Or> </Test> <False> <IS_DYN_INCREMENT>True</IS_DYN_INCREMENT> </False> </Condition> <Condition Check="INCREMENT"> <False> <INCREMENT_VAR>XMLVAR_Autopilot_Altitude_Increment</INCREMENT_VAR> </False> </Condition> <INCREMENT>(L:XMLVAR_Autopilot_Altitude_Increment)</INCREMENT> <SET_INCREMENT>(&gt;L:XMLVAR_Autopilot_Altitude_Increment)</SET_INCREMENT> <DYN_INCREMENT_INIT>100</DYN_INCREMENT_INIT> <NODE_ID>AUTOPILOT_Knob_Altitude#SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_Altitude#SUFFIX_ID#</ANIM_NAME> <WWISE_EVENT>autopilot_altitude_knob</WWISE_EVENT> <COUNT>36</COUNT> <THRESHOLD_X_INPUT>0.05</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.01</THRESHOLD_X_MOUSE> <Switch Param="TYPE"> <Case Value="AIRBUS"> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_Altitude_PushPull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> </Case> <Case Value="PUSH"> <ANIM_NAME_KNOB>AUTOPILOT_Knob_Altitude#SUFFIX_ID#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Altitude_Push#SUFFIX_ID#</ANIM_NAME_PUSH> <ALT_PUSH_TYPE>ALT_SYNC</ALT_PUSH_TYPE> </Case> </Switch> </False> </Condition> <Switch Param="TYPE"> <Case Value="AIRBUS"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Case Value="B747"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Case Value="AS01B"> <HEADING_INDEX>3</HEADING_INDEX> </Case> <Default> <HEADING_INDEX>0</HEADING_INDEX> </Default> </Switch> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <NORMALIZED_TIME_1>0.1</NORMALIZED_TIME_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <NORMALIZED_TIME_2>0.3</NORMALIZED_TIME_2> <Switch Param="ALT_PUSH_TYPE"> <Case Value="ALT_FINE_TUNE"> <FINE_TUNE_INCREMENT>100</FINE_TUNE_INCREMENT> </Case> </Switch> </Parameters> <Parameters Type="Override"> <Condition Check="INCREMENT_IN_KNOB_ID"> <True> <KNOB_ID>Altitude_#INCREMENT#</KNOB_ID> </True> <False> <KNOB_ID>Altitude</KNOB_ID> </False> </Condition> <Switch Param="TYPE"> <Case Value="PUSH"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) } els{ (&gt;H:AP_KNOB_Down) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <Switch Param="ALT_PUSH_TYPE"> <Case Value="ALT_SYNC"> <BTN_ID_EXTERNAL>Altitude_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(A:INDICATED ALTITUDE, feet) (&gt;K:AP_ALT_VAR_SET_ENGLISH) (&gt;H:AP_KNOB)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="ALT_FINE_TUNE"> <BTN_ID_EXTERNAL>Altitude_Fine_Tune</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#FINE_TUNE_INCREMENT# #DYN_INCREMENT_INIT# #INCREMENT# #FINE_TUNE_INCREMENT# != ? #SET_INCREMENT#</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDE_INCREMENT_ACTION</TT_DESCRIPTION_ID_BTN> <PUSH_ANIM_HANDLED_SEPARATELY>True</PUSH_ANIM_HANDLED_SEPARATELY> <BTN_ANIM_CODE>#INCREMENT# #FINE_TUNE_INCREMENT# == 100 *</BTN_ANIM_CODE> <BTN_LOCAL_VAR_TO_WATCH_0>#INCREMENT_VAR#</BTN_LOCAL_VAR_TO_WATCH_0> <BTN_VALUE_CODE>#INCREMENT# #FINE_TUNE_INCREMENT# ==</BTN_VALUE_CODE> <BTN_TT_VALUE_ON>&apos;100&apos;</BTN_TT_VALUE_ON> <BTN_TT_VALUE_OFF>&apos;1000&apos;</BTN_TT_VALUE_OFF> </Case> </Switch> </Case> <Case Value="AIRBUS"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) (&gt;H:A320_Neo_CDU_AP_INC_ALT) } els{ (&gt;H:AP_KNOB_Down) (&gt;H:A320_Neo_CDU_AP_DEC_ALT) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> <BTN_ID_PULL>Altitude_Selected</BTN_ID_PULL> <BTN_ID_PUSH>Altitude_Managed</BTN_ID_PUSH> <DEFAULT_BINDING_STR>Mode</DEFAULT_BINDING_STR> <PULL_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_SELECTED_ALTITUDE)</PULL_SET_STATE_EXTERNAL> <PUSH_SET_STATE_EXTERNAL>(&gt;H:A320_Neo_CDU_MODE_MANAGED_ALTITUDE)</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_PUSH_ALTITUDE_ACTION_SLT</TT_DESCRIPTION_ID_PULL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_PUSH_ALTITUDE_ACTION_MAN</TT_DESCRIPTION_ID_PUSH> </Case> <Case Value="B747"> <SET_STATE_EXTERNAL>p0 0 &gt; if{ #HEADING_INDEX# 0 (&gt;K:2:AP_ALT_VAR_INC) (&gt;H:AP_KNOB_Up) } els{ #HEADING_INDEX# 0 (&gt;K:2:AP_ALT_VAR_DEC) (&gt;H:AP_KNOB_Down) }</SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Altitude_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:B747_8_FMC_1_AP_ALT_INTERVENTION)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="AS01B"> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) } els{ (&gt;H:AP_KNOB_Down) } </SET_STATE_EXTERNAL> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Altitude_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>(&gt;H:AS01B_FMC_1_AP_ALT_INTERVENTION)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> </Case> <Default> <SET_STATE_EXTERNAL> 1 -1 p0 0 &gt; ? sp0 #HEADING_INDEX# (A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) #INCREMENT# l0 * + (&gt;K:2:AP_ALT_VAR_SET_ENGLISH) p0 0 &gt; if{ (&gt;H:AP_KNOB_Up) } els{ (&gt;H:AP_KNOB_Down) } </SET_STATE_EXTERNAL> </Default> </Switch> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Condition Valid="IS_DYN_INCREMENT"> <UseTemplate Name="ASOBO_GT_Update"> <UPDATE_ONCE>True</UPDATE_ONCE> <UPDATE_CODE>#DYN_INCREMENT_INIT# #SET_INCREMENT#</UPDATE_CODE> </UseTemplate> </Condition> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PULL_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PULL_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> <Condition NotEmpty="BTN_VALUE_CODE"> <VALUE_CODE>#BTN_VALUE_CODE#</VALUE_CODE> <TT_VALUE>#BTN_VALUE_CODE# if{ #BTN_TT_VALUE_ON# } els{ #BTN_TT_VALUE_OFF# }</TT_VALUE> <TT_VALUE_IS_DYNAMIC>True</TT_VALUE_IS_DYNAMIC> </Condition> <Condition NotEmpty="BTN_LOCAL_VAR_TO_WATCH_0"> <LOCAL_VAR_TO_WATCH_0>#BTN_LOCAL_VAR_TO_WATCH_0#</LOCAL_VAR_TO_WATCH_0> </Condition> </UseTemplate> <Condition NotEmpty="PUSH_ANIM_HANDLED_SEPARATELY"> <UseTemplate Name="ASOBO_GT_Anim_Code"> <ANIM_CODE>#BTN_ANIM_CODE#</ANIM_CODE> <ANIM_NAME>#ANIM_NAME_PUSH#</ANIM_NAME> <ANIM_LAG>100</ANIM_LAG> </UseTemplate> </Condition> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <BINDING_INC_0>Inc_Event</BINDING_INC_0> <BINDING_INC_0_PARAM_0>1</BINDING_INC_0_PARAM_0> <BINDING_INC_0_EVENT_ID>AP_ALT_VAR_INC</BINDING_INC_0_EVENT_ID> <BINDING_INC_0_EVENT_ID_ONLY>True</BINDING_INC_0_EVENT_ID_ONLY> <BINDING_DEC_0>Dec_Event</BINDING_DEC_0> <BINDING_DEC_0_PARAM_0>1</BINDING_DEC_0_PARAM_0> <BINDING_DEC_0_EVENT_ID>AP_ALT_VAR_DEC</BINDING_DEC_0_EVENT_ID> <BINDING_DEC_0_EVENT_ID_ONLY>True</BINDING_DEC_0_EVENT_ID_ONLY> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_ACTION_ADJUST</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_ALTITUDESELECTED_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>(A:AUTOPILOT ALTITUDE LOCK VAR:#HEADING_INDEX#, feet) sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 &apos;%d ft&apos; @sprintf</FORMAT_VALUE> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_#DEFAULT_BINDING_STR#)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_#DEFAULT_BINDING_STR#)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> </Case> </Switch> </UseTemplate> <Condition Check="EMISSIVE_KNOB"> <UseTemplate Name="ASOBO_GT_Emissive_Gauge"/> </Condition> </Component> </Template>

    Parameters initialization:

    • Override

      Condition: Check(PUSH)

      • Case: True

        Parameters set:

        • TYPE
    • Default

      Parameters set:

      • INPUT_EVENT_ID_SOURCE
      • PART_ID
      • WWISE_EVENT_1
      • NORMALIZED_TIME_1
      • WWISE_EVENT_2
      • NORMALIZED_TIME_2

      Condition: Check(INCREMENT)

      • Case: True

        Parameters set:

        • NODE_ID (using INCREMENT, SUFFIX_ID)
        • ANIM_NAME (using INCREMENT, SUFFIX_ID)
        • WWISE_EVENT (using INCREMENT)
        • COUNT
        • THRESHOLD_INPUT
        • THRESHOLD_MOUSE
        • INCREMENT_IN_KNOB_ID

        Condition: Check(TYPE)

        • Case: True

          Parameters set:

          • ANIM_NAME_KNOB (using INCREMENT, SUFFIX_ID)
          • ANIM_NAME_PUSH (using INCREMENT, SUFFIX_ID)
      • Case: False

        Parameters set:

        • INCREMENT
        • SET_INCREMENT
        • DYN_INCREMENT_INIT
        • NODE_ID (using SUFFIX_ID)
        • ANIM_NAME (using SUFFIX_ID)
        • WWISE_EVENT
        • COUNT
        • THRESHOLD_X_INPUT
        • THRESHOLD_X_MOUSE

        Condition: Test(TYPE, TYPE)

        • Case: False

          Parameters set:

          • IS_DYN_INCREMENT

        Condition: Check(INCREMENT)

        • Case: False

          Parameters set:

          • INCREMENT_VAR

        Condition: Switch(TYPE)

        • Case: AIRBUS

          Parameters set:

          • ANIM_NAME_PUSHPULL (using SUFFIX_ID)
        • Case: PUSH

          Parameters set:

          • ANIM_NAME_KNOB (using SUFFIX_ID)
          • ANIM_NAME_PUSH (using SUFFIX_ID)
          • ALT_PUSH_TYPE

      Condition: Switch(TYPE)

      • Case: AIRBUS

        Parameters set:

        • HEADING_INDEX
      • Case: B747

        Parameters set:

        • HEADING_INDEX
      • Case: AS01B

        Parameters set:

        • HEADING_INDEX
      • Default case:

        Parameters set:

        • HEADING_INDEX

      Condition: Switch(ALT_PUSH_TYPE)

      • Case: ALT_FINE_TUNE

        Parameters set:

        • FINE_TUNE_INCREMENT
    • Override

      Condition: Check(INCREMENT_IN_KNOB_ID)

      • Case: True

        Parameters set:

        • KNOB_ID (using INCREMENT)
      • Case: False

        Parameters set:

        • KNOB_ID

      Condition: Switch(TYPE)

      • Case: PUSH

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX, INCREMENT)
        • ADDITIONAL_EVENT_TYPE

        Condition: Switch(ALT_PUSH_TYPE)

        • Case: ALT_SYNC

          Parameters set:

          • BTN_ID_EXTERNAL
          • BTN_SET_STATE_EXTERNAL
          • TT_DESCRIPTION_ID_BTN
        • Case: ALT_FINE_TUNE

          Parameters set:

          • BTN_ID_EXTERNAL
          • BTN_SET_STATE_EXTERNAL (using FINE_TUNE_INCREMENT, DYN_INCREMENT_INIT, INCREMENT, SET_INCREMENT)
          • TT_DESCRIPTION_ID_BTN
          • PUSH_ANIM_HANDLED_SEPARATELY
          • BTN_ANIM_CODE (using INCREMENT, FINE_TUNE_INCREMENT)
          • BTN_LOCAL_VAR_TO_WATCH_0 (using INCREMENT_VAR)
          • BTN_VALUE_CODE (using INCREMENT, FINE_TUNE_INCREMENT)
          • BTN_TT_VALUE_ON
          • BTN_TT_VALUE_OFF
      • Case: AIRBUS

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX, INCREMENT)
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_PULL
        • BTN_ID_PUSH
        • DEFAULT_BINDING_STR
        • PULL_SET_STATE_EXTERNAL
        • PUSH_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_PULL
        • TT_DESCRIPTION_ID_PUSH
      • Case: B747

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX)
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_EXTERNAL
        • BTN_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_BTN
      • Case: AS01B

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX, INCREMENT)
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_EXTERNAL
        • BTN_SET_STATE_EXTERNAL
        • TT_DESCRIPTION_ID_BTN
      • Default case:

        Parameters set:

        • SET_STATE_EXTERNAL (using HEADING_INDEX, INCREMENT)

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Templates used:

      • ASOBO_AUTOPILOT_Knob_Template
        • May include a subtemplate using the parameter 'TEMPLATE_TO_CALL' and resolve to the following template(s):

        Parameters set:

        • BINDING_INC_0
        • BINDING_INC_0_PARAM_0
        • BINDING_INC_0_EVENT_ID
        • BINDING_INC_0_EVENT_ID_ONLY
        • BINDING_DEC_0
        • BINDING_DEC_0_PARAM_0
        • BINDING_DEC_0_EVENT_ID
        • BINDING_DEC_0_EVENT_ID_ONLY
        • TT_DESCRIPTION_ID
        • TOOLTIP_TITLE
        • GET_TT_VALUE_STATE (using HEADING_INDEX)
        • FORMAT_VALUE

        Condition: Switch(ADDITIONAL_EVENT_TYPE)

        • Case: PUSH_PULL

          Parameters set:

          • TEMPLATE_VARIANT
          • PULL_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL, DEFAULT_BINDING_STR)
          • PUSH_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH, DEFAULT_BINDING_STR)
          • TOOLTIP_ENTRY_1 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL)
          • TOOLTIP_ENTRY_2 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH)

      Condition: Valid(IS_DYN_INCREMENT)

      • Case: True

        Templates used:

        • ASOBO_GT_Update

          Parameters set:

          • UPDATE_ONCE
          • UPDATE_CODE (using DYN_INCREMENT_INIT, SET_INCREMENT)

      Condition: Switch(ADDITIONAL_EVENT_TYPE)

      • Case: PUSH_PULL

        Templates used:

        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_PULL)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using PULL_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_PULL)

          Condition: Valid(TT_DESCRIPTION_ID_PULL_IS_DYNAMIC)

          • Case: True

            Parameters set:

            • TT_DESCRIPTION_IS_DYNAMIC (using TT_DESCRIPTION_ID_PULL_IS_DYNAMIC)
        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_PUSH)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using PUSH_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_PUSH)

          Condition: Valid(TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC)

          • Case: True

            Parameters set:

            • TT_DESCRIPTION_IS_DYNAMIC (using TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC)
      • Case: PUSH

        Templates used:

        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_EXTERNAL)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using BTN_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_BTN)

          Condition: NotEmpty(BTN_VALUE_CODE)

          • Case: True

            Parameters set:

            • VALUE_CODE (using BTN_VALUE_CODE)
            • TT_VALUE (using BTN_VALUE_CODE, BTN_TT_VALUE_ON, BTN_TT_VALUE_OFF)
            • TT_VALUE_IS_DYNAMIC

          Condition: NotEmpty(BTN_LOCAL_VAR_TO_WATCH_0)

          • Case: True

            Parameters set:

            • LOCAL_VAR_TO_WATCH_0 (using BTN_LOCAL_VAR_TO_WATCH_0)

        Condition: NotEmpty(PUSH_ANIM_HANDLED_SEPARATELY)

        • Case: True

          Templates used:

          • ASOBO_GT_Anim_Code

            Parameters set:

            • ANIM_CODE (using BTN_ANIM_CODE)
            • ANIM_NAME (using ANIM_NAME_PUSH)
            • ANIM_LAG

      Condition: Check(EMISSIVE_KNOB)

  • ASOBO_AUTOPILOT_Knob_Course_SubTemplate

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Knob_Course_SubTemplate"> <Parameters Type="Override"> <Condition Check="PUSH"> <TYPE>PUSH</TYPE> </Condition> </Parameters> <Parameters Type="Default"> <ANIM_NAME>AUTOPILOT_Knob_Course_#ID##SUFFIX_ID#</ANIM_NAME> <Condition Check="TYPE" Match="PUSH"> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Course_#ID#_push#SUFFIX_ID#</ANIM_NAME_PUSH> </Condition> <NODE_ID>AUTOPILOT_Knob_Course_#ID##SUFFIX_ID#</NODE_ID> <PART_ID>AUTOPILOT_Knob_Course</PART_ID> <COUNT>72</COUNT> <Condition Valid="DYNAMIC_VOR_ID"> <VOR_ID_1_SELECTED_CHECK>1</VOR_ID_1_SELECTED_CHECK> <ID_1>#ID#</ID_1> <ID_2>#ID#</ID_2> </Condition> <THRESHOLD_X_INPUT>0.01</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.002</THRESHOLD_X_MOUSE> <THRESHOLD_INPUT>0.01</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.002</THRESHOLD_MOUSE> <WWISE_EVENT>autopilot_knob_turn</WWISE_EVENT> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <SYNC_VAR>(A:HEADING INDICATOR, degrees)</SYNC_VAR> <INCREMENT>1</INCREMENT> </Parameters> <Parameters Type="Override"> <Condition Valid="DYNAMIC_VOR_ID"> <True> <KNOB_ID>Course_Dyn_#ID#</KNOB_ID> </True> <False> <KNOB_ID>Course_#ID#</KNOB_ID> </False> </Condition> <Switch Param="TYPE"> <Case Value="PUSH"> <ANIM_NAME_KNOB>#ANIM_NAME#</ANIM_NAME_KNOB> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_COURSE_ACTION_PUSH</TT_DESCRIPTION_ID_BTN> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <Condition Valid="DYNAMIC_VOR_ID"> <True> <BTN_ID_EXTERNAL>Course_Dyn_#ID#_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#SYNC_VAR# sp0 #VOR_ID_1_SELECTED_CHECK# if{ l0 (&gt;K:VOR#ID_1#_SET) } els{ l0 (&gt;K:VOR#ID_2#_SET) }</BTN_SET_STATE_EXTERNAL> </True> <False> <BTN_ID_EXTERNAL>Course_#ID#_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#SYNC_VAR# (&gt;K:VOR#ID#_SET)</BTN_SET_STATE_EXTERNAL> </False> </Condition> </Case> </Switch> <Condition Valid="DYNAMIC_VOR_ID"> <True> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 #VOR_ID_1_SELECTED_CHECK# if{ (A:NAV OBS:#ID_1#, degree) #INCREMENT# l0 * + dnor (&gt;K:VOR#ID_1#_SET) } els{ (A:NAV OBS:#ID_2#, degree) #INCREMENT# l0 * + dnor (&gt;K:VOR#ID_2#_SET) }</SET_STATE_EXTERNAL> <GET_COURSE>(A:NAV OBS:#ID_1#, degree) (A:NAV OBS:#ID_2#, degree) #VOR_ID_1_SELECTED_CHECK# ?</GET_COURSE> </True> <False> <SET_STATE_EXTERNAL>1 -1 p0 0 &gt; ? sp0 (A:NAV OBS:#ID#, degree) #INCREMENT# l0 * + dnor (&gt;K:VOR#ID#_SET)</SET_STATE_EXTERNAL> <GET_COURSE>(A:NAV OBS:#ID#, degree)</GET_COURSE> </False> </Condition> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_COURSE_ACTION_ADJUST</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_COURSE_TITLE</TOOLTIP_TITLE> <Condition NotEmpty="DYN_VOR_FORMAT_VALUE_OVERRIDE"> <True> <FORMAT_VALUE>#DYN_VOR_FORMAT_VALUE_OVERRIDE#</FORMAT_VALUE> </True> <False> <FORMAT_VALUE>l0 &apos;%d°&apos; @sprintf</FORMAT_VALUE> </False> </Condition> <GET_TT_VALUE_STATE>#GET_COURSE# sp0</GET_TT_VALUE_STATE> </UseTemplate> </Component> </Template>

    Parameters initialization:

    • Override

      Condition: Check(PUSH)

      • Case: True

        Parameters set:

        • TYPE
    • Default

      Parameters set:

      • ANIM_NAME (using ID, SUFFIX_ID)
      • NODE_ID (using ID, SUFFIX_ID)
      • PART_ID
      • COUNT
      • THRESHOLD_X_INPUT
      • THRESHOLD_X_MOUSE
      • THRESHOLD_INPUT
      • THRESHOLD_MOUSE
      • WWISE_EVENT
      • WWISE_EVENT_1
      • WWISE_EVENT_2
      • SYNC_VAR
      • INCREMENT

      Condition: Check(TYPE)

      • Case: True

        Parameters set:

        • ANIM_NAME_PUSH (using ID, SUFFIX_ID)

      Condition: Valid(DYNAMIC_VOR_ID)

      • Case: True

        Parameters set:

        • VOR_ID_1_SELECTED_CHECK
        • ID_1 (using ID)
        • ID_2 (using ID)
    • Override

      Condition: Valid(DYNAMIC_VOR_ID)

      • Case: True

        Parameters set:

        • KNOB_ID (using ID)
      • Case: False

        Parameters set:

        • KNOB_ID (using ID)

      Condition: Switch(TYPE)

      • Case: PUSH

        Parameters set:

        • ANIM_NAME_KNOB (using ANIM_NAME)
        • TT_DESCRIPTION_ID_BTN
        • ADDITIONAL_EVENT_TYPE

        Condition: Valid(DYNAMIC_VOR_ID)

        • Case: True

          Parameters set:

          • BTN_ID_EXTERNAL (using ID)
          • BTN_SET_STATE_EXTERNAL (using SYNC_VAR, VOR_ID_1_SELECTED_CHECK, ID_1, ID_2)
        • Case: False

          Parameters set:

          • BTN_ID_EXTERNAL (using ID)
          • BTN_SET_STATE_EXTERNAL (using SYNC_VAR, ID)

      Condition: Valid(DYNAMIC_VOR_ID)

      • Case: True

        Parameters set:

        • SET_STATE_EXTERNAL (using VOR_ID_1_SELECTED_CHECK, ID_1, INCREMENT, ID_2)
        • GET_COURSE (using ID_1, ID_2, VOR_ID_1_SELECTED_CHECK)
      • Case: False

        Parameters set:

        • SET_STATE_EXTERNAL (using ID, INCREMENT)
        • GET_COURSE (using ID)

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Templates used:

      • ASOBO_AUTOPILOT_Knob_Template
        • May include a subtemplate using the parameter 'TEMPLATE_TO_CALL' and resolve to the following template(s):

        Parameters set:

        • TT_DESCRIPTION_ID
        • TOOLTIP_TITLE
        • GET_TT_VALUE_STATE (using GET_COURSE)

        Condition: NotEmpty(DYN_VOR_FORMAT_VALUE_OVERRIDE)

        • Case: True

          Parameters set:

          • FORMAT_VALUE (using DYN_VOR_FORMAT_VALUE_OVERRIDE)
        • Case: False

          Parameters set:

          • FORMAT_VALUE

      Condition: Switch(ADDITIONAL_EVENT_TYPE)

      • Case: PUSH

        Templates used:

  • ASOBO_AUTOPILOT_Push_STD_SubTemplate

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Push_STD_SubTemplate"> <Parameters Type="Default"> <BARO_ID>#ID#</BARO_ID> </Parameters> <Parameters Type="Default"> <NODE_ID>AUTOPILOT_Push_STD#SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Push_STD#SUFFIX_ID#</ANIM_NAME> <IE_NAME>AUTOPILOT_Push_STD#SUFFIX_ID#</IE_NAME> </Parameters> <UseTemplate Name="ASOBO_AUTOPILOT_Base_Template"> <SET_STATE_EXTERNAL> (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) ! (&gt;L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) if{ (A:KOHLSMAN SETTING MB:#BARO_ID#, mbars) 16 * (&gt;L:XMLVAR_Baro#BARO_ID#_SavedPressure) #BARO_ID# (&gt;K:BAROMETRIC_STD_PRESSURE) } els{ #BARO_ID# (L:XMLVAR_Baro#BARO_ID#_SavedPressure) (&gt;K:2:KOHLSMAN_SET) } </SET_STATE_EXTERNAL> <GET_STATE_EXTERNAL>(L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) sp0</GET_STATE_EXTERNAL> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_PUSH_BARO_STD_TITLE</TOOLTIP_TITLE> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_STD</TT_DESCRIPTION_ID> <INTERACTION_TYPE>Push</INTERACTION_TYPE> </UseTemplate> </Template>

    Parameters initialization:

    • Default

      Parameters set:

      • BARO_ID (using ID)
    • Default

      Parameters set:

      • NODE_ID (using SUFFIX_ID)
      • ANIM_NAME (using SUFFIX_ID)
      • IE_NAME (using SUFFIX_ID)

    Templates used:

    • ASOBO_AUTOPILOT_Base_Template

      Parameters set:

      • SET_STATE_EXTERNAL (using BARO_ID)
      • GET_STATE_EXTERNAL (using BARO_ID)
      • TOOLTIP_TITLE
      • TT_DESCRIPTION_ID
      • INTERACTION_TYPE
  • ASOBO_AUTOPILOT_Knob_Baro_SubTemplate

    Definition from XML
    <Template Name="ASOBO_AUTOPILOT_Knob_Baro_SubTemplate"> <Parameters Type="Override"> <Condition> <Test> <Or> <Arg Valid="USE_PUSH_STD"/> <Arg Check="PUSH"/> </Or> </Test> <True> <TYPE>PUSH</TYPE> </True> </Condition> <Condition> <Test> <Or> <Arg Check="AIRLINER_TYPE"/> <Arg Check="USE_AIRLINER_STD"/> </Or> </Test> <True> <Condition NotEmpty="AIRLINER_TYPE"> <True> <TYPE>#AIRLINER_TYPE#</TYPE> </True> <False> <TYPE>AIRLINER</TYPE> </False> </Condition> </True> </Condition> </Parameters> <Parameters Type="Default"> <INPUT_EVENT_ID_SOURCE>AUTOPILOT</INPUT_EVENT_ID_SOURCE> <NODE_ID>AUTOPILOT_Knob_Baro_#ID##SUFFIX_ID#</NODE_ID> <ANIM_NAME>AUTOPILOT_Knob_Baro_#ID##SUFFIX_ID#</ANIM_NAME> <PART_ID>AUTOPILOT_Knob_Baro</PART_ID> </Parameters> <Parameters Type="Default"> <BARO_ID>#ID#</BARO_ID> <WWISE_EVENT_1>autopilot_knob_push_button_on</WWISE_EVENT_1> <WWISE_EVENT_2>autopilot_knob_push_button_off</WWISE_EVENT_2> <COUNT>36</COUNT> <Switch Param="TYPE"> <Case Value="PUSH"> <ANIM_NAME_KNOB>#ANIM_NAME#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Baro_#ID#_push#SUFFIX_ID#</ANIM_NAME_PUSH> <THRESHOLD_X_INPUT>0.05</THRESHOLD_X_INPUT> <THRESHOLD_X_MOUSE>0.01</THRESHOLD_X_MOUSE> <THRESHOLD_INPUT>0.05</THRESHOLD_INPUT> <THRESHOLD_MOUSE>0.01</THRESHOLD_MOUSE> <WWISE_EVENT>autopilot_knob</WWISE_EVENT> </Case> <Case Value="A320"> <ANIM_NAME_PUSHPULL>AUTOPILOT_Knob_Baro_#ID#_pushpull#SUFFIX_ID#</ANIM_NAME_PUSHPULL> <MODE_BARO>0</MODE_BARO> <MODE_QNH>1</MODE_QNH> <MODE_STD>2</MODE_STD> <WWISE_EVENT>autopilot_selector_knob</WWISE_EVENT> <CENTER_RADIUS>0</CENTER_RADIUS> </Case> <Case Value="AIRLINER"> <ANIM_NAME_KNOB>#ANIM_NAME#</ANIM_NAME_KNOB> <ANIM_NAME_PUSH>AUTOPILOT_Knob_Baro_#ID#_push#SUFFIX_ID#</ANIM_NAME_PUSH> </Case> <Default> <Condition NotEmpty="AIRLINER_TYPE"> <True> <WWISE_EVENT>autopilot_selector_knob</WWISE_EVENT> </True> <False> <WWISE_EVENT>autopilot_knob</WWISE_EVENT> </False> </Condition> </Default> </Switch> </Parameters> <Parameters Type="Override"> <Switch Param="TYPE"> <Case Value="PUSH"> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Baro_#ID#_Sync</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL>#BARO_ID# (&gt;K:BAROMETRIC)</BTN_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET</TT_DESCRIPTION_ID_BTN> </Case> <Case Value="A320"> <DEFAULT_BINDING_STR>Mode</DEFAULT_BINDING_STR> <ADDITIONAL_EVENT_TYPE>PUSH_PULL</ADDITIONAL_EVENT_TYPE> <BTN_ID_PULL>Baro_#ID#_STD</BTN_ID_PULL> <BTN_ID_PUSH>Baro_#ID#_QNH</BTN_ID_PUSH> <PULL_SET_STATE_EXTERNAL>#MODE_STD# (&gt;L:XMLVAR_Baro#BARO_ID#_Mode)</PULL_SET_STATE_EXTERNAL> <PUSH_SET_STATE_EXTERNAL>(L:XMLVAR_Baro#BARO_ID#_Mode) #MODE_STD# == if{ #MODE_BARO# (&gt;L:XMLVAR_Baro#BARO_ID#_Mode) } els{ (L:XMLVAR_Baro#BARO_ID#_Mode) ! (&gt;L:XMLVAR_Baro#BARO_ID#_Mode) }</PUSH_SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID_PULL>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_STD</TT_DESCRIPTION_ID_PULL> <TT_DESCRIPTION_ID_PUSH>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_QNH</TT_DESCRIPTION_ID_PUSH> <OVERRIDE_PUSH_ANIM_CODE>0 100 (L:XMLVAR_Baro#BARO_ID#_Mode) #MODE_STD# == ? 50 (O:_PushAnimVar) ?</OVERRIDE_PUSH_ANIM_CODE> <BARO_SET_CONDITION>(L:XMLVAR_Baro#BARO_ID#_Mode) #MODE_STD# !=</BARO_SET_CONDITION> </Case> <Case Value="AIRLINER"> <ADDITIONAL_EVENT_TYPE>PUSH</ADDITIONAL_EVENT_TYPE> <BTN_ID_EXTERNAL>Baro_#ID#_STD</BTN_ID_EXTERNAL> <BTN_SET_STATE_EXTERNAL> (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) ! (&gt;L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) (L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) if{ (A:KOHLSMAN SETTING MB:#BARO_ID#, mbars) 16 * (&gt;L:XMLVAR_Baro#BARO_ID#_SavedPressure) #BARO_ID# (&gt;K:BAROMETRIC_STD_PRESSURE) } els{ #BARO_ID# (L:XMLVAR_Baro#BARO_ID#_SavedPressure) (&gt;K:2:KOHLSMAN_SET) } </BTN_SET_STATE_EXTERNAL> <BARO_SET_CONDITION>(L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) !</BARO_SET_CONDITION> <TT_DESCRIPTION_ID_BTN>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION_SET_STD</TT_DESCRIPTION_ID_BTN> </Case> </Switch> <KNOB_ID>Baro_#ID#</KNOB_ID> <SET_STATE_EXTERNAL>p0 0 &gt; if{ #BARO_ID# (&gt;K:KOHLSMAN_INC) (&gt;H:AP_BARO_Up) } els{ #BARO_ID# (&gt;K:KOHLSMAN_DEC) (&gt;H:AP_BARO_Down) }</SET_STATE_EXTERNAL> </Parameters> <Parameters Type="Override"> <Condition Valid="ALLOW_HTML_EVENTS_IN_STD"> <True> <SET_STATE_EXTERNAL>(L:XMLVAR_Baro#BARO_ID#_ForcedToSTD) if{ p0 0 &gt; if{ #BARO_ID# (&gt;H:AP_BARO_Up) } els{ #BARO_ID# (&gt;H:AP_BARO_Down) } } els{ #SET_STATE_EXTERNAL# }</SET_STATE_EXTERNAL> <BARO_SET_CONDITION/> </True> <False> <Condition NotEmpty="BARO_SET_CONDITION"> <True> <SET_STATE_EXTERNAL>#BARO_SET_CONDITION# if{ #SET_STATE_EXTERNAL# }</SET_STATE_EXTERNAL> </True> </Condition> </False> </Condition> <GET_BARO>(A:KOHLSMAN SETTING MB:#BARO_ID#, inHg)</GET_BARO> </Parameters> <Component ID="#NODE_ID#" Node="#NODE_ID#"> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PULL#</BTN_ID> <EVENT_TYPE>PULL</EVENT_TYPE> <SET_STATE_EXTERNAL>#PULL_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PULL#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PULL_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PULL_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_PUSH#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#PUSH_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_PUSH#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> <Case Value="PUSH"> <UseTemplate Name="ASOBO_AUTOPILOT_Push_Event_Only_Template"> <BTN_ID>#BTN_ID_EXTERNAL#</BTN_ID> <EVENT_TYPE>PUSH</EVENT_TYPE> <SET_STATE_EXTERNAL>#BTN_SET_STATE_EXTERNAL#</SET_STATE_EXTERNAL> <TT_DESCRIPTION_ID>#TT_DESCRIPTION_ID_BTN#</TT_DESCRIPTION_ID> <Condition Valid="TT_DESCRIPTION_ID_BTN_IS_DYNAMIC"> <TT_DESCRIPTION_IS_DYNAMIC>#TT_DESCRIPTION_ID_BTN_IS_DYNAMIC#</TT_DESCRIPTION_IS_DYNAMIC> </Condition> </UseTemplate> </Case> </Switch> <UseTemplate Name="ASOBO_AUTOPILOT_Knob_Template"> <TT_DESCRIPTION_ID>@TT_Package.AUTOPILOT_KNOB_BARO_ACTION</TT_DESCRIPTION_ID> <TOOLTIP_TITLE>@TT_Package.AUTOPILOT_KNOB_BARO_TITLE</TOOLTIP_TITLE> <GET_TT_VALUE_STATE>#GET_BARO# sp0</GET_TT_VALUE_STATE> <FORMAT_VALUE>l0 &apos;%.2fIN&apos; @sprintf</FORMAT_VALUE> <Switch Param="ADDITIONAL_EVENT_TYPE"> <Case Value="PUSH_PULL"> <TEMPLATE_VARIANT>_PushPull</TEMPLATE_VARIANT> <PULL_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#_#DEFAULT_BINDING_STR#)</PULL_CODE> <PUSH_CODE>(&gt;B:#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#_#DEFAULT_BINDING_STR#)</PUSH_CODE> <TOOLTIP_ENTRY_1>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PULL#</TOOLTIP_ENTRY_1> <TOOLTIP_ENTRY_2>#INPUT_EVENT_ID_SOURCE#_#BTN_ID_PUSH#</TOOLTIP_ENTRY_2> </Case> </Switch> </UseTemplate> </Component> </Template>

    Parameters initialization:

    • Override

      Condition: Test(USE_PUSH_STD, PUSH)

      • Case: True

        Parameters set:

        • TYPE

      Condition: Test(AIRLINER_TYPE, USE_AIRLINER_STD)

      • Case: True

        Condition: NotEmpty(AIRLINER_TYPE)

        • Case: True

          Parameters set:

          • TYPE (using AIRLINER_TYPE)
        • Case: False

          Parameters set:

          • TYPE
    • Default

      Parameters set:

      • INPUT_EVENT_ID_SOURCE
      • NODE_ID (using ID, SUFFIX_ID)
      • ANIM_NAME (using ID, SUFFIX_ID)
      • PART_ID
    • Default

      Parameters set:

      • BARO_ID (using ID)
      • WWISE_EVENT_1
      • WWISE_EVENT_2
      • COUNT

      Condition: Switch(TYPE)

      • Case: PUSH

        Parameters set:

        • ANIM_NAME_KNOB (using ANIM_NAME)
        • ANIM_NAME_PUSH (using ID, SUFFIX_ID)
        • THRESHOLD_X_INPUT
        • THRESHOLD_X_MOUSE
        • THRESHOLD_INPUT
        • THRESHOLD_MOUSE
        • WWISE_EVENT
      • Case: A320

        Parameters set:

        • ANIM_NAME_PUSHPULL (using ID, SUFFIX_ID)
        • MODE_BARO
        • MODE_QNH
        • MODE_STD
        • WWISE_EVENT
        • CENTER_RADIUS
      • Case: AIRLINER

        Parameters set:

        • ANIM_NAME_KNOB (using ANIM_NAME)
        • ANIM_NAME_PUSH (using ID, SUFFIX_ID)
      • Default case:

        Condition: NotEmpty(AIRLINER_TYPE)

        • Case: True

          Parameters set:

          • WWISE_EVENT
        • Case: False

          Parameters set:

          • WWISE_EVENT
    • Override

      Parameters set:

      • KNOB_ID (using ID)
      • SET_STATE_EXTERNAL (using BARO_ID)

      Condition: Switch(TYPE)

      • Case: PUSH

        Parameters set:

        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_EXTERNAL (using ID)
        • BTN_SET_STATE_EXTERNAL (using BARO_ID)
        • TT_DESCRIPTION_ID_BTN
      • Case: A320

        Parameters set:

        • DEFAULT_BINDING_STR
        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_PULL (using ID)
        • BTN_ID_PUSH (using ID)
        • PULL_SET_STATE_EXTERNAL (using MODE_STD, BARO_ID)
        • PUSH_SET_STATE_EXTERNAL (using BARO_ID, MODE_STD, MODE_BARO)
        • TT_DESCRIPTION_ID_PULL
        • TT_DESCRIPTION_ID_PUSH
        • OVERRIDE_PUSH_ANIM_CODE (using BARO_ID, MODE_STD)
        • BARO_SET_CONDITION (using BARO_ID, MODE_STD)
      • Case: AIRLINER

        Parameters set:

        • ADDITIONAL_EVENT_TYPE
        • BTN_ID_EXTERNAL (using ID)
        • BTN_SET_STATE_EXTERNAL (using BARO_ID)
        • BARO_SET_CONDITION (using BARO_ID)
        • TT_DESCRIPTION_ID_BTN
    • Override

      Parameters set:

      • GET_BARO (using BARO_ID)

      Condition: Valid(ALLOW_HTML_EVENTS_IN_STD)

      • Case: True

        Parameters set:

        • SET_STATE_EXTERNAL (using BARO_ID, SET_STATE_EXTERNAL)
        • BARO_SET_CONDITION
      • Case: False

        Condition: NotEmpty(BARO_SET_CONDITION)

        • Case: True

          Parameters set:

          • SET_STATE_EXTERNAL (using BARO_SET_CONDITION, SET_STATE_EXTERNAL)

    Parameters read:

    • NODE_ID

    Components:

    • #NODE_ID# (Node: #NODE_ID#)

      Templates used:

      • ASOBO_AUTOPILOT_Knob_Template
        • May include a subtemplate using the parameter 'TEMPLATE_TO_CALL' and resolve to the following template(s):

        Parameters set:

        • TT_DESCRIPTION_ID
        • TOOLTIP_TITLE
        • GET_TT_VALUE_STATE (using GET_BARO)
        • FORMAT_VALUE

        Condition: Switch(ADDITIONAL_EVENT_TYPE)

        • Case: PUSH_PULL

          Parameters set:

          • TEMPLATE_VARIANT
          • PULL_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL, DEFAULT_BINDING_STR)
          • PUSH_CODE (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH, DEFAULT_BINDING_STR)
          • TOOLTIP_ENTRY_1 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PULL)
          • TOOLTIP_ENTRY_2 (using INPUT_EVENT_ID_SOURCE, BTN_ID_PUSH)

      Condition: Switch(ADDITIONAL_EVENT_TYPE)

      • Case: PUSH_PULL

        Templates used:

        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_PULL)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using PULL_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_PULL)

          Condition: Valid(TT_DESCRIPTION_ID_PULL_IS_DYNAMIC)

          • Case: True

            Parameters set:

            • TT_DESCRIPTION_IS_DYNAMIC (using TT_DESCRIPTION_ID_PULL_IS_DYNAMIC)
        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_PUSH)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using PUSH_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_PUSH)

          Condition: Valid(TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC)

          • Case: True

            Parameters set:

            • TT_DESCRIPTION_IS_DYNAMIC (using TT_DESCRIPTION_ID_PUSH_IS_DYNAMIC)
      • Case: PUSH

        Templates used:

        • ASOBO_AUTOPILOT_Push_Event_Only_Template

          Parameters set:

          • BTN_ID (using BTN_ID_EXTERNAL)
          • EVENT_TYPE
          • SET_STATE_EXTERNAL (using BTN_SET_STATE_EXTERNAL)
          • TT_DESCRIPTION_ID (using TT_DESCRIPTION_ID_BTN)

          Condition: Valid(TT_DESCRIPTION_ID_BTN_IS_DYNAMIC)

          • Case: True

            Parameters set:

            • TT_DESCRIPTION_IS_DYNAMIC (using TT_DESCRIPTION_ID_BTN_IS_DYNAMIC)