File A4EC_InputMap.h
File List > A4EC > A4EC_InputMap.h
Go to the documentation of this file
// A4EC_InputMap.h — AUTO-GENERATED by tools/gen_a4ec/gen_a4ec.py
// DO NOT EDIT — regenerate using: python tools/gen_a4ec/gen_a4ec.py
// Include from PanelBridge only — PanelGroup sketches do not need this file.
// Generated: 2026-05-25T22:45:33Z
#pragma once
#include <A4EC_CmdIds.h>
// ── Dispatch entry ────────────────────────────────────────────────────────
// controlId → DCS-BIOS name only. The dispatch FORM (absolute / relative-step /
// direction) is sourced from the PanelGroup input class via the CAN frame the node
// emits on — not from this map. PanelBridge formats the payload by frame (#147).
struct DcsBiosInputEntry {
uint16_t cmdId;
const char* name;
};
// ── Dispatch table — sorted ascending by cmdId ────────────────────────────
// Binary search by PanelBridge.
static const DcsBiosInputEntry A4EC_INPUT_MAP[] = {
{ DCSIN_ACCEL_RESET, "ACCEL_RESET" },
{ DCSIN_AFCS_1N2, "AFCS_1N2" },
{ DCSIN_AFCS_1N2_COVER, "AFCS_1N2_COVER" },
{ DCSIN_AFCS_AIL_TRIM, "AFCS_AIL_TRIM" },
{ DCSIN_AFCS_ALT, "AFCS_ALT" },
{ DCSIN_AFCS_ENGAGE, "AFCS_ENGAGE" },
{ DCSIN_AFCS_HDG_SEL, "AFCS_HDG_SEL" },
{ DCSIN_AFCS_HDG_SET, "AFCS_HDG_SET" },
{ DCSIN_AFCS_STAB_AUG, "AFCS_STAB_AUG" },
{ DCSIN_AFCS_STBY, "AFCS_STBY" },
{ DCSIN_ALT_PRESS_KNB, "ALT_PRESS_KNB" },
{ DCSIN_AOA_INDEX_DIM, "AOA_INDEX_DIM" },
{ DCSIN_APC_ENABLE, "APC_ENABLE" },
{ DCSIN_APS_COLD_STD_HOT, "APS_COLD_STD_HOT" },
{ DCSIN_ARC51_FREQ_10MHZ, "ARC51_FREQ_10MHZ" },
{ DCSIN_ARC51_FREQ_1MHZ, "ARC51_FREQ_1MHZ" },
{ DCSIN_ARC51_FREQ_50KHZ, "ARC51_FREQ_50KHZ" },
{ DCSIN_ARC51_FREQ_PRE, "ARC51_FREQ_PRE" },
{ DCSIN_ARC51_MODE, "ARC51_MODE" },
{ DCSIN_ARC51_SQUELCH, "ARC51_SQUELCH" },
{ DCSIN_ARC51_VOL, "ARC51_VOL" },
{ DCSIN_ARC51_XMIT_MODE, "ARC51_XMIT_MODE" },
{ DCSIN_ARM_BOMB, "ARM_BOMB" },
{ DCSIN_ARM_EMERG_SEL, "ARM_EMERG_SEL" },
{ DCSIN_ARM_FUNC_SEL, "ARM_FUNC_SEL" },
{ DCSIN_ARM_GUN, "ARM_GUN" },
{ DCSIN_ARM_MASTER, "ARM_MASTER" },
{ DCSIN_ARM_STATION1, "ARM_STATION1" },
{ DCSIN_ARM_STATION2, "ARM_STATION2" },
{ DCSIN_ARM_STATION3, "ARM_STATION3" },
{ DCSIN_ARM_STATION4, "ARM_STATION4" },
{ DCSIN_ARM_STATION5, "ARM_STATION5" },
{ DCSIN_ASN41_LAT_SLEW, "ASN41_LAT_SLEW" },
{ DCSIN_ASN41_LON_SLEW, "ASN41_LON_SLEW" },
{ DCSIN_ASN41_MAGVAR_BTN, "ASN41_MAGVAR_BTN" },
{ DCSIN_ASN41_MAGVAR_KNB, "ASN41_MAGVAR_KNB" },
{ DCSIN_ASN41_WINDDIR_BTN, "ASN41_WINDDIR_BTN" },
{ DCSIN_ASN41_WINDDIR_KNB, "ASN41_WINDDIR_KNB" },
{ DCSIN_ASN41_WINDSPEED_BTN, "ASN41_WINDSPEED_BTN" },
{ DCSIN_ASN41_WINDSPEED_KNB, "ASN41_WINDSPEED_KNB" },
{ DCSIN_AWRS_DROP_INT, "AWRS_DROP_INT" },
{ DCSIN_AWRS_MODE, "AWRS_MODE" },
{ DCSIN_AWRS_MULTI, "AWRS_MULTI" },
{ DCSIN_AWRS_QUANT, "AWRS_QUANT" },
{ DCSIN_BDHI_MODE, "BDHI_MODE" },
{ DCSIN_CABIN_PRESS, "CABIN_PRESS" },
{ DCSIN_CABIN_TEMP, "CABIN_TEMP" },
{ DCSIN_CANOPY_SW, "CANOPY_SW" },
{ DCSIN_CM_ADJ1, "CM_ADJ1" },
{ DCSIN_CM_ADJ2, "CM_ADJ2" },
{ DCSIN_CM_AUTO, "CM_AUTO" },
{ DCSIN_CM_BANK, "CM_BANK" },
{ DCSIN_CM_PWR, "CM_PWR" },
{ DCSIN_DEST_LAT_BTN, "DEST_LAT_BTN" },
{ DCSIN_DEST_LAT_KNB, "DEST_LAT_KNB" },
{ DCSIN_DEST_LON_BTN, "DEST_LON_BTN" },
{ DCSIN_DEST_LON_KNB, "DEST_LON_KNB" },
{ DCSIN_DOPPLER_MEM_TEST, "DOPPLER_MEM_TEST" },
{ DCSIN_DOPPLER_SEL, "DOPPLER_SEL" },
{ DCSIN_DROP_PRESS_REFUEL, "DROP_PRESS_REFUEL" },
{ DCSIN_ECM_APR25_PW, "ECM_APR25_PW" },
{ DCSIN_ECM_APR27_LIGHT, "ECM_APR27_LIGHT" },
{ DCSIN_ECM_APR27_PW, "ECM_APR27_PW" },
{ DCSIN_ECM_APR27_TEST, "ECM_APR27_TEST" },
{ DCSIN_ECM_AUDIO, "ECM_AUDIO" },
{ DCSIN_ECM_MSL_VOL, "ECM_MSL_VOL" },
{ DCSIN_ECM_PRF_VOL, "ECM_PRF_VOL" },
{ DCSIN_ECM_SEL, "ECM_SEL" },
{ DCSIN_EMERG_BOMB_REL, "EMERG_BOMB_REL" },
{ DCSIN_EMERG_GEAR_REL, "EMERG_GEAR_REL" },
{ DCSIN_EMERG_GEN_BYPASS, "EMERG_GEN_BYPASS" },
{ DCSIN_EMERG_GEN_DEPLOY, "EMERG_GEN_DEPLOY" },
{ DCSIN_EMERG_TRANS_FUEL_DUMP, "EMERG_TRANS_FUEL_DUMP" },
{ DCSIN_FLAPS, "FLAPS" },
{ DCSIN_FUEL_CONTROL, "FUEL_CONTROL" },
{ DCSIN_FUEL_EXT_BTN, "FUEL_EXT_BTN" },
{ DCSIN_FUEL_TRANS, "FUEL_TRANS" },
{ DCSIN_GEAR_HANDLE, "GEAR_HANDLE" },
{ DCSIN_GUNPOD_C, "GUNPOD_C" },
{ DCSIN_GUNPOD_CLEAR, "GUNPOD_CLEAR" },
{ DCSIN_GUNPOD_L, "GUNPOD_L" },
{ DCSIN_GUNPOD_R, "GUNPOD_R" },
{ DCSIN_GUNSIGHT_BRIGHT, "GUNSIGHT_BRIGHT" },
{ DCSIN_GUNSIGHT_DAY_NIGHT, "GUNSIGHT_DAY_NIGHT" },
{ DCSIN_GUNSIGHT_KNB, "GUNSIGHT_KNB" },
{ DCSIN_HARNESS_REEL_CONTR, "HARNESS_REEL_CONTR" },
{ DCSIN_HOOK_HANDLE, "HOOK_HANDLE" },
{ DCSIN_IAS_INDEX_BTN, "IAS_INDEX_BTN" },
{ DCSIN_IAS_INDEX_KNB, "IAS_INDEX_KNB" },
{ DCSIN_JATO_ARM, "JATO_ARM" },
{ DCSIN_JATO_JETT_SAFE, "JATO_JETT_SAFE" },
{ DCSIN_LIGHT_EXT_ANTICOLL, "LIGHT_EXT_ANTICOLL" },
{ DCSIN_LIGHT_EXT_FLASH_MODE, "LIGHT_EXT_FLASH_MODE" },
{ DCSIN_LIGHT_EXT_FUSELAGE, "LIGHT_EXT_FUSELAGE" },
{ DCSIN_LIGHT_EXT_MASTER, "LIGHT_EXT_MASTER" },
{ DCSIN_LIGHT_EXT_NAV, "LIGHT_EXT_NAV" },
{ DCSIN_LIGHT_EXT_PROBE, "LIGHT_EXT_PROBE" },
{ DCSIN_LIGHT_EXT_TAIL, "LIGHT_EXT_TAIL" },
{ DCSIN_LIGHT_EXT_TAXI, "LIGHT_EXT_TAXI" },
{ DCSIN_LIGHT_INT_BRIGHT, "LIGHT_INT_BRIGHT" },
{ DCSIN_LIGHT_INT_CONSOLE, "LIGHT_INT_CONSOLE" },
{ DCSIN_LIGHT_INT_FLOOD_WHT, "LIGHT_INT_FLOOD_WHT" },
{ DCSIN_LIGHT_INT_INSTR, "LIGHT_INT_INSTR" },
{ DCSIN_MAN_FLIGHT_CONTROL, "MAN_FLIGHT_CONTROL" },
{ DCSIN_MAN_FUEL_OFF_CATCH, "MAN_FUEL_OFF_CATCH" },
{ DCSIN_MAN_FUEL_OFF_LV, "MAN_FUEL_OFF_LV" },
{ DCSIN_MASTER_TEST, "MASTER_TEST" },
{ DCSIN_MCL_CHAN_SEL, "MCL_CHAN_SEL" },
{ DCSIN_MCL_PWR, "MCL_PWR" },
{ DCSIN_MISSILE_VOL, "MISSILE_VOL" },
{ DCSIN_NAV_DEAD, "NAV_DEAD" },
{ DCSIN_NAV_SEL, "NAV_SEL" },
{ DCSIN_OXY_SW, "OXY_SW" },
{ DCSIN_PPOS_LAT_BTN, "PPOS_LAT_BTN" },
{ DCSIN_PPOS_LAT_KNB, "PPOS_LAT_KNB" },
{ DCSIN_PPOS_LON_BTN, "PPOS_LON_BTN" },
{ DCSIN_PPOS_LON_KNB, "PPOS_LON_KNB" },
{ DCSIN_RADAR_ALT_INDEX, "RADAR_ALT_INDEX" },
{ DCSIN_RADAR_ALT_SW, "RADAR_ALT_SW" },
{ DCSIN_RADAR_ANGLE, "RADAR_ANGLE" },
{ DCSIN_RADAR_AOACOMP, "RADAR_AOACOMP" },
{ DCSIN_RADAR_BRILLIANCE, "RADAR_BRILLIANCE" },
{ DCSIN_RADAR_DETAIL, "RADAR_DETAIL" },
{ DCSIN_RADAR_FILTER, "RADAR_FILTER" },
{ DCSIN_RADAR_GAIN, "RADAR_GAIN" },
{ DCSIN_RADAR_MODE, "RADAR_MODE" },
{ DCSIN_RADAR_PROFILE, "RADAR_PROFILE" },
{ DCSIN_RADAR_RANGE, "RADAR_RANGE" },
{ DCSIN_RADAR_RETICLE, "RADAR_RETICLE" },
{ DCSIN_RADAR_STORAGE, "RADAR_STORAGE" },
{ DCSIN_RADAR_VOL, "RADAR_VOL" },
{ DCSIN_RAIN_REMOVE, "RAIN_REMOVE" },
{ DCSIN_RUDDER_TRIM, "RUDDER_TRIM" },
{ DCSIN_SEAT_ADJ, "SEAT_ADJ" },
{ DCSIN_SEC_EJECT_HANDLE, "SEC_EJECT_HANDLE" },
{ DCSIN_SHRIKE_SEL_KNB, "SHRIKE_SEL_KNB" },
{ DCSIN_SPEEDBRAKE, "SPEEDBRAKE" },
{ DCSIN_SPEEDBRAKE_EMERG, "SPEEDBRAKE_EMERG" },
{ DCSIN_SPOILER_ARM, "SPOILER_ARM" },
{ DCSIN_STARTER_BTN, "STARTER_BTN" },
{ DCSIN_STBY_ATT_INDEX_BTN, "STBY_ATT_INDEX_BTN" },
{ DCSIN_STBY_ATT_INDEX_KNB, "STBY_ATT_INDEX_KNB" },
{ DCSIN_STOPWATCH, "STOPWATCH" },
{ DCSIN_TACAN_ANT_CONT, "TACAN_ANT_CONT" },
{ DCSIN_TACAN_CHAN_MAJ, "TACAN_CHAN_MAJ" },
{ DCSIN_TACAN_CHAN_MIN, "TACAN_CHAN_MIN" },
{ DCSIN_TACAN_MODE, "TACAN_MODE" },
{ DCSIN_TACAN_VOL, "TACAN_VOL" },
{ DCSIN_THROTTLE_CLICK, "THROTTLE_CLICK" },
{ DCSIN_WINDSHLD_DEFROST, "WINDSHLD_DEFROST" },
};
static constexpr uint16_t A4EC_INPUT_MAP_SIZE =
sizeof(A4EC_INPUT_MAP) / sizeof(A4EC_INPUT_MAP[0]);