From d5c89e365c6eaa5fc54d1ffe65a79d3cfeef1982 Mon Sep 17 00:00:00 2001 From: Hirek Date: Sun, 16 Mar 2025 17:06:37 +0100 Subject: [PATCH] Command order fix --- command.cpp | 1409 ++++++++++++++++++++++++++------------------------- command.h | 543 ++++++++++---------- 2 files changed, 977 insertions(+), 975 deletions(-) diff --git a/command.cpp b/command.cpp index d36fad1a..55328e8d 100644 --- a/command.cpp +++ b/command.cpp @@ -22,718 +22,719 @@ namespace simulation { command_queue Commands; commanddescription_sequence Commands_descriptions = { - { "aidriverenable", command_target::vehicle, command_mode::oneoff }, - { "aidriverdisable", command_target::vehicle, command_mode::oneoff }, - { "jointcontrollerset", command_target::vehicle, command_mode::oneoff }, - { "mastercontrollerincrease", command_target::vehicle, command_mode::oneoff }, - { "mastercontrollerincreasefast", command_target::vehicle, command_mode::oneoff }, - { "mastercontrollerdecrease", command_target::vehicle, command_mode::oneoff }, - { "mastercontrollerdecreasefast", command_target::vehicle, command_mode::oneoff }, - { "mastercontrollerset", command_target::vehicle, command_mode::oneoff }, - { "secondcontrollerincrease", command_target::vehicle, command_mode::oneoff }, - { "secondcontrollerincreasefast", command_target::vehicle, command_mode::oneoff }, - { "secondcontrollerdecrease", command_target::vehicle, command_mode::oneoff }, - { "secondcontrollerdecreasefast", command_target::vehicle, command_mode::oneoff }, - { "secondcontrollerset", command_target::vehicle, command_mode::oneoff }, - { "mucurrentindicatorothersourceactivate", command_target::vehicle, command_mode::oneoff }, - { "independentbrakeincrease", command_target::vehicle, command_mode::continuous }, - { "independentbrakeincreasefast", command_target::vehicle, command_mode::oneoff }, - { "independentbrakedecrease", command_target::vehicle, command_mode::continuous }, - { "independentbrakedecreasefast", command_target::vehicle, command_mode::oneoff }, - { "independentbrakeset", command_target::vehicle, command_mode::oneoff }, - { "independentbrakebailoff", command_target::vehicle, command_mode::oneoff }, - { "universalbrakebutton1", command_target::vehicle, command_mode::oneoff }, - { "universalbrakebutton2", command_target::vehicle, command_mode::oneoff }, - { "universalbrakebutton3", command_target::vehicle, command_mode::oneoff }, - { "trainbrakeincrease", command_target::vehicle, command_mode::continuous }, - { "trainbrakedecrease", command_target::vehicle, command_mode::continuous }, - { "trainbrakeset", command_target::vehicle, command_mode::oneoff }, - { "trainbrakecharging", command_target::vehicle, command_mode::oneoff }, - { "trainbrakerelease", command_target::vehicle, command_mode::oneoff }, - { "trainbrakefirstservice", command_target::vehicle, command_mode::oneoff }, - { "trainbrakeservice", command_target::vehicle, command_mode::oneoff }, - { "trainbrakefullservice", command_target::vehicle, command_mode::oneoff }, - { "trainbrakehandleoff", command_target::vehicle, command_mode::oneoff }, - { "trainbrakeemergency", command_target::vehicle, command_mode::oneoff }, - { "trainbrakebasepressureincrease", command_target::vehicle, command_mode::oneoff }, - { "trainbrakebasepressuredecrease", command_target::vehicle, command_mode::oneoff }, - { "trainbrakebasepressurereset", command_target::vehicle, command_mode::oneoff }, - { "trainbrakeoperationtoggle", command_target::vehicle, command_mode::oneoff }, - { "manualbrakeincrease", command_target::vehicle, command_mode::oneoff }, - { "manualbrakedecrease", command_target::vehicle, command_mode::oneoff }, - { "alarmchaintoggle", command_target::vehicle, command_mode::oneoff }, - { "alarmchainenable", command_target::vehicle, command_mode::oneoff}, - { "alarmchaindisable", command_target::vehicle, command_mode::oneoff}, - { "wheelspinbrakeactivate", command_target::vehicle, command_mode::oneoff }, - { "sandboxactivate", command_target::vehicle, command_mode::oneoff }, - { "autosandboxtoggle", command_target::vehicle, command_mode::oneoff }, - { "autosandboxactivate", command_target::vehicle, command_mode::oneoff }, - { "autosandboxdeactivate", command_target::vehicle, command_mode::oneoff }, - { "reverserincrease", command_target::vehicle, command_mode::oneoff }, - { "reverserdecrease", command_target::vehicle, command_mode::oneoff }, - { "reverserforwardhigh", command_target::vehicle, command_mode::oneoff }, - { "reverserforward", command_target::vehicle, command_mode::oneoff }, - { "reverserneutral", command_target::vehicle, command_mode::oneoff }, - { "reverserbackward", command_target::vehicle, command_mode::oneoff }, - { "waterpumpbreakertoggle", command_target::vehicle, command_mode::oneoff }, - { "waterpumpbreakerclose", command_target::vehicle, command_mode::oneoff }, - { "waterpumpbreakeropen", command_target::vehicle, command_mode::oneoff }, - { "waterpumptoggle", command_target::vehicle, command_mode::oneoff }, - { "waterpumpenable", command_target::vehicle, command_mode::oneoff }, - { "waterpumpdisable", command_target::vehicle, command_mode::oneoff }, - { "waterheaterbreakertoggle", command_target::vehicle, command_mode::oneoff }, - { "waterheaterbreakerclose", command_target::vehicle, command_mode::oneoff }, - { "waterheaterbreakeropen", command_target::vehicle, command_mode::oneoff }, - { "waterheatertoggle", command_target::vehicle, command_mode::oneoff }, - { "waterheaterenable", command_target::vehicle, command_mode::oneoff }, - { "waterheaterdisable", command_target::vehicle, command_mode::oneoff }, - { "watercircuitslinktoggle", command_target::vehicle, command_mode::oneoff }, - { "watercircuitslinkenable", command_target::vehicle, command_mode::oneoff }, - { "watercircuitslinkdisable", command_target::vehicle, command_mode::oneoff }, - { "fuelpumptoggle", command_target::vehicle, command_mode::oneoff }, - { "fuelpumpenable", command_target::vehicle, command_mode::oneoff }, - { "fuelpumpdisable", command_target::vehicle, command_mode::oneoff }, - { "oilpumptoggle", command_target::vehicle, command_mode::oneoff }, - { "oilpumpenable", command_target::vehicle, command_mode::oneoff }, - { "oilpumpdisable", command_target::vehicle, command_mode::oneoff }, - { "linebreakertoggle", command_target::vehicle, command_mode::oneoff }, - { "linebreakeropen", command_target::vehicle, command_mode::oneoff }, - { "linebreakerclose", command_target::vehicle, command_mode::oneoff }, - { "convertertoggle", command_target::vehicle, command_mode::oneoff }, - { "converterenable", command_target::vehicle, command_mode::oneoff }, - { "converterdisable", command_target::vehicle, command_mode::oneoff }, - { "convertertogglelocal", command_target::vehicle, command_mode::oneoff }, - { "converteroverloadrelayreset", command_target::vehicle, command_mode::oneoff }, - { "compressortoggle", command_target::vehicle, command_mode::oneoff }, - { "compressorenable", command_target::vehicle, command_mode::oneoff }, - { "compressordisable", command_target::vehicle, command_mode::oneoff }, - { "compressortogglelocal", command_target::vehicle, command_mode::oneoff }, - { "compressorpresetactivatenext", command_target::vehicle, command_mode::oneoff }, - { "compressorpresetactivateprevious", command_target::vehicle, command_mode::oneoff }, - { "compressorpresetactivatedefault", command_target::vehicle, command_mode::oneoff }, - { "motoroverloadrelaythresholdtoggle", command_target::vehicle, command_mode::oneoff }, - { "motoroverloadrelaythresholdsetlow", command_target::vehicle, command_mode::oneoff }, - { "motoroverloadrelaythresholdsethigh", command_target::vehicle, command_mode::oneoff }, - { "motoroverloadrelayreset", command_target::vehicle, command_mode::oneoff }, - { "universalrelayreset1", command_target::vehicle, command_mode::oneoff }, - { "universalrelayreset2", command_target::vehicle, command_mode::oneoff }, - { "universalrelayreset3", command_target::vehicle, command_mode::oneoff }, - { "notchingrelaytoggle", command_target::vehicle, command_mode::oneoff }, - { "epbrakecontroltoggle", command_target::vehicle, command_mode::oneoff }, - { "trainbrakeoperationmodeincrease", command_target::vehicle, command_mode::oneoff }, - { "trainbrakeoperationmodedecrease", command_target::vehicle, command_mode::oneoff }, - { "brakeactingspeedincrease", command_target::vehicle, command_mode::oneoff }, - { "brakeactingspeeddecrease", command_target::vehicle, command_mode::oneoff }, - { "brakeactingspeedsetcargo", command_target::vehicle, command_mode::oneoff }, - { "brakeactingspeedsetpassenger", command_target::vehicle, command_mode::oneoff }, - { "brakeactingspeedsetrapid", command_target::vehicle, command_mode::oneoff }, - { "brakeloadcompensationincrease", command_target::vehicle, command_mode::oneoff }, - { "brakeloadcompensationdecrease", command_target::vehicle, command_mode::oneoff }, - { "mubrakingindicatortoggle", command_target::vehicle, command_mode::oneoff }, - { "alerteracknowledge", command_target::vehicle, command_mode::oneoff }, - { "cabsignalacknowledge", command_target::vehicle, command_mode::oneoff }, - { "hornlowactivate", command_target::vehicle, command_mode::oneoff }, - { "hornhighactivate", command_target::vehicle, command_mode::oneoff }, - { "whistleactivate", command_target::vehicle, command_mode::oneoff }, - { "radiotoggle", command_target::vehicle, command_mode::oneoff }, - { "radioenable", command_target::vehicle, command_mode::oneoff }, - { "radiodisable", command_target::vehicle, command_mode::oneoff }, - { "radiochannelincrease", command_target::vehicle, command_mode::oneoff }, - { "radiochanneldecrease", command_target::vehicle, command_mode::oneoff }, - { "radiochannelset", command_target::vehicle, command_mode::oneoff }, - { "radiostopsend", command_target::vehicle, command_mode::oneoff }, - { "radiostopenable", command_target::vehicle, command_mode::oneoff }, - { "radiostopdisable", command_target::vehicle, command_mode::oneoff }, - { "radiostoptest", command_target::vehicle, command_mode::oneoff }, - { "radiocall3send", command_target::vehicle, command_mode::oneoff }, - { "radiovolumeincrease", command_target::vehicle, command_mode::oneoff }, - { "radiovolumedecrease", command_target::vehicle, command_mode::oneoff }, - { "radiovolumeset", command_target::vehicle, command_mode::oneoff }, - { "cabchangeforward", command_target::vehicle, command_mode::oneoff }, - { "cabchangebackward", command_target::vehicle, command_mode::oneoff }, + {"aidriverenable", command_target::vehicle, command_mode::oneoff}, + {"aidriverdisable", command_target::vehicle, command_mode::oneoff}, + {"jointcontrollerset", command_target::vehicle, command_mode::oneoff}, + {"mastercontrollerincrease", command_target::vehicle, command_mode::oneoff}, + {"mastercontrollerincreasefast", command_target::vehicle, command_mode::oneoff}, + {"mastercontrollerdecrease", command_target::vehicle, command_mode::oneoff}, + {"mastercontrollerdecreasefast", command_target::vehicle, command_mode::oneoff}, + {"mastercontrollerset", command_target::vehicle, command_mode::oneoff}, + {"secondcontrollerincrease", command_target::vehicle, command_mode::oneoff}, + {"secondcontrollerincreasefast", command_target::vehicle, command_mode::oneoff}, + {"secondcontrollerdecrease", command_target::vehicle, command_mode::oneoff}, + {"secondcontrollerdecreasefast", command_target::vehicle, command_mode::oneoff}, + {"secondcontrollerset", command_target::vehicle, command_mode::oneoff}, + {"mucurrentindicatorothersourceactivate", command_target::vehicle, command_mode::oneoff}, + {"independentbrakeincrease", command_target::vehicle, command_mode::continuous}, + {"independentbrakeincreasefast", command_target::vehicle, command_mode::oneoff}, + {"independentbrakedecrease", command_target::vehicle, command_mode::continuous}, + {"independentbrakedecreasefast", command_target::vehicle, command_mode::oneoff}, + {"independentbrakeset", command_target::vehicle, command_mode::oneoff}, + {"independentbrakebailoff", command_target::vehicle, command_mode::oneoff}, + {"universalbrakebutton1", command_target::vehicle, command_mode::oneoff}, + {"universalbrakebutton2", command_target::vehicle, command_mode::oneoff}, + {"universalbrakebutton3", command_target::vehicle, command_mode::oneoff}, + {"trainbrakeincrease", command_target::vehicle, command_mode::continuous}, + {"trainbrakedecrease", command_target::vehicle, command_mode::continuous}, + {"trainbrakeset", command_target::vehicle, command_mode::oneoff}, + {"trainbrakecharging", command_target::vehicle, command_mode::oneoff}, + {"trainbrakerelease", command_target::vehicle, command_mode::oneoff}, + {"trainbrakefirstservice", command_target::vehicle, command_mode::oneoff}, + {"trainbrakeservice", command_target::vehicle, command_mode::oneoff}, + {"trainbrakefullservice", command_target::vehicle, command_mode::oneoff}, + {"trainbrakehandleoff", command_target::vehicle, command_mode::oneoff}, + {"trainbrakeemergency", command_target::vehicle, command_mode::oneoff}, + {"trainbrakebasepressureincrease", command_target::vehicle, command_mode::oneoff}, + {"trainbrakebasepressuredecrease", command_target::vehicle, command_mode::oneoff}, + {"trainbrakebasepressurereset", command_target::vehicle, command_mode::oneoff}, + {"trainbrakeoperationtoggle", command_target::vehicle, command_mode::oneoff}, + {"manualbrakeincrease", command_target::vehicle, command_mode::oneoff}, + {"manualbrakedecrease", command_target::vehicle, command_mode::oneoff}, + {"alarmchaintoggle", command_target::vehicle, command_mode::oneoff}, + {"alarmchainenable", command_target::vehicle, command_mode::oneoff}, + {"alarmchaindisable", command_target::vehicle, command_mode::oneoff}, + {"wheelspinbrakeactivate", command_target::vehicle, command_mode::oneoff}, + {"sandboxactivate", command_target::vehicle, command_mode::oneoff}, + {"autosandboxtoggle", command_target::vehicle, command_mode::oneoff}, + {"autosandboxactivate", command_target::vehicle, command_mode::oneoff}, + {"autosandboxdeactivate", command_target::vehicle, command_mode::oneoff}, + {"reverserincrease", command_target::vehicle, command_mode::oneoff}, + {"reverserdecrease", command_target::vehicle, command_mode::oneoff}, + {"reverserforwardhigh", command_target::vehicle, command_mode::oneoff}, + {"reverserforward", command_target::vehicle, command_mode::oneoff}, + {"reverserneutral", command_target::vehicle, command_mode::oneoff}, + {"reverserbackward", command_target::vehicle, command_mode::oneoff}, + {"waterpumpbreakertoggle", command_target::vehicle, command_mode::oneoff}, + {"waterpumpbreakerclose", command_target::vehicle, command_mode::oneoff}, + {"waterpumpbreakeropen", command_target::vehicle, command_mode::oneoff}, + {"waterpumptoggle", command_target::vehicle, command_mode::oneoff}, + {"waterpumpenable", command_target::vehicle, command_mode::oneoff}, + {"waterpumpdisable", command_target::vehicle, command_mode::oneoff}, + {"waterheaterbreakertoggle", command_target::vehicle, command_mode::oneoff}, + {"waterheaterbreakerclose", command_target::vehicle, command_mode::oneoff}, + {"waterheaterbreakeropen", command_target::vehicle, command_mode::oneoff}, + {"waterheatertoggle", command_target::vehicle, command_mode::oneoff}, + {"waterheaterenable", command_target::vehicle, command_mode::oneoff}, + {"waterheaterdisable", command_target::vehicle, command_mode::oneoff}, + {"watercircuitslinktoggle", command_target::vehicle, command_mode::oneoff}, + {"watercircuitslinkenable", command_target::vehicle, command_mode::oneoff}, + {"watercircuitslinkdisable", command_target::vehicle, command_mode::oneoff}, + {"fuelpumptoggle", command_target::vehicle, command_mode::oneoff}, + {"fuelpumpenable", command_target::vehicle, command_mode::oneoff}, + {"fuelpumpdisable", command_target::vehicle, command_mode::oneoff}, + {"oilpumptoggle", command_target::vehicle, command_mode::oneoff}, + {"oilpumpenable", command_target::vehicle, command_mode::oneoff}, + {"oilpumpdisable", command_target::vehicle, command_mode::oneoff}, + {"linebreakertoggle", command_target::vehicle, command_mode::oneoff}, + {"linebreakeropen", command_target::vehicle, command_mode::oneoff}, + {"linebreakerclose", command_target::vehicle, command_mode::oneoff}, + {"convertertoggle", command_target::vehicle, command_mode::oneoff}, + {"converterenable", command_target::vehicle, command_mode::oneoff}, + {"converterdisable", command_target::vehicle, command_mode::oneoff}, + {"convertertogglelocal", command_target::vehicle, command_mode::oneoff}, + {"converteroverloadrelayreset", command_target::vehicle, command_mode::oneoff}, + {"compressortoggle", command_target::vehicle, command_mode::oneoff}, + {"compressorenable", command_target::vehicle, command_mode::oneoff}, + {"compressordisable", command_target::vehicle, command_mode::oneoff}, + {"compressortogglelocal", command_target::vehicle, command_mode::oneoff}, + {"compressorpresetactivatenext", command_target::vehicle, command_mode::oneoff}, + {"compressorpresetactivateprevious", command_target::vehicle, command_mode::oneoff}, + {"compressorpresetactivatedefault", command_target::vehicle, command_mode::oneoff}, + {"motoroverloadrelaythresholdtoggle", command_target::vehicle, command_mode::oneoff}, + {"motoroverloadrelaythresholdsetlow", command_target::vehicle, command_mode::oneoff}, + {"motoroverloadrelaythresholdsethigh", command_target::vehicle, command_mode::oneoff}, + {"motoroverloadrelayreset", command_target::vehicle, command_mode::oneoff}, + {"universalrelayreset1", command_target::vehicle, command_mode::oneoff}, + {"universalrelayreset2", command_target::vehicle, command_mode::oneoff}, + {"universalrelayreset3", command_target::vehicle, command_mode::oneoff}, + {"notchingrelaytoggle", command_target::vehicle, command_mode::oneoff}, + {"epbrakecontroltoggle", command_target::vehicle, command_mode::oneoff}, + {"epbrakecontrolenable", command_target::vehicle, command_mode::oneoff}, + {"epbrakecontroldisable", command_target::vehicle, command_mode::oneoff}, + {"trainbrakeoperationmodeincrease", command_target::vehicle, command_mode::oneoff}, + {"trainbrakeoperationmodedecrease", command_target::vehicle, command_mode::oneoff}, + {"brakeactingspeedincrease", command_target::vehicle, command_mode::oneoff}, + {"brakeactingspeeddecrease", command_target::vehicle, command_mode::oneoff}, + {"brakeactingspeedsetcargo", command_target::vehicle, command_mode::oneoff}, + {"brakeactingspeedsetpassenger", command_target::vehicle, command_mode::oneoff}, + {"brakeactingspeedsetrapid", command_target::vehicle, command_mode::oneoff}, + {"brakeloadcompensationincrease", command_target::vehicle, command_mode::oneoff}, + {"brakeloadcompensationdecrease", command_target::vehicle, command_mode::oneoff}, + {"mubrakingindicatortoggle", command_target::vehicle, command_mode::oneoff}, + {"alerteracknowledge", command_target::vehicle, command_mode::oneoff}, + {"cabsignalacknowledge", command_target::vehicle, command_mode::oneoff}, + {"hornlowactivate", command_target::vehicle, command_mode::oneoff}, + {"hornhighactivate", command_target::vehicle, command_mode::oneoff}, + {"whistleactivate", command_target::vehicle, command_mode::oneoff}, + {"radiotoggle", command_target::vehicle, command_mode::oneoff}, + {"radioenable", command_target::vehicle, command_mode::oneoff}, + {"radiodisable", command_target::vehicle, command_mode::oneoff}, + {"radiochannelincrease", command_target::vehicle, command_mode::oneoff}, + {"radiochanneldecrease", command_target::vehicle, command_mode::oneoff}, + {"radiochannelset", command_target::vehicle, command_mode::oneoff}, + {"radiostopsend", command_target::vehicle, command_mode::oneoff}, + {"radiostopenable", command_target::vehicle, command_mode::oneoff}, + {"radiostopdisable", command_target::vehicle, command_mode::oneoff}, + {"radiostoptest", command_target::vehicle, command_mode::oneoff}, + {"radiocall3send", command_target::vehicle, command_mode::oneoff}, + {"radiovolumeincrease", command_target::vehicle, command_mode::oneoff}, + {"radiovolumedecrease", command_target::vehicle, command_mode::oneoff}, + {"radiovolumeset", command_target::vehicle, command_mode::oneoff}, + {"cabchangeforward", command_target::vehicle, command_mode::oneoff}, + {"cabchangebackward", command_target::vehicle, command_mode::oneoff}, {"modernlightdimmerdecrease", command_target::vehicle, command_mode::oneoff}, {"modernlightdimmerincrease", command_target::vehicle, command_mode::oneoff}, - { "viewturn", command_target::entity, command_mode::oneoff }, - { "movehorizontal", command_target::entity, command_mode::oneoff }, - { "movehorizontalfast", command_target::entity, command_mode::oneoff }, - { "movevertical", command_target::entity, command_mode::oneoff }, - { "moveverticalfast", command_target::entity, command_mode::oneoff }, - { "moveleft", command_target::entity, command_mode::oneoff }, - { "moveright", command_target::entity, command_mode::oneoff }, - { "moveforward", command_target::entity, command_mode::oneoff }, - { "moveback", command_target::entity, command_mode::oneoff }, - { "moveup", command_target::entity, command_mode::oneoff }, - { "movedown", command_target::entity, command_mode::oneoff }, - { "nearestcarcouplingincrease", command_target::vehicle, command_mode::oneoff }, - { "nearestcarcouplingdisconnect", command_target::vehicle, command_mode::oneoff }, - { "nearestcarcoupleradapterattach", command_target::vehicle, command_mode::oneoff }, - { "nearestcarcoupleradapterremove", command_target::vehicle, command_mode::oneoff }, - { "occupiedcarcouplingdisconnect", command_target::vehicle, command_mode::oneoff }, - { "occupiedcarcouplingdisconnectback", command_target::vehicle, command_mode::oneoff }, - { "doortoggleleft", command_target::vehicle, command_mode::oneoff }, - { "doortoggleright", command_target::vehicle, command_mode::oneoff }, - { "doorpermitleft", command_target::vehicle, command_mode::oneoff }, - { "doorpermitright", command_target::vehicle, command_mode::oneoff }, - { "doorpermitpresetactivatenext", command_target::vehicle, command_mode::oneoff }, - { "doorpermitpresetactivateprevious", command_target::vehicle, command_mode::oneoff }, - { "dooropenleft", command_target::vehicle, command_mode::oneoff }, - { "dooropenright", command_target::vehicle, command_mode::oneoff }, - { "dooropenall", command_target::vehicle, command_mode::oneoff }, - { "doorcloseleft", command_target::vehicle, command_mode::oneoff }, - { "doorcloseright", command_target::vehicle, command_mode::oneoff }, - { "doorcloseall", command_target::vehicle, command_mode::oneoff }, - { "doorsteptoggle", command_target::vehicle, command_mode::oneoff }, - { "doormodetoggle", command_target::vehicle, command_mode::oneoff }, - { "mirrorstoggle", command_target::vehicle, command_mode::oneoff }, - { "departureannounce", command_target::vehicle, command_mode::oneoff }, - { "doorlocktoggle", command_target::vehicle, command_mode::oneoff }, - { "pantographcompressorvalvetoggle", command_target::vehicle, command_mode::oneoff }, - { "pantographcompressorvalveenable", command_target::vehicle, command_mode::oneoff }, - { "pantographcompressorvalvedisable", command_target::vehicle, command_mode::oneoff }, - { "pantographcompressoractivate", command_target::vehicle, command_mode::oneoff }, - { "pantographtogglefront", command_target::vehicle, command_mode::oneoff }, - { "pantographtogglerear", command_target::vehicle, command_mode::oneoff }, - { "pantographraisefront", command_target::vehicle, command_mode::oneoff }, - { "pantographraiserear", command_target::vehicle, command_mode::oneoff }, - { "pantographlowerfront", command_target::vehicle, command_mode::oneoff }, - { "pantographlowerrear", command_target::vehicle, command_mode::oneoff }, - { "pantographlowerall", command_target::vehicle, command_mode::oneoff }, - { "pantographselectnext", command_target::vehicle, command_mode::oneoff }, - { "pantographselectprevious", command_target::vehicle, command_mode::oneoff }, - { "pantographtoggleselected", command_target::vehicle, command_mode::oneoff }, - { "pantographraiseselected", command_target::vehicle, command_mode::oneoff }, - { "pantographlowerselected", command_target::vehicle, command_mode::oneoff }, - { "pantographvalvesupdate", command_target::vehicle, command_mode::oneoff }, - { "pantographvalvesoff", command_target::vehicle, command_mode::oneoff }, - { "heatingtoggle", command_target::vehicle, command_mode::oneoff }, - { "heatingenable", command_target::vehicle, command_mode::oneoff }, - { "heatingdisable", command_target::vehicle, command_mode::oneoff }, - { "lightspresetactivatenext", command_target::vehicle, command_mode::oneoff }, - { "lightspresetactivateprevious", command_target::vehicle, command_mode::oneoff }, - { "headlighttoggleleft", command_target::vehicle, command_mode::oneoff }, - { "headlightenableleft", command_target::vehicle, command_mode::oneoff }, - { "headlightdisableleft", command_target::vehicle, command_mode::oneoff }, - { "headlighttoggleright", command_target::vehicle, command_mode::oneoff }, - { "headlightenableright", command_target::vehicle, command_mode::oneoff }, - { "headlightdisableright", command_target::vehicle, command_mode::oneoff }, - { "headlighttoggleupper", command_target::vehicle, command_mode::oneoff }, - { "headlightenableupper", command_target::vehicle, command_mode::oneoff }, - { "headlightdisableupper", command_target::vehicle, command_mode::oneoff }, - { "redmarkertoggleleft", command_target::vehicle, command_mode::oneoff }, - { "redmarkerenableleft", command_target::vehicle, command_mode::oneoff }, - { "redmarkerdisableleft", command_target::vehicle, command_mode::oneoff }, - { "redmarkertoggleright", command_target::vehicle, command_mode::oneoff }, - { "redmarkerenableright", command_target::vehicle, command_mode::oneoff }, - { "redmarkerdisableright", command_target::vehicle, command_mode::oneoff }, - { "headlighttogglerearleft", command_target::vehicle, command_mode::oneoff }, - { "headlightenablerearleft", command_target::vehicle, command_mode::oneoff }, - { "headlightdisablerearleft", command_target::vehicle, command_mode::oneoff }, - { "headlighttogglerearright", command_target::vehicle, command_mode::oneoff }, - { "headlightenablerearright", command_target::vehicle, command_mode::oneoff }, - { "headlightdisablerearright", command_target::vehicle, command_mode::oneoff }, - { "headlighttogglerearupper", command_target::vehicle, command_mode::oneoff }, - { "headlightenablerearupper", command_target::vehicle, command_mode::oneoff }, - { "headlightdisablerearupper", command_target::vehicle, command_mode::oneoff }, - { "redmarkertogglerearleft", command_target::vehicle, command_mode::oneoff }, - { "redmarkerenablerearleft", command_target::vehicle, command_mode::oneoff }, - { "redmarkerdisablerearleft", command_target::vehicle, command_mode::oneoff }, - { "redmarkertogglerearright", command_target::vehicle, command_mode::oneoff }, - { "redmarkerenablerearright", command_target::vehicle, command_mode::oneoff }, - { "redmarkerdisablerearright", command_target::vehicle, command_mode::oneoff }, - { "redmarkerstoggle", command_target::vehicle, command_mode::oneoff }, - { "endsignalstoggle", command_target::vehicle, command_mode::oneoff }, - { "headlightsdimtoggle", command_target::vehicle, command_mode::oneoff }, - { "headlightsdimenable", command_target::vehicle, command_mode::oneoff }, - { "headlightsdimdisable", command_target::vehicle, command_mode::oneoff }, - { "motorconnectorsopen", command_target::vehicle, command_mode::oneoff }, - { "motorconnectorsclose", command_target::vehicle, command_mode::oneoff }, - { "motordisconnect", command_target::vehicle, command_mode::oneoff }, - { "interiorlighttoggle", command_target::vehicle, command_mode::oneoff }, - { "interiorlightenable", command_target::vehicle, command_mode::oneoff }, - { "interiorlightdisable", command_target::vehicle, command_mode::oneoff }, - { "interiorlightdimtoggle", command_target::vehicle, command_mode::oneoff }, - { "interiorlightdimenable", command_target::vehicle, command_mode::oneoff }, - { "interiorlightdimdisable", command_target::vehicle, command_mode::oneoff }, - { "compartmentlightstoggle", command_target::vehicle, command_mode::oneoff }, - { "compartmentlightsenable", command_target::vehicle, command_mode::oneoff }, - { "compartmentlightsdisable", command_target::vehicle, command_mode::oneoff }, - { "instrumentlighttoggle", command_target::vehicle, command_mode::oneoff }, - { "instrumentlightenable", command_target::vehicle, command_mode::oneoff }, - { "instrumentlightdisable", command_target::vehicle, command_mode::oneoff }, - { "dashboardlighttoggle", command_target::vehicle, command_mode::oneoff }, - { "dashboardlightenable", command_target::vehicle, command_mode::oneoff }, - { "dashboardlightdisable", command_target::vehicle, command_mode::oneoff }, - { "timetablelighttoggle", command_target::vehicle, command_mode::oneoff }, - { "timetablelightenable", command_target::vehicle, command_mode::oneoff }, - { "timetablelightdisable", command_target::vehicle, command_mode::oneoff }, - { "generictoggle0", command_target::vehicle, command_mode::oneoff }, - { "generictoggle1", command_target::vehicle, command_mode::oneoff }, - { "generictoggle2", command_target::vehicle, command_mode::oneoff }, - { "generictoggle3", command_target::vehicle, command_mode::oneoff }, - { "generictoggle4", command_target::vehicle, command_mode::oneoff }, - { "generictoggle5", command_target::vehicle, command_mode::oneoff }, - { "generictoggle6", command_target::vehicle, command_mode::oneoff }, - { "generictoggle7", command_target::vehicle, command_mode::oneoff }, - { "generictoggle8", command_target::vehicle, command_mode::oneoff }, - { "generictoggle9", command_target::vehicle, command_mode::oneoff }, - { "batterytoggle", command_target::vehicle, command_mode::oneoff }, - { "batteryenable", command_target::vehicle, command_mode::oneoff }, - { "batterydisable", command_target::vehicle, command_mode::oneoff }, - { "cabactivationtoggle", command_target::vehicle, command_mode::oneoff }, - { "cabactivationenable", command_target::vehicle, command_mode::oneoff }, - { "cabactivationdisable", command_target::vehicle, command_mode::oneoff }, - { "motorblowerstogglefront", command_target::vehicle, command_mode::oneoff }, - { "motorblowerstogglerear", command_target::vehicle, command_mode::oneoff }, - { "motorblowersdisableall", command_target::vehicle, command_mode::oneoff }, - { "coolingfanstoggle", command_target::vehicle, command_mode::oneoff }, - { "tempomattoggle", command_target::vehicle, command_mode::oneoff }, - { "springbraketoggle", command_target::vehicle, command_mode::oneoff }, - { "springbrakeenable", command_target::vehicle, command_mode::oneoff }, - { "springbrakedisable", command_target::vehicle, command_mode::oneoff }, - { "springbrakeshutofftoggle", command_target::vehicle, command_mode::oneoff }, - { "springbrakeshutoffenable", command_target::vehicle, command_mode::oneoff }, - { "springbrakeshutoffdisable", command_target::vehicle, command_mode::oneoff }, - { "springbrakerelease", command_target::vehicle }, - { "distancecounteractivate", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolincrease", command_target::vehicle, command_mode::oneoff }, - { "speedcontroldecrease", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolpowerincrease", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolpowerdecrease", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton0", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton1", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton2", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton3", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton4", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton5", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton6", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton7", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton8", command_target::vehicle, command_mode::oneoff }, - { "speedcontrolbutton9", command_target::vehicle, command_mode::oneoff }, - { "inverterenable1", command_target::vehicle, command_mode::oneoff }, - { "inverterenable2", command_target::vehicle, command_mode::oneoff }, - { "inverterenable3", command_target::vehicle, command_mode::oneoff }, - { "inverterenable4", command_target::vehicle, command_mode::oneoff }, - { "inverterenable5", command_target::vehicle, command_mode::oneoff }, - { "inverterenable6", command_target::vehicle, command_mode::oneoff }, - { "inverterenable7", command_target::vehicle, command_mode::oneoff }, - { "inverterenable8", command_target::vehicle, command_mode::oneoff }, - { "inverterenable9", command_target::vehicle, command_mode::oneoff }, - { "inverterenable10", command_target::vehicle, command_mode::oneoff }, - { "inverterenable11", command_target::vehicle, command_mode::oneoff }, - { "inverterenable12", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable1", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable2", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable3", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable4", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable5", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable6", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable7", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable8", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable9", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable10", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable11", command_target::vehicle, command_mode::oneoff }, - { "inverterdisable12", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle1", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle2", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle3", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle4", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle5", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle6", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle7", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle8", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle9", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle10", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle11", command_target::vehicle, command_mode::oneoff }, - { "invertertoggle12", command_target::vehicle, command_mode::oneoff }, - { "globalradiostop", command_target::simulation, command_mode::oneoff }, - { "timejump", command_target::simulation, command_mode::oneoff }, - { "timejumplarge", command_target::simulation, command_mode::oneoff }, - { "timejumpsmall", command_target::simulation, command_mode::oneoff }, - { "setdatetime", command_target::simulation, command_mode::oneoff }, - { "setweather", command_target::simulation, command_mode::oneoff }, - { "settemperature", command_target::simulation, command_mode::oneoff }, - { "vehiclemoveforwards", command_target::vehicle, command_mode::oneoff }, - { "vehiclemovebackwards", command_target::vehicle, command_mode::oneoff }, - { "vehicleboost", command_target::vehicle, command_mode::oneoff }, - { "debugtoggle", command_target::simulation, command_mode::oneoff }, - { "focuspauseset", command_target::simulation, command_mode::oneoff }, - { "pausetoggle", command_target::simulation, command_mode::oneoff }, - { "entervehicle", command_target::simulation, command_mode::oneoff }, - { "resetconsist", command_target::simulation, command_mode::oneoff }, - { "fillcompressor", command_target::simulation, command_mode::oneoff }, - { "consistreleaser", command_target::simulation, command_mode::oneoff }, - { "queueevent", command_target::simulation, command_mode::oneoff }, - { "setlight", command_target::simulation, command_mode::oneoff }, - { "insertmodel", command_target::simulation, command_mode::oneoff }, - { "deletemodel", command_target::simulation, command_mode::oneoff }, - { "trainsetmove", command_target::simulation, command_mode::oneoff }, - { "consistteleport", command_target::simulation, command_mode::oneoff }, - { "pullalarmchain", command_target::simulation, command_mode::oneoff }, - { "sendaicommand", command_target::simulation, command_mode::oneoff }, - { "spawntrainset", command_target::simulation, command_mode::oneoff }, - { "destroytrainset", command_target::simulation, command_mode::oneoff }, - { "quitsimulation", command_target::simulation, command_mode::oneoff }, + {"viewturn", command_target::entity, command_mode::oneoff}, + {"movehorizontal", command_target::entity, command_mode::oneoff}, + {"movehorizontalfast", command_target::entity, command_mode::oneoff}, + {"movevertical", command_target::entity, command_mode::oneoff}, + {"moveverticalfast", command_target::entity, command_mode::oneoff}, + {"moveleft", command_target::entity, command_mode::oneoff}, + {"moveright", command_target::entity, command_mode::oneoff}, + {"moveforward", command_target::entity, command_mode::oneoff}, + {"moveback", command_target::entity, command_mode::oneoff}, + {"moveup", command_target::entity, command_mode::oneoff}, + {"movedown", command_target::entity, command_mode::oneoff}, + {"nearestcarcouplingincrease", command_target::vehicle, command_mode::oneoff}, + {"nearestcarcouplingdisconnect", command_target::vehicle, command_mode::oneoff}, + {"nearestcarcoupleradapterattach", command_target::vehicle, command_mode::oneoff}, + {"nearestcarcoupleradapterremove", command_target::vehicle, command_mode::oneoff}, + {"occupiedcarcouplingdisconnect", command_target::vehicle, command_mode::oneoff}, + {"occupiedcarcouplingdisconnectback", command_target::vehicle, command_mode::oneoff}, + {"doortoggleleft", command_target::vehicle, command_mode::oneoff}, + {"doortoggleright", command_target::vehicle, command_mode::oneoff}, + {"doorpermitleft", command_target::vehicle, command_mode::oneoff}, + {"doorpermitright", command_target::vehicle, command_mode::oneoff}, + {"doorpermitpresetactivatenext", command_target::vehicle, command_mode::oneoff}, + {"doorpermitpresetactivateprevious", command_target::vehicle, command_mode::oneoff}, + {"dooropenleft", command_target::vehicle, command_mode::oneoff}, + {"dooropenright", command_target::vehicle, command_mode::oneoff}, + {"dooropenall", command_target::vehicle, command_mode::oneoff}, + {"doorcloseleft", command_target::vehicle, command_mode::oneoff}, + {"doorcloseright", command_target::vehicle, command_mode::oneoff}, + {"doorcloseall", command_target::vehicle, command_mode::oneoff}, + {"doorsteptoggle", command_target::vehicle, command_mode::oneoff}, + {"doormodetoggle", command_target::vehicle, command_mode::oneoff}, + {"mirrorstoggle", command_target::vehicle, command_mode::oneoff}, + {"departureannounce", command_target::vehicle, command_mode::oneoff}, + {"doorlocktoggle", command_target::vehicle, command_mode::oneoff}, + {"pantographcompressorvalvetoggle", command_target::vehicle, command_mode::oneoff}, + {"pantographcompressorvalveenable", command_target::vehicle, command_mode::oneoff}, + {"pantographcompressorvalvedisable", command_target::vehicle, command_mode::oneoff}, + {"pantographcompressoractivate", command_target::vehicle, command_mode::oneoff}, + {"pantographtogglefront", command_target::vehicle, command_mode::oneoff}, + {"pantographtogglerear", command_target::vehicle, command_mode::oneoff}, + {"pantographraisefront", command_target::vehicle, command_mode::oneoff}, + {"pantographraiserear", command_target::vehicle, command_mode::oneoff}, + {"pantographlowerfront", command_target::vehicle, command_mode::oneoff}, + {"pantographlowerrear", command_target::vehicle, command_mode::oneoff}, + {"pantographlowerall", command_target::vehicle, command_mode::oneoff}, + {"pantographselectnext", command_target::vehicle, command_mode::oneoff}, + {"pantographselectprevious", command_target::vehicle, command_mode::oneoff}, + {"pantographtoggleselected", command_target::vehicle, command_mode::oneoff}, + {"pantographraiseselected", command_target::vehicle, command_mode::oneoff}, + {"pantographlowerselected", command_target::vehicle, command_mode::oneoff}, + {"pantographvalvesupdate", command_target::vehicle, command_mode::oneoff}, + {"pantographvalvesoff", command_target::vehicle, command_mode::oneoff}, + {"heatingtoggle", command_target::vehicle, command_mode::oneoff}, + {"heatingenable", command_target::vehicle, command_mode::oneoff}, + {"heatingdisable", command_target::vehicle, command_mode::oneoff}, + {"lightspresetactivatenext", command_target::vehicle, command_mode::oneoff}, + {"lightspresetactivateprevious", command_target::vehicle, command_mode::oneoff}, + {"headlighttoggleleft", command_target::vehicle, command_mode::oneoff}, + {"headlightenableleft", command_target::vehicle, command_mode::oneoff}, + {"headlightdisableleft", command_target::vehicle, command_mode::oneoff}, + {"headlighttoggleright", command_target::vehicle, command_mode::oneoff}, + {"headlightenableright", command_target::vehicle, command_mode::oneoff}, + {"headlightdisableright", command_target::vehicle, command_mode::oneoff}, + {"headlighttoggleupper", command_target::vehicle, command_mode::oneoff}, + {"headlightenableupper", command_target::vehicle, command_mode::oneoff}, + {"headlightdisableupper", command_target::vehicle, command_mode::oneoff}, + {"redmarkertoggleleft", command_target::vehicle, command_mode::oneoff}, + {"redmarkerenableleft", command_target::vehicle, command_mode::oneoff}, + {"redmarkerdisableleft", command_target::vehicle, command_mode::oneoff}, + {"redmarkertoggleright", command_target::vehicle, command_mode::oneoff}, + {"redmarkerenableright", command_target::vehicle, command_mode::oneoff}, + {"redmarkerdisableright", command_target::vehicle, command_mode::oneoff}, + {"headlighttogglerearleft", command_target::vehicle, command_mode::oneoff}, + {"headlightenablerearleft", command_target::vehicle, command_mode::oneoff}, + {"headlightdisablerearleft", command_target::vehicle, command_mode::oneoff}, + {"headlighttogglerearright", command_target::vehicle, command_mode::oneoff}, + {"headlightenablerearright", command_target::vehicle, command_mode::oneoff}, + {"headlightdisablerearright", command_target::vehicle, command_mode::oneoff}, + {"headlighttogglerearupper", command_target::vehicle, command_mode::oneoff}, + {"headlightenablerearupper", command_target::vehicle, command_mode::oneoff}, + {"headlightdisablerearupper", command_target::vehicle, command_mode::oneoff}, + {"redmarkertogglerearleft", command_target::vehicle, command_mode::oneoff}, + {"redmarkerenablerearleft", command_target::vehicle, command_mode::oneoff}, + {"redmarkerdisablerearleft", command_target::vehicle, command_mode::oneoff}, + {"redmarkertogglerearright", command_target::vehicle, command_mode::oneoff}, + {"redmarkerenablerearright", command_target::vehicle, command_mode::oneoff}, + {"redmarkerdisablerearright", command_target::vehicle, command_mode::oneoff}, + {"redmarkerstoggle", command_target::vehicle, command_mode::oneoff}, + {"endsignalstoggle", command_target::vehicle, command_mode::oneoff}, + {"headlightsdimtoggle", command_target::vehicle, command_mode::oneoff}, + {"headlightsdimenable", command_target::vehicle, command_mode::oneoff}, + {"headlightsdimdisable", command_target::vehicle, command_mode::oneoff}, + {"motorconnectorsopen", command_target::vehicle, command_mode::oneoff}, + {"motorconnectorsclose", command_target::vehicle, command_mode::oneoff}, + {"motordisconnect", command_target::vehicle, command_mode::oneoff}, + {"interiorlighttoggle", command_target::vehicle, command_mode::oneoff}, + {"interiorlightenable", command_target::vehicle, command_mode::oneoff}, + {"interiorlightdisable", command_target::vehicle, command_mode::oneoff}, + {"interiorlightdimtoggle", command_target::vehicle, command_mode::oneoff}, + {"interiorlightdimenable", command_target::vehicle, command_mode::oneoff}, + {"interiorlightdimdisable", command_target::vehicle, command_mode::oneoff}, + {"compartmentlightstoggle", command_target::vehicle, command_mode::oneoff}, + {"compartmentlightsenable", command_target::vehicle, command_mode::oneoff}, + {"compartmentlightsdisable", command_target::vehicle, command_mode::oneoff}, + {"instrumentlighttoggle", command_target::vehicle, command_mode::oneoff}, + {"instrumentlightenable", command_target::vehicle, command_mode::oneoff}, + {"instrumentlightdisable", command_target::vehicle, command_mode::oneoff}, + {"dashboardlighttoggle", command_target::vehicle, command_mode::oneoff}, + {"dashboardlightenable", command_target::vehicle, command_mode::oneoff}, + {"dashboardlightdisable", command_target::vehicle, command_mode::oneoff}, + {"timetablelighttoggle", command_target::vehicle, command_mode::oneoff}, + {"timetablelightenable", command_target::vehicle, command_mode::oneoff}, + {"timetablelightdisable", command_target::vehicle, command_mode::oneoff}, + {"generictoggle0", command_target::vehicle, command_mode::oneoff}, + {"generictoggle1", command_target::vehicle, command_mode::oneoff}, + {"generictoggle2", command_target::vehicle, command_mode::oneoff}, + {"generictoggle3", command_target::vehicle, command_mode::oneoff}, + {"generictoggle4", command_target::vehicle, command_mode::oneoff}, + {"generictoggle5", command_target::vehicle, command_mode::oneoff}, + {"generictoggle6", command_target::vehicle, command_mode::oneoff}, + {"generictoggle7", command_target::vehicle, command_mode::oneoff}, + {"generictoggle8", command_target::vehicle, command_mode::oneoff}, + {"generictoggle9", command_target::vehicle, command_mode::oneoff}, + {"batterytoggle", command_target::vehicle, command_mode::oneoff}, + {"batteryenable", command_target::vehicle, command_mode::oneoff}, + {"batterydisable", command_target::vehicle, command_mode::oneoff}, + {"cabactivationtoggle", command_target::vehicle, command_mode::oneoff}, + {"cabactivationenable", command_target::vehicle, command_mode::oneoff}, + {"cabactivationdisable", command_target::vehicle, command_mode::oneoff}, + {"motorblowerstogglefront", command_target::vehicle, command_mode::oneoff}, + {"motorblowerstogglerear", command_target::vehicle, command_mode::oneoff}, + {"motorblowersdisableall", command_target::vehicle, command_mode::oneoff}, + {"coolingfanstoggle", command_target::vehicle, command_mode::oneoff}, + {"tempomattoggle", command_target::vehicle, command_mode::oneoff}, + {"springbraketoggle", command_target::vehicle, command_mode::oneoff}, + {"springbrakeenable", command_target::vehicle, command_mode::oneoff}, + {"springbrakedisable", command_target::vehicle, command_mode::oneoff}, + {"springbrakeshutofftoggle", command_target::vehicle, command_mode::oneoff}, + {"springbrakeshutoffenable", command_target::vehicle, command_mode::oneoff}, + {"springbrakeshutoffdisable", command_target::vehicle, command_mode::oneoff}, + {"springbrakerelease", command_target::vehicle}, + {"distancecounteractivate", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolincrease", command_target::vehicle, command_mode::oneoff}, + {"speedcontroldecrease", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolpowerincrease", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolpowerdecrease", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton0", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton1", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton2", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton3", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton4", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton5", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton6", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton7", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton8", command_target::vehicle, command_mode::oneoff}, + {"speedcontrolbutton9", command_target::vehicle, command_mode::oneoff}, + {"inverterenable1", command_target::vehicle, command_mode::oneoff}, + {"inverterenable2", command_target::vehicle, command_mode::oneoff}, + {"inverterenable3", command_target::vehicle, command_mode::oneoff}, + {"inverterenable4", command_target::vehicle, command_mode::oneoff}, + {"inverterenable5", command_target::vehicle, command_mode::oneoff}, + {"inverterenable6", command_target::vehicle, command_mode::oneoff}, + {"inverterenable7", command_target::vehicle, command_mode::oneoff}, + {"inverterenable8", command_target::vehicle, command_mode::oneoff}, + {"inverterenable9", command_target::vehicle, command_mode::oneoff}, + {"inverterenable10", command_target::vehicle, command_mode::oneoff}, + {"inverterenable11", command_target::vehicle, command_mode::oneoff}, + {"inverterenable12", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable1", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable2", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable3", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable4", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable5", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable6", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable7", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable8", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable9", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable10", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable11", command_target::vehicle, command_mode::oneoff}, + {"inverterdisable12", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle1", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle2", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle3", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle4", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle5", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle6", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle7", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle8", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle9", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle10", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle11", command_target::vehicle, command_mode::oneoff}, + {"invertertoggle12", command_target::vehicle, command_mode::oneoff}, + {"globalradiostop", command_target::simulation, command_mode::oneoff}, + {"timejump", command_target::simulation, command_mode::oneoff}, + {"timejumplarge", command_target::simulation, command_mode::oneoff}, + {"timejumpsmall", command_target::simulation, command_mode::oneoff}, + {"setdatetime", command_target::simulation, command_mode::oneoff}, + {"setweather", command_target::simulation, command_mode::oneoff}, + {"settemperature", command_target::simulation, command_mode::oneoff}, + {"vehiclemoveforwards", command_target::vehicle, command_mode::oneoff}, + {"vehiclemovebackwards", command_target::vehicle, command_mode::oneoff}, + {"vehicleboost", command_target::vehicle, command_mode::oneoff}, + {"debugtoggle", command_target::simulation, command_mode::oneoff}, + {"focuspauseset", command_target::simulation, command_mode::oneoff}, + {"pausetoggle", command_target::simulation, command_mode::oneoff}, + {"entervehicle", command_target::simulation, command_mode::oneoff}, + {"resetconsist", command_target::simulation, command_mode::oneoff}, + {"fillcompressor", command_target::simulation, command_mode::oneoff}, + {"consistreleaser", command_target::simulation, command_mode::oneoff}, + {"queueevent", command_target::simulation, command_mode::oneoff}, + {"setlight", command_target::simulation, command_mode::oneoff}, + {"insertmodel", command_target::simulation, command_mode::oneoff}, + {"deletemodel", command_target::simulation, command_mode::oneoff}, + {"trainsetmove", command_target::simulation, command_mode::oneoff}, + {"consistteleport", command_target::simulation, command_mode::oneoff}, + {"pullalarmchain", command_target::simulation, command_mode::oneoff}, + {"sendaicommand", command_target::simulation, command_mode::oneoff}, + {"spawntrainset", command_target::simulation, command_mode::oneoff}, + {"destroytrainset", command_target::simulation, command_mode::oneoff}, + {"quitsimulation", command_target::simulation, command_mode::oneoff}, {"wiperswitchincrease", command_target::vehicle, command_mode::oneoff}, {"wiperswitchdecrease", command_target::vehicle, command_mode::oneoff}, }; // Maps of command and coresponding strings -std::unordered_map commandMap = { - {"aidriverdisable", user_command::aidriverdisable}, - {"jointcontrollerset", user_command::jointcontrollerset}, - {"mastercontrollerincrease", user_command::mastercontrollerincrease}, - {"mastercontrollerincreasefast", user_command::mastercontrollerincreasefast}, - {"mastercontrollerdecrease", user_command::mastercontrollerdecrease}, - {"mastercontrollerdecreasefast", user_command::mastercontrollerdecreasefast}, - {"mastercontrollerset", user_command::mastercontrollerset}, - {"secondcontrollerincrease", user_command::secondcontrollerincrease}, - {"secondcontrollerincreasefast", user_command::secondcontrollerincreasefast}, - {"secondcontrollerdecrease", user_command::secondcontrollerdecrease}, - {"secondcontrollerdecreasefast", user_command::secondcontrollerdecreasefast}, - {"secondcontrollerset", user_command::secondcontrollerset}, - {"mucurrentindicatorothersourceactivate", user_command::mucurrentindicatorothersourceactivate}, - {"independentbrakeincrease", user_command::independentbrakeincrease}, - {"independentbrakeincreasefast", user_command::independentbrakeincreasefast}, - {"independentbrakedecrease", user_command::independentbrakedecrease}, - {"independentbrakedecreasefast", user_command::independentbrakedecreasefast}, - {"independentbrakeset", user_command::independentbrakeset}, - {"independentbrakebailoff", user_command::independentbrakebailoff}, - {"universalbrakebutton1", user_command::universalbrakebutton1}, - {"universalbrakebutton2", user_command::universalbrakebutton2}, - {"universalbrakebutton3", user_command::universalbrakebutton3}, - {"trainbrakeincrease", user_command::trainbrakeincrease}, - {"trainbrakedecrease", user_command::trainbrakedecrease}, - {"trainbrakeset", user_command::trainbrakeset}, - {"trainbrakecharging", user_command::trainbrakecharging}, - {"trainbrakerelease", user_command::trainbrakerelease}, - {"trainbrakefirstservice", user_command::trainbrakefirstservice}, - {"trainbrakeservice", user_command::trainbrakeservice}, - {"trainbrakefullservice", user_command::trainbrakefullservice}, - {"trainbrakehandleoff", user_command::trainbrakehandleoff}, - {"trainbrakeemergency", user_command::trainbrakeemergency}, - {"trainbrakebasepressureincrease", user_command::trainbrakebasepressureincrease}, - {"trainbrakebasepressuredecrease", user_command::trainbrakebasepressuredecrease}, - {"trainbrakebasepressurereset", user_command::trainbrakebasepressurereset}, - {"trainbrakeoperationtoggle", user_command::trainbrakeoperationtoggle}, - {"manualbrakeincrease", user_command::manualbrakeincrease}, - {"manualbrakedecrease", user_command::manualbrakedecrease}, - {"alarmchaintoggle", user_command::alarmchaintoggle}, - {"alarmchainenable", user_command::alarmchainenable}, - {"alarmchaindisable", user_command::alarmchaindisable}, - {"wheelspinbrakeactivate", user_command::wheelspinbrakeactivate}, - {"sandboxactivate", user_command::sandboxactivate}, - {"autosandboxtoggle", user_command::autosandboxtoggle}, - {"autosandboxactivate", user_command::autosandboxactivate}, - {"autosandboxdeactivate", user_command::autosandboxdeactivate}, - {"reverserincrease", user_command::reverserincrease}, - {"reverserdecrease", user_command::reverserdecrease}, - {"reverserforwardhigh", user_command::reverserforwardhigh}, - {"reverserforward", user_command::reverserforward}, - {"reverserneutral", user_command::reverserneutral}, - {"reverserbackward", user_command::reverserbackward}, - {"waterpumpbreakertoggle", user_command::waterpumpbreakertoggle}, - {"waterpumpbreakerclose", user_command::waterpumpbreakerclose}, - {"waterpumpbreakeropen", user_command::waterpumpbreakeropen}, - {"waterpumptoggle", user_command::waterpumptoggle}, - {"waterpumpenable", user_command::waterpumpenable}, - {"waterpumpdisable", user_command::waterpumpdisable}, - {"waterheaterbreakertoggle", user_command::waterheaterbreakertoggle}, - {"waterheaterbreakerclose", user_command::waterheaterbreakerclose}, - {"waterheaterbreakeropen", user_command::waterheaterbreakeropen}, - {"waterheatertoggle", user_command::waterheatertoggle}, - {"waterheaterenable", user_command::waterheaterenable}, - {"waterheaterdisable", user_command::waterheaterdisable}, - {"watercircuitslinktoggle", user_command::watercircuitslinktoggle}, - {"watercircuitslinkenable", user_command::watercircuitslinkenable}, - {"watercircuitslinkdisable", user_command::watercircuitslinkdisable}, - {"fuelpumptoggle", user_command::fuelpumptoggle}, - {"fuelpumpenable", user_command::fuelpumpenable}, - {"fuelpumpdisable", user_command::fuelpumpdisable}, - {"oilpumptoggle", user_command::oilpumptoggle}, - {"oilpumpenable", user_command::oilpumpenable}, - {"oilpumpdisable", user_command::oilpumpdisable}, - {"linebreakertoggle", user_command::linebreakertoggle}, - {"linebreakeropen", user_command::linebreakeropen}, - {"linebreakerclose", user_command::linebreakerclose}, - {"convertertoggle", user_command::convertertoggle}, - {"converterenable", user_command::converterenable}, - {"converterdisable", user_command::converterdisable}, - {"convertertogglelocal", user_command::convertertogglelocal}, - {"converteroverloadrelayreset", user_command::converteroverloadrelayreset}, - {"compressortoggle", user_command::compressortoggle}, - {"compressorenable", user_command::compressorenable}, - {"compressordisable", user_command::compressordisable}, - {"compressortogglelocal", user_command::compressortogglelocal}, - {"compressorpresetactivatenext", user_command::compressorpresetactivatenext}, - {"compressorpresetactivateprevious", user_command::compressorpresetactivateprevious}, - {"compressorpresetactivatedefault", user_command::compressorpresetactivatedefault}, - {"motoroverloadrelaythresholdtoggle", user_command::motoroverloadrelaythresholdtoggle}, - {"motoroverloadrelaythresholdsetlow", user_command::motoroverloadrelaythresholdsetlow}, - {"motoroverloadrelaythresholdsethigh", user_command::motoroverloadrelaythresholdsethigh}, - {"motoroverloadrelayreset", user_command::motoroverloadrelayreset}, - {"universalrelayreset1", user_command::universalrelayreset1}, - {"universalrelayreset2", user_command::universalrelayreset2}, - {"universalrelayreset3", user_command::universalrelayreset3}, - {"notchingrelaytoggle", user_command::notchingrelaytoggle}, - {"epbrakecontroltoggle", user_command::epbrakecontroltoggle}, - {"epbrakecontrolenable", user_command::epbrakecontrolenable}, - {"epbrakecontroldisable", user_command::epbrakecontroldisable}, - {"trainbrakeoperationmodeincrease", user_command::trainbrakeoperationmodeincrease}, - {"trainbrakeoperationmodedecrease", user_command::trainbrakeoperationmodedecrease}, - {"brakeactingspeedincrease", user_command::brakeactingspeedincrease}, - {"brakeactingspeeddecrease", user_command::brakeactingspeeddecrease}, - {"brakeactingspeedsetcargo", user_command::brakeactingspeedsetcargo}, - {"brakeactingspeedsetpassenger", user_command::brakeactingspeedsetpassenger}, - {"brakeactingspeedsetrapid", user_command::brakeactingspeedsetrapid}, - {"brakeloadcompensationincrease", user_command::brakeloadcompensationincrease}, - {"brakeloadcompensationdecrease", user_command::brakeloadcompensationdecrease}, - {"mubrakingindicatortoggle", user_command::mubrakingindicatortoggle}, - {"alerteracknowledge", user_command::alerteracknowledge}, - {"cabsignalacknowledge", user_command::cabsignalacknowledge}, - {"hornlowactivate", user_command::hornlowactivate}, - {"hornhighactivate", user_command::hornhighactivate}, - {"whistleactivate", user_command::whistleactivate}, - {"radiotoggle", user_command::radiotoggle}, - {"radioenable", user_command::radioenable}, - {"radiodisable", user_command::radiodisable}, - {"radiochannelincrease", user_command::radiochannelincrease}, - {"radiochanneldecrease", user_command::radiochanneldecrease}, - {"radiochannelset", user_command::radiochannelset}, - {"radiostopsend", user_command::radiostopsend}, - {"radiostopenable", user_command::radiostopenable}, - {"radiostopdisable", user_command::radiostopdisable}, - {"radiostoptest", user_command::radiostoptest}, - {"radiocall3send", user_command::radiocall3send}, - {"radiovolumeincrease", user_command::radiovolumeincrease}, - {"radiovolumedecrease", user_command::radiovolumedecrease}, - {"radiovolumeset", user_command::radiovolumeset}, - {"cabchangeforward", user_command::cabchangeforward}, - {"cabchangebackward", user_command::cabchangebackward}, - {"viewturn", user_command::viewturn}, - {"movehorizontal", user_command::movehorizontal}, - {"movehorizontalfast", user_command::movehorizontalfast}, - {"movevertical", user_command::movevertical}, - {"moveverticalfast", user_command::moveverticalfast}, - {"moveleft", user_command::moveleft}, - {"moveright", user_command::moveright}, - {"moveforward", user_command::moveforward}, - {"moveback", user_command::moveback}, - {"moveup", user_command::moveup}, - {"movedown", user_command::movedown}, - {"nearestcarcouplingincrease", user_command::nearestcarcouplingincrease}, - {"nearestcarcouplingdisconnect", user_command::nearestcarcouplingdisconnect}, - {"nearestcarcoupleradapterattach", user_command::nearestcarcoupleradapterattach}, - {"nearestcarcoupleradapterremove", user_command::nearestcarcoupleradapterremove}, - {"occupiedcarcouplingdisconnect", user_command::occupiedcarcouplingdisconnect}, - {"occupiedcarcouplingdisconnectback", user_command::occupiedcarcouplingdisconnectback}, - {"doortoggleleft", user_command::doortoggleleft}, - {"doortoggleright", user_command::doortoggleright}, - {"doorpermitleft", user_command::doorpermitleft}, - {"doorpermitright", user_command::doorpermitright}, - {"doorpermitpresetactivatenext", user_command::doorpermitpresetactivatenext}, - {"doorpermitpresetactivateprevious", user_command::doorpermitpresetactivateprevious}, - {"dooropenleft", user_command::dooropenleft}, - {"dooropenright", user_command::dooropenright}, - {"dooropenall", user_command::dooropenall}, - {"doorcloseleft", user_command::doorcloseleft}, - {"doorcloseright", user_command::doorcloseright}, - {"doorcloseall", user_command::doorcloseall}, - {"doorsteptoggle", user_command::doorsteptoggle}, - {"doormodetoggle", user_command::doormodetoggle}, - {"mirrorstoggle", user_command::mirrorstoggle}, - {"departureannounce", user_command::departureannounce}, - {"doorlocktoggle", user_command::doorlocktoggle}, - {"pantographcompressorvalvetoggle", user_command::pantographcompressorvalvetoggle}, - {"pantographcompressorvalveenable", user_command::pantographcompressorvalveenable}, - {"pantographcompressorvalvedisable", user_command::pantographcompressorvalvedisable}, - {"pantographcompressoractivate", user_command::pantographcompressoractivate}, - {"pantographtogglefront", user_command::pantographtogglefront}, - {"pantographtogglerear", user_command::pantographtogglerear}, - {"pantographraisefront", user_command::pantographraisefront}, - {"pantographraiserear", user_command::pantographraiserear}, - {"pantographlowerfront", user_command::pantographlowerfront}, - {"pantographlowerrear", user_command::pantographlowerrear}, - {"pantographlowerall", user_command::pantographlowerall}, - {"pantographselectnext", user_command::pantographselectnext}, - {"pantographselectprevious", user_command::pantographselectprevious}, - {"pantographtoggleselected", user_command::pantographtoggleselected}, - {"pantographraiseselected", user_command::pantographraiseselected}, - {"pantographlowerselected", user_command::pantographlowerselected}, - {"pantographvalvesupdate", user_command::pantographvalvesupdate}, - {"pantographvalvesoff", user_command::pantographvalvesoff}, - {"heatingtoggle", user_command::heatingtoggle}, - {"heatingenable", user_command::heatingenable}, - {"heatingdisable", user_command::heatingdisable}, - {"lightspresetactivatenext", user_command::lightspresetactivatenext}, - {"lightspresetactivateprevious", user_command::lightspresetactivateprevious}, - {"headlighttoggleleft", user_command::headlighttoggleleft}, - {"headlightenableleft", user_command::headlightenableleft}, - {"headlightdisableleft", user_command::headlightdisableleft}, - {"headlighttoggleright", user_command::headlighttoggleright}, - {"headlightenableright", user_command::headlightenableright}, - {"headlightdisableright", user_command::headlightdisableright}, - {"headlighttoggleupper", user_command::headlighttoggleupper}, - {"headlightenableupper", user_command::headlightenableupper}, - {"headlightdisableupper", user_command::headlightdisableupper}, - {"redmarkertoggleleft", user_command::redmarkertoggleleft}, - {"redmarkerenableleft", user_command::redmarkerenableleft}, - {"redmarkerdisableleft", user_command::redmarkerdisableleft}, - {"redmarkertoggleright", user_command::redmarkertoggleright}, - {"redmarkerenableright", user_command::redmarkerenableright}, - {"redmarkerdisableright", user_command::redmarkerdisableright}, - {"headlighttogglerearleft", user_command::headlighttogglerearleft}, - {"headlightenablerearleft", user_command::headlightenablerearleft}, - {"headlightdisablerearleft", user_command::headlightdisablerearleft}, - {"headlighttogglerearright", user_command::headlighttogglerearright}, - {"headlightenablerearright", user_command::headlightenablerearright}, - {"headlightdisablerearright", user_command::headlightdisablerearright}, - {"headlighttogglerearupper", user_command::headlighttogglerearupper}, - {"headlightenablerearupper", user_command::headlightenablerearupper}, - {"headlightdisablerearupper", user_command::headlightdisablerearupper}, - {"redmarkertogglerearleft", user_command::redmarkertogglerearleft}, - {"redmarkerenablerearleft", user_command::redmarkerenablerearleft}, - {"redmarkerdisablerearleft", user_command::redmarkerdisablerearleft}, - {"redmarkertogglerearright", user_command::redmarkertogglerearright}, - {"redmarkerenablerearright", user_command::redmarkerenablerearright}, - {"redmarkerdisablerearright", user_command::redmarkerdisablerearright}, - {"redmarkerstoggle", user_command::redmarkerstoggle}, - {"endsignalstoggle", user_command::endsignalstoggle}, - {"headlightsdimtoggle", user_command::headlightsdimtoggle}, - {"headlightsdimenable", user_command::headlightsdimenable}, - {"headlightsdimdisable", user_command::headlightsdimdisable}, - {"motorconnectorsopen", user_command::motorconnectorsopen}, - {"motorconnectorsclose", user_command::motorconnectorsclose}, - {"motordisconnect", user_command::motordisconnect}, - {"interiorlighttoggle", user_command::interiorlighttoggle}, - {"interiorlightenable", user_command::interiorlightenable}, - {"interiorlightdisable", user_command::interiorlightdisable}, - {"interiorlightdimtoggle", user_command::interiorlightdimtoggle}, - {"interiorlightdimenable", user_command::interiorlightdimenable}, - {"interiorlightdimdisable", user_command::interiorlightdimdisable}, - {"compartmentlightstoggle", user_command::compartmentlightstoggle}, - {"compartmentlightsenable", user_command::compartmentlightsenable}, - {"compartmentlightsdisable", user_command::compartmentlightsdisable}, - {"instrumentlighttoggle", user_command::instrumentlighttoggle}, - {"instrumentlightenable", user_command::instrumentlightenable}, - {"instrumentlightdisable", user_command::instrumentlightdisable}, - {"dashboardlighttoggle", user_command::dashboardlighttoggle}, - {"dashboardlightenable", user_command::dashboardlightenable}, - {"dashboardlightdisable", user_command::dashboardlightdisable}, - {"timetablelighttoggle", user_command::timetablelighttoggle}, - {"timetablelightenable", user_command::timetablelightenable}, - {"timetablelightdisable", user_command::timetablelightdisable}, - {"generictoggle0", user_command::generictoggle0}, - {"generictoggle1", user_command::generictoggle1}, - {"generictoggle2", user_command::generictoggle2}, - {"generictoggle3", user_command::generictoggle3}, - {"generictoggle4", user_command::generictoggle4}, - {"generictoggle5", user_command::generictoggle5}, - {"generictoggle6", user_command::generictoggle6}, - {"generictoggle7", user_command::generictoggle7}, - {"generictoggle8", user_command::generictoggle8}, - {"generictoggle9", user_command::generictoggle9}, - {"batterytoggle", user_command::batterytoggle}, - {"batteryenable", user_command::batteryenable}, - {"batterydisable", user_command::batterydisable}, - {"cabactivationtoggle", user_command::cabactivationtoggle}, - {"cabactivationenable", user_command::cabactivationenable}, - {"cabactivationdisable", user_command::cabactivationdisable}, - {"motorblowerstogglefront", user_command::motorblowerstogglefront}, - {"motorblowerstogglerear", user_command::motorblowerstogglerear}, - {"motorblowersdisableall", user_command::motorblowersdisableall}, - {"coolingfanstoggle", user_command::coolingfanstoggle}, - {"tempomattoggle", user_command::tempomattoggle}, - {"springbraketoggle", user_command::springbraketoggle}, - {"springbrakeenable", user_command::springbrakeenable}, - {"springbrakedisable", user_command::springbrakedisable}, - {"springbrakeshutofftoggle", user_command::springbrakeshutofftoggle}, - {"springbrakeshutoffenable", user_command::springbrakeshutoffenable}, - {"springbrakeshutoffdisable", user_command::springbrakeshutoffdisable}, - {"springbrakerelease", user_command::springbrakerelease}, - {"distancecounteractivate", user_command::distancecounteractivate}, - {"speedcontrolincrease", user_command::speedcontrolincrease}, - {"speedcontroldecrease", user_command::speedcontroldecrease}, - {"speedcontrolpowerincrease", user_command::speedcontrolpowerincrease}, - {"speedcontrolpowerdecrease", user_command::speedcontrolpowerdecrease}, - {"speedcontrolbutton0", user_command::speedcontrolbutton0}, - {"speedcontrolbutton1", user_command::speedcontrolbutton1}, - {"speedcontrolbutton2", user_command::speedcontrolbutton2}, - {"speedcontrolbutton3", user_command::speedcontrolbutton3}, - {"speedcontrolbutton4", user_command::speedcontrolbutton4}, - {"speedcontrolbutton5", user_command::speedcontrolbutton5}, - {"speedcontrolbutton6", user_command::speedcontrolbutton6}, - {"speedcontrolbutton7", user_command::speedcontrolbutton7}, - {"speedcontrolbutton8", user_command::speedcontrolbutton8}, - {"speedcontrolbutton9", user_command::speedcontrolbutton9}, - {"inverterenable1", user_command::inverterenable1}, - {"inverterenable2", user_command::inverterenable2}, - {"inverterenable3", user_command::inverterenable3}, - {"inverterenable4", user_command::inverterenable4}, - {"inverterenable5", user_command::inverterenable5}, - {"inverterenable6", user_command::inverterenable6}, - {"inverterenable7", user_command::inverterenable7}, - {"inverterenable8", user_command::inverterenable8}, - {"inverterenable9", user_command::inverterenable9}, - {"inverterenable10", user_command::inverterenable10}, - {"inverterenable11", user_command::inverterenable11}, - {"inverterenable12", user_command::inverterenable12}, - {"inverterdisable1", user_command::inverterdisable1}, - {"inverterdisable2", user_command::inverterdisable2}, - {"inverterdisable3", user_command::inverterdisable3}, - {"inverterdisable4", user_command::inverterdisable4}, - {"inverterdisable5", user_command::inverterdisable5}, - {"inverterdisable6", user_command::inverterdisable6}, - {"inverterdisable7", user_command::inverterdisable7}, - {"inverterdisable8", user_command::inverterdisable8}, - {"inverterdisable9", user_command::inverterdisable9}, - {"inverterdisable10", user_command::inverterdisable10}, - {"inverterdisable11", user_command::inverterdisable11}, - {"inverterdisable12", user_command::inverterdisable12}, - {"invertertoggle1", user_command::invertertoggle1}, - {"invertertoggle2", user_command::invertertoggle2}, - {"invertertoggle3", user_command::invertertoggle3}, - {"invertertoggle4", user_command::invertertoggle4}, - {"invertertoggle5", user_command::invertertoggle5}, - {"invertertoggle6", user_command::invertertoggle6}, - {"invertertoggle7", user_command::invertertoggle7}, - {"invertertoggle8", user_command::invertertoggle8}, - {"invertertoggle9", user_command::invertertoggle9}, - {"invertertoggle10", user_command::invertertoggle10}, - {"invertertoggle11", user_command::invertertoggle11}, - {"invertertoggle12", user_command::invertertoggle12}, - {"globalradiostop", user_command::globalradiostop}, - {"timejump", user_command::timejump}, - {"timejumplarge", user_command::timejumplarge}, - {"timejumpsmall", user_command::timejumpsmall}, - {"setdatetime", user_command::setdatetime}, - {"setweather", user_command::setweather}, - {"settemperature", user_command::settemperature}, - {"vehiclemoveforwards", user_command::vehiclemoveforwards}, - {"vehiclemovebackwards", user_command::vehiclemovebackwards}, - {"vehicleboost", user_command::vehicleboost}, - {"debugtoggle", user_command::debugtoggle}, - {"focuspauseset", user_command::focuspauseset}, - {"pausetoggle", user_command::pausetoggle}, - {"entervehicle", user_command::entervehicle}, - {"resetconsist", user_command::resetconsist}, - {"fillcompressor", user_command::fillcompressor}, - {"consistreleaser", user_command::consistreleaser}, - {"queueevent", user_command::queueevent}, - {"setlight", user_command::setlight}, - {"insertmodel", user_command::insertmodel}, - {"deletemodel", user_command::deletemodel}, - {"dynamicmove", user_command::dynamicmove}, - {"consistteleport", user_command::consistteleport}, - {"pullalarmchain", user_command::pullalarmchain}, - {"sendaicommand", user_command::sendaicommand}, - {"spawntrainset", user_command::spawntrainset}, - {"destroytrainset", user_command::destroytrainset}, - {"quitsimulation", user_command::quitsimulation}, - {"wiperswitchincrease", user_command::wiperswitchincrease}, - {"wiperswitchdecrease", user_command::wiperswitchdecrease}, - {"none", user_command::none}}; +std::unordered_map commandMap = {{"aidriverdisable", user_command::aidriverdisable}, + {"jointcontrollerset", user_command::jointcontrollerset}, + {"mastercontrollerincrease", user_command::mastercontrollerincrease}, + {"mastercontrollerincreasefast", user_command::mastercontrollerincreasefast}, + {"mastercontrollerdecrease", user_command::mastercontrollerdecrease}, + {"mastercontrollerdecreasefast", user_command::mastercontrollerdecreasefast}, + {"mastercontrollerset", user_command::mastercontrollerset}, + {"secondcontrollerincrease", user_command::secondcontrollerincrease}, + {"secondcontrollerincreasefast", user_command::secondcontrollerincreasefast}, + {"secondcontrollerdecrease", user_command::secondcontrollerdecrease}, + {"secondcontrollerdecreasefast", user_command::secondcontrollerdecreasefast}, + {"secondcontrollerset", user_command::secondcontrollerset}, + {"mucurrentindicatorothersourceactivate", user_command::mucurrentindicatorothersourceactivate}, + {"independentbrakeincrease", user_command::independentbrakeincrease}, + {"independentbrakeincreasefast", user_command::independentbrakeincreasefast}, + {"independentbrakedecrease", user_command::independentbrakedecrease}, + {"independentbrakedecreasefast", user_command::independentbrakedecreasefast}, + {"independentbrakeset", user_command::independentbrakeset}, + {"independentbrakebailoff", user_command::independentbrakebailoff}, + {"universalbrakebutton1", user_command::universalbrakebutton1}, + {"universalbrakebutton2", user_command::universalbrakebutton2}, + {"universalbrakebutton3", user_command::universalbrakebutton3}, + {"trainbrakeincrease", user_command::trainbrakeincrease}, + {"trainbrakedecrease", user_command::trainbrakedecrease}, + {"trainbrakeset", user_command::trainbrakeset}, + {"trainbrakecharging", user_command::trainbrakecharging}, + {"trainbrakerelease", user_command::trainbrakerelease}, + {"trainbrakefirstservice", user_command::trainbrakefirstservice}, + {"trainbrakeservice", user_command::trainbrakeservice}, + {"trainbrakefullservice", user_command::trainbrakefullservice}, + {"trainbrakehandleoff", user_command::trainbrakehandleoff}, + {"trainbrakeemergency", user_command::trainbrakeemergency}, + {"trainbrakebasepressureincrease", user_command::trainbrakebasepressureincrease}, + {"trainbrakebasepressuredecrease", user_command::trainbrakebasepressuredecrease}, + {"trainbrakebasepressurereset", user_command::trainbrakebasepressurereset}, + {"trainbrakeoperationtoggle", user_command::trainbrakeoperationtoggle}, + {"manualbrakeincrease", user_command::manualbrakeincrease}, + {"manualbrakedecrease", user_command::manualbrakedecrease}, + {"alarmchaintoggle", user_command::alarmchaintoggle}, + {"alarmchainenable", user_command::alarmchainenable}, + {"alarmchaindisable", user_command::alarmchaindisable}, + {"wheelspinbrakeactivate", user_command::wheelspinbrakeactivate}, + {"sandboxactivate", user_command::sandboxactivate}, + {"autosandboxtoggle", user_command::autosandboxtoggle}, + {"autosandboxactivate", user_command::autosandboxactivate}, + {"autosandboxdeactivate", user_command::autosandboxdeactivate}, + {"reverserincrease", user_command::reverserincrease}, + {"reverserdecrease", user_command::reverserdecrease}, + {"reverserforwardhigh", user_command::reverserforwardhigh}, + {"reverserforward", user_command::reverserforward}, + {"reverserneutral", user_command::reverserneutral}, + {"reverserbackward", user_command::reverserbackward}, + {"waterpumpbreakertoggle", user_command::waterpumpbreakertoggle}, + {"waterpumpbreakerclose", user_command::waterpumpbreakerclose}, + {"waterpumpbreakeropen", user_command::waterpumpbreakeropen}, + {"waterpumptoggle", user_command::waterpumptoggle}, + {"waterpumpenable", user_command::waterpumpenable}, + {"waterpumpdisable", user_command::waterpumpdisable}, + {"waterheaterbreakertoggle", user_command::waterheaterbreakertoggle}, + {"waterheaterbreakerclose", user_command::waterheaterbreakerclose}, + {"waterheaterbreakeropen", user_command::waterheaterbreakeropen}, + {"waterheatertoggle", user_command::waterheatertoggle}, + {"waterheaterenable", user_command::waterheaterenable}, + {"waterheaterdisable", user_command::waterheaterdisable}, + {"watercircuitslinktoggle", user_command::watercircuitslinktoggle}, + {"watercircuitslinkenable", user_command::watercircuitslinkenable}, + {"watercircuitslinkdisable", user_command::watercircuitslinkdisable}, + {"fuelpumptoggle", user_command::fuelpumptoggle}, + {"fuelpumpenable", user_command::fuelpumpenable}, + {"fuelpumpdisable", user_command::fuelpumpdisable}, + {"oilpumptoggle", user_command::oilpumptoggle}, + {"oilpumpenable", user_command::oilpumpenable}, + {"oilpumpdisable", user_command::oilpumpdisable}, + {"linebreakertoggle", user_command::linebreakertoggle}, + {"linebreakeropen", user_command::linebreakeropen}, + {"linebreakerclose", user_command::linebreakerclose}, + {"convertertoggle", user_command::convertertoggle}, + {"converterenable", user_command::converterenable}, + {"converterdisable", user_command::converterdisable}, + {"convertertogglelocal", user_command::convertertogglelocal}, + {"converteroverloadrelayreset", user_command::converteroverloadrelayreset}, + {"compressortoggle", user_command::compressortoggle}, + {"compressorenable", user_command::compressorenable}, + {"compressordisable", user_command::compressordisable}, + {"compressortogglelocal", user_command::compressortogglelocal}, + {"compressorpresetactivatenext", user_command::compressorpresetactivatenext}, + {"compressorpresetactivateprevious", user_command::compressorpresetactivateprevious}, + {"compressorpresetactivatedefault", user_command::compressorpresetactivatedefault}, + {"motoroverloadrelaythresholdtoggle", user_command::motoroverloadrelaythresholdtoggle}, + {"motoroverloadrelaythresholdsetlow", user_command::motoroverloadrelaythresholdsetlow}, + {"motoroverloadrelaythresholdsethigh", user_command::motoroverloadrelaythresholdsethigh}, + {"motoroverloadrelayreset", user_command::motoroverloadrelayreset}, + {"universalrelayreset1", user_command::universalrelayreset1}, + {"universalrelayreset2", user_command::universalrelayreset2}, + {"universalrelayreset3", user_command::universalrelayreset3}, + {"notchingrelaytoggle", user_command::notchingrelaytoggle}, + {"epbrakecontroltoggle", user_command::epbrakecontroltoggle}, + {"epbrakecontrolenable", user_command::epbrakecontrolenable}, + {"epbrakecontroldisable", user_command::epbrakecontroldisable}, + {"trainbrakeoperationmodeincrease", user_command::trainbrakeoperationmodeincrease}, + {"trainbrakeoperationmodedecrease", user_command::trainbrakeoperationmodedecrease}, + {"brakeactingspeedincrease", user_command::brakeactingspeedincrease}, + {"brakeactingspeeddecrease", user_command::brakeactingspeeddecrease}, + {"brakeactingspeedsetcargo", user_command::brakeactingspeedsetcargo}, + {"brakeactingspeedsetpassenger", user_command::brakeactingspeedsetpassenger}, + {"brakeactingspeedsetrapid", user_command::brakeactingspeedsetrapid}, + {"brakeloadcompensationincrease", user_command::brakeloadcompensationincrease}, + {"brakeloadcompensationdecrease", user_command::brakeloadcompensationdecrease}, + {"mubrakingindicatortoggle", user_command::mubrakingindicatortoggle}, + {"alerteracknowledge", user_command::alerteracknowledge}, + {"cabsignalacknowledge", user_command::cabsignalacknowledge}, + {"hornlowactivate", user_command::hornlowactivate}, + {"hornhighactivate", user_command::hornhighactivate}, + {"whistleactivate", user_command::whistleactivate}, + {"radiotoggle", user_command::radiotoggle}, + {"radioenable", user_command::radioenable}, + {"radiodisable", user_command::radiodisable}, + {"radiochannelincrease", user_command::radiochannelincrease}, + {"radiochanneldecrease", user_command::radiochanneldecrease}, + {"radiochannelset", user_command::radiochannelset}, + {"radiostopsend", user_command::radiostopsend}, + {"radiostopenable", user_command::radiostopenable}, + {"radiostopdisable", user_command::radiostopdisable}, + {"radiostoptest", user_command::radiostoptest}, + {"radiocall3send", user_command::radiocall3send}, + {"radiovolumeincrease", user_command::radiovolumeincrease}, + {"radiovolumedecrease", user_command::radiovolumedecrease}, + {"radiovolumeset", user_command::radiovolumeset}, + {"cabchangeforward", user_command::cabchangeforward}, + {"cabchangebackward", user_command::cabchangebackward}, + {"viewturn", user_command::viewturn}, + {"movehorizontal", user_command::movehorizontal}, + {"movehorizontalfast", user_command::movehorizontalfast}, + {"movevertical", user_command::movevertical}, + {"moveverticalfast", user_command::moveverticalfast}, + {"moveleft", user_command::moveleft}, + {"moveright", user_command::moveright}, + {"moveforward", user_command::moveforward}, + {"moveback", user_command::moveback}, + {"moveup", user_command::moveup}, + {"movedown", user_command::movedown}, + {"nearestcarcouplingincrease", user_command::nearestcarcouplingincrease}, + {"nearestcarcouplingdisconnect", user_command::nearestcarcouplingdisconnect}, + {"nearestcarcoupleradapterattach", user_command::nearestcarcoupleradapterattach}, + {"nearestcarcoupleradapterremove", user_command::nearestcarcoupleradapterremove}, + {"occupiedcarcouplingdisconnect", user_command::occupiedcarcouplingdisconnect}, + {"occupiedcarcouplingdisconnectback", user_command::occupiedcarcouplingdisconnectback}, + {"doortoggleleft", user_command::doortoggleleft}, + {"doortoggleright", user_command::doortoggleright}, + {"doorpermitleft", user_command::doorpermitleft}, + {"doorpermitright", user_command::doorpermitright}, + {"doorpermitpresetactivatenext", user_command::doorpermitpresetactivatenext}, + {"doorpermitpresetactivateprevious", user_command::doorpermitpresetactivateprevious}, + {"dooropenleft", user_command::dooropenleft}, + {"dooropenright", user_command::dooropenright}, + {"dooropenall", user_command::dooropenall}, + {"doorcloseleft", user_command::doorcloseleft}, + {"doorcloseright", user_command::doorcloseright}, + {"doorcloseall", user_command::doorcloseall}, + {"doorsteptoggle", user_command::doorsteptoggle}, + {"doormodetoggle", user_command::doormodetoggle}, + {"mirrorstoggle", user_command::mirrorstoggle}, + {"departureannounce", user_command::departureannounce}, + {"doorlocktoggle", user_command::doorlocktoggle}, + {"pantographcompressorvalvetoggle", user_command::pantographcompressorvalvetoggle}, + {"pantographcompressorvalveenable", user_command::pantographcompressorvalveenable}, + {"pantographcompressorvalvedisable", user_command::pantographcompressorvalvedisable}, + {"pantographcompressoractivate", user_command::pantographcompressoractivate}, + {"pantographtogglefront", user_command::pantographtogglefront}, + {"pantographtogglerear", user_command::pantographtogglerear}, + {"pantographraisefront", user_command::pantographraisefront}, + {"pantographraiserear", user_command::pantographraiserear}, + {"pantographlowerfront", user_command::pantographlowerfront}, + {"pantographlowerrear", user_command::pantographlowerrear}, + {"pantographlowerall", user_command::pantographlowerall}, + {"pantographselectnext", user_command::pantographselectnext}, + {"pantographselectprevious", user_command::pantographselectprevious}, + {"pantographtoggleselected", user_command::pantographtoggleselected}, + {"pantographraiseselected", user_command::pantographraiseselected}, + {"pantographlowerselected", user_command::pantographlowerselected}, + {"pantographvalvesupdate", user_command::pantographvalvesupdate}, + {"pantographvalvesoff", user_command::pantographvalvesoff}, + {"heatingtoggle", user_command::heatingtoggle}, + {"heatingenable", user_command::heatingenable}, + {"heatingdisable", user_command::heatingdisable}, + {"lightspresetactivatenext", user_command::lightspresetactivatenext}, + {"lightspresetactivateprevious", user_command::lightspresetactivateprevious}, + {"headlighttoggleleft", user_command::headlighttoggleleft}, + {"headlightenableleft", user_command::headlightenableleft}, + {"headlightdisableleft", user_command::headlightdisableleft}, + {"headlighttoggleright", user_command::headlighttoggleright}, + {"headlightenableright", user_command::headlightenableright}, + {"headlightdisableright", user_command::headlightdisableright}, + {"headlighttoggleupper", user_command::headlighttoggleupper}, + {"headlightenableupper", user_command::headlightenableupper}, + {"headlightdisableupper", user_command::headlightdisableupper}, + {"redmarkertoggleleft", user_command::redmarkertoggleleft}, + {"redmarkerenableleft", user_command::redmarkerenableleft}, + {"redmarkerdisableleft", user_command::redmarkerdisableleft}, + {"redmarkertoggleright", user_command::redmarkertoggleright}, + {"redmarkerenableright", user_command::redmarkerenableright}, + {"redmarkerdisableright", user_command::redmarkerdisableright}, + {"headlighttogglerearleft", user_command::headlighttogglerearleft}, + {"headlightenablerearleft", user_command::headlightenablerearleft}, + {"headlightdisablerearleft", user_command::headlightdisablerearleft}, + {"headlighttogglerearright", user_command::headlighttogglerearright}, + {"headlightenablerearright", user_command::headlightenablerearright}, + {"headlightdisablerearright", user_command::headlightdisablerearright}, + {"headlighttogglerearupper", user_command::headlighttogglerearupper}, + {"headlightenablerearupper", user_command::headlightenablerearupper}, + {"headlightdisablerearupper", user_command::headlightdisablerearupper}, + {"redmarkertogglerearleft", user_command::redmarkertogglerearleft}, + {"redmarkerenablerearleft", user_command::redmarkerenablerearleft}, + {"redmarkerdisablerearleft", user_command::redmarkerdisablerearleft}, + {"redmarkertogglerearright", user_command::redmarkertogglerearright}, + {"redmarkerenablerearright", user_command::redmarkerenablerearright}, + {"redmarkerdisablerearright", user_command::redmarkerdisablerearright}, + {"redmarkerstoggle", user_command::redmarkerstoggle}, + {"endsignalstoggle", user_command::endsignalstoggle}, + {"headlightsdimtoggle", user_command::headlightsdimtoggle}, + {"headlightsdimenable", user_command::headlightsdimenable}, + {"headlightsdimdisable", user_command::headlightsdimdisable}, + {"motorconnectorsopen", user_command::motorconnectorsopen}, + {"motorconnectorsclose", user_command::motorconnectorsclose}, + {"motordisconnect", user_command::motordisconnect}, + {"interiorlighttoggle", user_command::interiorlighttoggle}, + {"interiorlightenable", user_command::interiorlightenable}, + {"interiorlightdisable", user_command::interiorlightdisable}, + {"interiorlightdimtoggle", user_command::interiorlightdimtoggle}, + {"interiorlightdimenable", user_command::interiorlightdimenable}, + {"interiorlightdimdisable", user_command::interiorlightdimdisable}, + {"compartmentlightstoggle", user_command::compartmentlightstoggle}, + {"compartmentlightsenable", user_command::compartmentlightsenable}, + {"compartmentlightsdisable", user_command::compartmentlightsdisable}, + {"instrumentlighttoggle", user_command::instrumentlighttoggle}, + {"instrumentlightenable", user_command::instrumentlightenable}, + {"instrumentlightdisable", user_command::instrumentlightdisable}, + {"dashboardlighttoggle", user_command::dashboardlighttoggle}, + {"dashboardlightenable", user_command::dashboardlightenable}, + {"dashboardlightdisable", user_command::dashboardlightdisable}, + {"timetablelighttoggle", user_command::timetablelighttoggle}, + {"timetablelightenable", user_command::timetablelightenable}, + {"timetablelightdisable", user_command::timetablelightdisable}, + {"generictoggle0", user_command::generictoggle0}, + {"generictoggle1", user_command::generictoggle1}, + {"generictoggle2", user_command::generictoggle2}, + {"generictoggle3", user_command::generictoggle3}, + {"generictoggle4", user_command::generictoggle4}, + {"generictoggle5", user_command::generictoggle5}, + {"generictoggle6", user_command::generictoggle6}, + {"generictoggle7", user_command::generictoggle7}, + {"generictoggle8", user_command::generictoggle8}, + {"generictoggle9", user_command::generictoggle9}, + {"batterytoggle", user_command::batterytoggle}, + {"batteryenable", user_command::batteryenable}, + {"batterydisable", user_command::batterydisable}, + {"cabactivationtoggle", user_command::cabactivationtoggle}, + {"cabactivationenable", user_command::cabactivationenable}, + {"cabactivationdisable", user_command::cabactivationdisable}, + {"motorblowerstogglefront", user_command::motorblowerstogglefront}, + {"motorblowerstogglerear", user_command::motorblowerstogglerear}, + {"motorblowersdisableall", user_command::motorblowersdisableall}, + {"coolingfanstoggle", user_command::coolingfanstoggle}, + {"tempomattoggle", user_command::tempomattoggle}, + {"springbraketoggle", user_command::springbraketoggle}, + {"springbrakeenable", user_command::springbrakeenable}, + {"springbrakedisable", user_command::springbrakedisable}, + {"springbrakeshutofftoggle", user_command::springbrakeshutofftoggle}, + {"springbrakeshutoffenable", user_command::springbrakeshutoffenable}, + {"springbrakeshutoffdisable", user_command::springbrakeshutoffdisable}, + {"springbrakerelease", user_command::springbrakerelease}, + {"distancecounteractivate", user_command::distancecounteractivate}, + {"speedcontrolincrease", user_command::speedcontrolincrease}, + {"speedcontroldecrease", user_command::speedcontroldecrease}, + {"speedcontrolpowerincrease", user_command::speedcontrolpowerincrease}, + {"speedcontrolpowerdecrease", user_command::speedcontrolpowerdecrease}, + {"speedcontrolbutton0", user_command::speedcontrolbutton0}, + {"speedcontrolbutton1", user_command::speedcontrolbutton1}, + {"speedcontrolbutton2", user_command::speedcontrolbutton2}, + {"speedcontrolbutton3", user_command::speedcontrolbutton3}, + {"speedcontrolbutton4", user_command::speedcontrolbutton4}, + {"speedcontrolbutton5", user_command::speedcontrolbutton5}, + {"speedcontrolbutton6", user_command::speedcontrolbutton6}, + {"speedcontrolbutton7", user_command::speedcontrolbutton7}, + {"speedcontrolbutton8", user_command::speedcontrolbutton8}, + {"speedcontrolbutton9", user_command::speedcontrolbutton9}, + {"inverterenable1", user_command::inverterenable1}, + {"inverterenable2", user_command::inverterenable2}, + {"inverterenable3", user_command::inverterenable3}, + {"inverterenable4", user_command::inverterenable4}, + {"inverterenable5", user_command::inverterenable5}, + {"inverterenable6", user_command::inverterenable6}, + {"inverterenable7", user_command::inverterenable7}, + {"inverterenable8", user_command::inverterenable8}, + {"inverterenable9", user_command::inverterenable9}, + {"inverterenable10", user_command::inverterenable10}, + {"inverterenable11", user_command::inverterenable11}, + {"inverterenable12", user_command::inverterenable12}, + {"inverterdisable1", user_command::inverterdisable1}, + {"inverterdisable2", user_command::inverterdisable2}, + {"inverterdisable3", user_command::inverterdisable3}, + {"inverterdisable4", user_command::inverterdisable4}, + {"inverterdisable5", user_command::inverterdisable5}, + {"inverterdisable6", user_command::inverterdisable6}, + {"inverterdisable7", user_command::inverterdisable7}, + {"inverterdisable8", user_command::inverterdisable8}, + {"inverterdisable9", user_command::inverterdisable9}, + {"inverterdisable10", user_command::inverterdisable10}, + {"inverterdisable11", user_command::inverterdisable11}, + {"inverterdisable12", user_command::inverterdisable12}, + {"invertertoggle1", user_command::invertertoggle1}, + {"invertertoggle2", user_command::invertertoggle2}, + {"invertertoggle3", user_command::invertertoggle3}, + {"invertertoggle4", user_command::invertertoggle4}, + {"invertertoggle5", user_command::invertertoggle5}, + {"invertertoggle6", user_command::invertertoggle6}, + {"invertertoggle7", user_command::invertertoggle7}, + {"invertertoggle8", user_command::invertertoggle8}, + {"invertertoggle9", user_command::invertertoggle9}, + {"invertertoggle10", user_command::invertertoggle10}, + {"invertertoggle11", user_command::invertertoggle11}, + {"invertertoggle12", user_command::invertertoggle12}, + {"globalradiostop", user_command::globalradiostop}, + {"timejump", user_command::timejump}, + {"timejumplarge", user_command::timejumplarge}, + {"timejumpsmall", user_command::timejumpsmall}, + {"setdatetime", user_command::setdatetime}, + {"setweather", user_command::setweather}, + {"settemperature", user_command::settemperature}, + {"vehiclemoveforwards", user_command::vehiclemoveforwards}, + {"vehiclemovebackwards", user_command::vehiclemovebackwards}, + {"vehicleboost", user_command::vehicleboost}, + {"debugtoggle", user_command::debugtoggle}, + {"focuspauseset", user_command::focuspauseset}, + {"pausetoggle", user_command::pausetoggle}, + {"entervehicle", user_command::entervehicle}, + {"resetconsist", user_command::resetconsist}, + {"fillcompressor", user_command::fillcompressor}, + {"consistreleaser", user_command::consistreleaser}, + {"queueevent", user_command::queueevent}, + {"setlight", user_command::setlight}, + {"insertmodel", user_command::insertmodel}, + {"deletemodel", user_command::deletemodel}, + {"dynamicmove", user_command::dynamicmove}, + {"consistteleport", user_command::consistteleport}, + {"pullalarmchain", user_command::pullalarmchain}, + {"sendaicommand", user_command::sendaicommand}, + {"spawntrainset", user_command::spawntrainset}, + {"destroytrainset", user_command::destroytrainset}, + {"quitsimulation", user_command::quitsimulation}, + {"wiperswitchincrease", user_command::wiperswitchincrease}, + {"wiperswitchdecrease", user_command::wiperswitchdecrease}, + {"none", user_command::none}}; -} // simulation +} // namespace simulation void command_queue::update() { diff --git a/command.h b/command.h index 6685acdc..3cd6aea9 100644 --- a/command.h +++ b/command.h @@ -13,278 +13,279 @@ http://mozilla.org/MPL/2.0/. #include #include -enum class user_command { +enum class user_command +{ aidriverenable = 0, - aidriverdisable, - jointcontrollerset, - mastercontrollerincrease, - mastercontrollerincreasefast, - mastercontrollerdecrease, - mastercontrollerdecreasefast, - mastercontrollerset, - secondcontrollerincrease, - secondcontrollerincreasefast, - secondcontrollerdecrease, - secondcontrollerdecreasefast, - secondcontrollerset, - mucurrentindicatorothersourceactivate, - independentbrakeincrease, - independentbrakeincreasefast, - independentbrakedecrease, - independentbrakedecreasefast, - independentbrakeset, - independentbrakebailoff, + aidriverdisable, + jointcontrollerset, + mastercontrollerincrease, + mastercontrollerincreasefast, + mastercontrollerdecrease, + mastercontrollerdecreasefast, + mastercontrollerset, + secondcontrollerincrease, + secondcontrollerincreasefast, + secondcontrollerdecrease, + secondcontrollerdecreasefast, + secondcontrollerset, + mucurrentindicatorothersourceactivate, + independentbrakeincrease, + independentbrakeincreasefast, + independentbrakedecrease, + independentbrakedecreasefast, + independentbrakeset, + independentbrakebailoff, universalbrakebutton1, universalbrakebutton2, universalbrakebutton3, - trainbrakeincrease, - trainbrakedecrease, - trainbrakeset, - trainbrakecharging, - trainbrakerelease, - trainbrakefirstservice, - trainbrakeservice, - trainbrakefullservice, - trainbrakehandleoff, - trainbrakeemergency, - trainbrakebasepressureincrease, - trainbrakebasepressuredecrease, - trainbrakebasepressurereset, - trainbrakeoperationtoggle, - manualbrakeincrease, - manualbrakedecrease, - alarmchaintoggle, + trainbrakeincrease, + trainbrakedecrease, + trainbrakeset, + trainbrakecharging, + trainbrakerelease, + trainbrakefirstservice, + trainbrakeservice, + trainbrakefullservice, + trainbrakehandleoff, + trainbrakeemergency, + trainbrakebasepressureincrease, + trainbrakebasepressuredecrease, + trainbrakebasepressurereset, + trainbrakeoperationtoggle, + manualbrakeincrease, + manualbrakedecrease, + alarmchaintoggle, alarmchainenable, alarmchaindisable, - wheelspinbrakeactivate, - sandboxactivate, + wheelspinbrakeactivate, + sandboxactivate, autosandboxtoggle, autosandboxactivate, autosandboxdeactivate, - reverserincrease, - reverserdecrease, - reverserforwardhigh, - reverserforward, - reverserneutral, - reverserbackward, - waterpumpbreakertoggle, - waterpumpbreakerclose, - waterpumpbreakeropen, - waterpumptoggle, - waterpumpenable, - waterpumpdisable, - waterheaterbreakertoggle, - waterheaterbreakerclose, - waterheaterbreakeropen, - waterheatertoggle, - waterheaterenable, - waterheaterdisable, - watercircuitslinktoggle, - watercircuitslinkenable, - watercircuitslinkdisable, - fuelpumptoggle, - fuelpumpenable, - fuelpumpdisable, - oilpumptoggle, - oilpumpenable, - oilpumpdisable, - linebreakertoggle, - linebreakeropen, - linebreakerclose, - convertertoggle, - converterenable, - converterdisable, - convertertogglelocal, - converteroverloadrelayreset, - compressortoggle, - compressorenable, - compressordisable, - compressortogglelocal, + reverserincrease, + reverserdecrease, + reverserforwardhigh, + reverserforward, + reverserneutral, + reverserbackward, + waterpumpbreakertoggle, + waterpumpbreakerclose, + waterpumpbreakeropen, + waterpumptoggle, + waterpumpenable, + waterpumpdisable, + waterheaterbreakertoggle, + waterheaterbreakerclose, + waterheaterbreakeropen, + waterheatertoggle, + waterheaterenable, + waterheaterdisable, + watercircuitslinktoggle, + watercircuitslinkenable, + watercircuitslinkdisable, + fuelpumptoggle, + fuelpumpenable, + fuelpumpdisable, + oilpumptoggle, + oilpumpenable, + oilpumpdisable, + linebreakertoggle, + linebreakeropen, + linebreakerclose, + convertertoggle, + converterenable, + converterdisable, + convertertogglelocal, + converteroverloadrelayreset, + compressortoggle, + compressorenable, + compressordisable, + compressortogglelocal, compressorpresetactivatenext, compressorpresetactivateprevious, compressorpresetactivatedefault, - motoroverloadrelaythresholdtoggle, - motoroverloadrelaythresholdsetlow, - motoroverloadrelaythresholdsethigh, - motoroverloadrelayreset, - universalrelayreset1, - universalrelayreset2, - universalrelayreset3, - notchingrelaytoggle, - epbrakecontroltoggle, + motoroverloadrelaythresholdtoggle, + motoroverloadrelaythresholdsetlow, + motoroverloadrelaythresholdsethigh, + motoroverloadrelayreset, + universalrelayreset1, + universalrelayreset2, + universalrelayreset3, + notchingrelaytoggle, + epbrakecontroltoggle, epbrakecontrolenable, epbrakecontroldisable, trainbrakeoperationmodeincrease, trainbrakeoperationmodedecrease, - brakeactingspeedincrease, - brakeactingspeeddecrease, - brakeactingspeedsetcargo, - brakeactingspeedsetpassenger, - brakeactingspeedsetrapid, - brakeloadcompensationincrease, - brakeloadcompensationdecrease, - mubrakingindicatortoggle, - alerteracknowledge, + brakeactingspeedincrease, + brakeactingspeeddecrease, + brakeactingspeedsetcargo, + brakeactingspeedsetpassenger, + brakeactingspeedsetrapid, + brakeloadcompensationincrease, + brakeloadcompensationdecrease, + mubrakingindicatortoggle, + alerteracknowledge, cabsignalacknowledge, - hornlowactivate, - hornhighactivate, - whistleactivate, - radiotoggle, - radioenable, - radiodisable, - radiochannelincrease, - radiochanneldecrease, - radiochannelset, - radiostopsend, - radiostopenable, - radiostopdisable, - radiostoptest, - radiocall3send, + hornlowactivate, + hornhighactivate, + whistleactivate, + radiotoggle, + radioenable, + radiodisable, + radiochannelincrease, + radiochanneldecrease, + radiochannelset, + radiostopsend, + radiostopenable, + radiostopdisable, + radiostoptest, + radiocall3send, radiovolumeincrease, radiovolumedecrease, radiovolumeset, - cabchangeforward, - cabchangebackward, + cabchangeforward, + cabchangebackward, modernlightdimmerdecrease, modernlightdimmerincrease, - viewturn, - movehorizontal, - movehorizontalfast, - movevertical, - moveverticalfast, - moveleft, - moveright, - moveforward, - moveback, - moveup, - movedown, + viewturn, + movehorizontal, + movehorizontalfast, + movevertical, + moveverticalfast, + moveleft, + moveright, + moveforward, + moveback, + moveup, + movedown, - nearestcarcouplingincrease, - nearestcarcouplingdisconnect, - nearestcarcoupleradapterattach, - nearestcarcoupleradapterremove, - occupiedcarcouplingdisconnect, + nearestcarcouplingincrease, + nearestcarcouplingdisconnect, + nearestcarcoupleradapterattach, + nearestcarcoupleradapterremove, + occupiedcarcouplingdisconnect, occupiedcarcouplingdisconnectback, - doortoggleleft, - doortoggleright, - doorpermitleft, - doorpermitright, - doorpermitpresetactivatenext, - doorpermitpresetactivateprevious, - dooropenleft, - dooropenright, - dooropenall, - doorcloseleft, - doorcloseright, - doorcloseall, - doorsteptoggle, - doormodetoggle, + doortoggleleft, + doortoggleright, + doorpermitleft, + doorpermitright, + doorpermitpresetactivatenext, + doorpermitpresetactivateprevious, + dooropenleft, + dooropenright, + dooropenall, + doorcloseleft, + doorcloseright, + doorcloseall, + doorsteptoggle, + doormodetoggle, mirrorstoggle, - departureannounce, - doorlocktoggle, - pantographcompressorvalvetoggle, - pantographcompressorvalveenable, - pantographcompressorvalvedisable, - pantographcompressoractivate, - pantographtogglefront, - pantographtogglerear, - pantographraisefront, - pantographraiserear, - pantographlowerfront, - pantographlowerrear, - pantographlowerall, - pantographselectnext, - pantographselectprevious, - pantographtoggleselected, - pantographraiseselected, - pantographlowerselected, - pantographvalvesupdate, - pantographvalvesoff, - heatingtoggle, - heatingenable, - heatingdisable, - lightspresetactivatenext, - lightspresetactivateprevious, - headlighttoggleleft, - headlightenableleft, - headlightdisableleft, - headlighttoggleright, - headlightenableright, - headlightdisableright, - headlighttoggleupper, - headlightenableupper, - headlightdisableupper, - redmarkertoggleleft, - redmarkerenableleft, - redmarkerdisableleft, - redmarkertoggleright, - redmarkerenableright, - redmarkerdisableright, - headlighttogglerearleft, - headlightenablerearleft, - headlightdisablerearleft, - headlighttogglerearright, - headlightenablerearright, - headlightdisablerearright, - headlighttogglerearupper, - headlightenablerearupper, - headlightdisablerearupper, - redmarkertogglerearleft, - redmarkerenablerearleft, - redmarkerdisablerearleft, - redmarkertogglerearright, - redmarkerenablerearright, - redmarkerdisablerearright, - redmarkerstoggle, - endsignalstoggle, - headlightsdimtoggle, - headlightsdimenable, - headlightsdimdisable, - motorconnectorsopen, - motorconnectorsclose, - motordisconnect, - interiorlighttoggle, - interiorlightenable, - interiorlightdisable, - interiorlightdimtoggle, - interiorlightdimenable, - interiorlightdimdisable, - compartmentlightstoggle, - compartmentlightsenable, - compartmentlightsdisable, - instrumentlighttoggle, - instrumentlightenable, - instrumentlightdisable, - dashboardlighttoggle, - dashboardlightenable, - dashboardlightdisable, - timetablelighttoggle, - timetablelightenable, - timetablelightdisable, - generictoggle0, - generictoggle1, - generictoggle2, - generictoggle3, - generictoggle4, - generictoggle5, - generictoggle6, - generictoggle7, - generictoggle8, - generictoggle9, - batterytoggle, - batteryenable, - batterydisable, + departureannounce, + doorlocktoggle, + pantographcompressorvalvetoggle, + pantographcompressorvalveenable, + pantographcompressorvalvedisable, + pantographcompressoractivate, + pantographtogglefront, + pantographtogglerear, + pantographraisefront, + pantographraiserear, + pantographlowerfront, + pantographlowerrear, + pantographlowerall, + pantographselectnext, + pantographselectprevious, + pantographtoggleselected, + pantographraiseselected, + pantographlowerselected, + pantographvalvesupdate, + pantographvalvesoff, + heatingtoggle, + heatingenable, + heatingdisable, + lightspresetactivatenext, + lightspresetactivateprevious, + headlighttoggleleft, + headlightenableleft, + headlightdisableleft, + headlighttoggleright, + headlightenableright, + headlightdisableright, + headlighttoggleupper, + headlightenableupper, + headlightdisableupper, + redmarkertoggleleft, + redmarkerenableleft, + redmarkerdisableleft, + redmarkertoggleright, + redmarkerenableright, + redmarkerdisableright, + headlighttogglerearleft, + headlightenablerearleft, + headlightdisablerearleft, + headlighttogglerearright, + headlightenablerearright, + headlightdisablerearright, + headlighttogglerearupper, + headlightenablerearupper, + headlightdisablerearupper, + redmarkertogglerearleft, + redmarkerenablerearleft, + redmarkerdisablerearleft, + redmarkertogglerearright, + redmarkerenablerearright, + redmarkerdisablerearright, + redmarkerstoggle, + endsignalstoggle, + headlightsdimtoggle, + headlightsdimenable, + headlightsdimdisable, + motorconnectorsopen, + motorconnectorsclose, + motordisconnect, + interiorlighttoggle, + interiorlightenable, + interiorlightdisable, + interiorlightdimtoggle, + interiorlightdimenable, + interiorlightdimdisable, + compartmentlightstoggle, + compartmentlightsenable, + compartmentlightsdisable, + instrumentlighttoggle, + instrumentlightenable, + instrumentlightdisable, + dashboardlighttoggle, + dashboardlightenable, + dashboardlightdisable, + timetablelighttoggle, + timetablelightenable, + timetablelightdisable, + generictoggle0, + generictoggle1, + generictoggle2, + generictoggle3, + generictoggle4, + generictoggle5, + generictoggle6, + generictoggle7, + generictoggle8, + generictoggle9, + batterytoggle, + batteryenable, + batterydisable, cabactivationtoggle, cabactivationenable, cabactivationdisable, - motorblowerstogglefront, - motorblowerstogglerear, - motorblowersdisableall, - coolingfanstoggle, - tempomattoggle, + motorblowerstogglefront, + motorblowerstogglerear, + motorblowersdisableall, + coolingfanstoggle, + tempomattoggle, springbraketoggle, springbrakeenable, springbrakedisable, @@ -292,7 +293,7 @@ enum class user_command { springbrakeshutoffenable, springbrakeshutoffdisable, springbrakerelease, - distancecounteractivate, + distancecounteractivate, speedcontrolincrease, speedcontroldecrease, speedcontrolpowerincrease, @@ -343,38 +344,38 @@ enum class user_command { invertertoggle10, invertertoggle11, invertertoggle12, - globalradiostop, - timejump, - timejumplarge, - timejumpsmall, - setdatetime, - setweather, - settemperature, - vehiclemoveforwards, - vehiclemovebackwards, - vehicleboost, - debugtoggle, - focuspauseset, - pausetoggle, - entervehicle, - resetconsist, - fillcompressor, - consistreleaser, - queueevent, - setlight, - insertmodel, - deletemodel, - dynamicmove, - consistteleport, - pullalarmchain, - sendaicommand, - spawntrainset, - destroytrainset, - quitsimulation, + globalradiostop, + timejump, + timejumplarge, + timejumpsmall, + setdatetime, + setweather, + settemperature, + vehiclemoveforwards, + vehiclemovebackwards, + vehicleboost, + debugtoggle, + focuspauseset, + pausetoggle, + entervehicle, + resetconsist, + fillcompressor, + consistreleaser, + queueevent, + setlight, + insertmodel, + deletemodel, + dynamicmove, + consistteleport, + pullalarmchain, + sendaicommand, + spawntrainset, + destroytrainset, + quitsimulation, wiperswitchincrease, wiperswitchdecrease, - none = -1 + none = -1 }; enum class command_target {