#include<SDL3/SDL_scancode.h>typedefenumSDL_Scancode{SDL_SCANCODE_UNKNOWN=0,/***\nameUsagepage0x07**Thesevaluesarefromusagepage0x07(USBkeyboardpage).*//*@{*/SDL_SCANCODE_A=4,SDL_SCANCODE_B=5,SDL_SCANCODE_C=6,SDL_SCANCODE_D=7,SDL_SCANCODE_E=8,SDL_SCANCODE_F=9,SDL_SCANCODE_G=10,SDL_SCANCODE_H=11,SDL_SCANCODE_I=12,SDL_SCANCODE_J=13,SDL_SCANCODE_K=14,SDL_SCANCODE_L=15,SDL_SCANCODE_M=16,SDL_SCANCODE_N=17,SDL_SCANCODE_O=18,SDL_SCANCODE_P=19,SDL_SCANCODE_Q=20,SDL_SCANCODE_R=21,SDL_SCANCODE_S=22,SDL_SCANCODE_T=23,SDL_SCANCODE_U=24,SDL_SCANCODE_V=25,SDL_SCANCODE_W=26,SDL_SCANCODE_X=27,SDL_SCANCODE_Y=28,SDL_SCANCODE_Z=29,SDL_SCANCODE_1=30,SDL_SCANCODE_2=31,SDL_SCANCODE_3=32,SDL_SCANCODE_4=33,SDL_SCANCODE_5=34,SDL_SCANCODE_6=35,SDL_SCANCODE_7=36,SDL_SCANCODE_8=37,SDL_SCANCODE_9=38,SDL_SCANCODE_0=39,SDL_SCANCODE_RETURN=40,SDL_SCANCODE_ESCAPE=41,SDL_SCANCODE_BACKSPACE=42,SDL_SCANCODE_TAB=43,SDL_SCANCODE_SPACE=44,SDL_SCANCODE_MINUS=45,SDL_SCANCODE_EQUALS=46,SDL_SCANCODE_LEFTBRACKET=47,SDL_SCANCODE_RIGHTBRACKET=48,SDL_SCANCODE_BACKSLASH=49,/**<Locatedatthelowerleftofthereturn*keyonISOkeyboardsandattherightend*oftheQWERTYrowonANSIkeyboards.*ProducesREVERSESOLIDUS(backslash)and*VERTICALLINEinaUSlayout,REVERSE*SOLIDUSandVERTICALLINEinaUKMac*layout,NUMBERSIGNandTILDEinaUK*Windowslayout,DOLLARSIGNandPOUNDSIGN*inaSwissGermanlayout,NUMBERSIGNand*APOSTROPHEinaGermanlayout,GRAVE*ACCENTandPOUNDSIGNinaFrenchMac*layout,andASTERISKandMICROSIGNina*FrenchWindowslayout.*/SDL_SCANCODE_NONUSHASH=50,/**<ISOUSBkeyboardsactuallyusethiscode*insteadof49forthesamekey,butall*OSesI'veseentreatthetwocodes*identically.So,asanimplementor,unless*yourkeyboardgeneratesbothofthose*codesandyourOStreatsthemdifferently,*youshouldgenerateSDL_SCANCODE_BACKSLASH*insteadofthiscode.Asauser,you*shouldnotrelyonthiscodebecauseSDL*willnevergenerateitwithmost(all?)*keyboards.*/SDL_SCANCODE_SEMICOLON=51,SDL_SCANCODE_APOSTROPHE=52,SDL_SCANCODE_GRAVE=53,/**<Locatedinthetopleftcorner(onbothANSI*andISOkeyboards).ProducesGRAVEACCENTand*TILDEinaUSWindowslayoutandinUSandUK*MaclayoutsonANSIkeyboards,GRAVEACCENT*andNOTSIGNinaUKWindowslayout,SECTION*SIGNandPLUS-MINUSSIGNinUSandUKMac*layoutsonISOkeyboards,SECTIONSIGNand*DEGREESIGNinaSwissGermanlayout(Mac:*onlyonISOkeyboards),CIRCUMFLEXACCENTand*DEGREESIGNinaGermanlayout(Mac:onlyon*ISOkeyboards),SUPERSCRIPTTWOandTILDEina*FrenchWindowslayout,COMMERCIALATand*NUMBERSIGNinaFrenchMaclayoutonISO*keyboards,andLESS-THANSIGNandGREATER-THAN*SIGNinaSwissGerman,German,orFrenchMac*layoutonANSIkeyboards.*/SDL_SCANCODE_COMMA=54,SDL_SCANCODE_PERIOD=55,SDL_SCANCODE_SLASH=56,SDL_SCANCODE_CAPSLOCK=57,SDL_SCANCODE_F1=58,SDL_SCANCODE_F2=59,SDL_SCANCODE_F3=60,SDL_SCANCODE_F4=61,SDL_SCANCODE_F5=62,SDL_SCANCODE_F6=63,SDL_SCANCODE_F7=64,SDL_SCANCODE_F8=65,SDL_SCANCODE_F9=66,SDL_SCANCODE_F10=67,SDL_SCANCODE_F11=68,SDL_SCANCODE_F12=69,SDL_SCANCODE_PRINTSCREEN=70,SDL_SCANCODE_SCROLLLOCK=71,SDL_SCANCODE_PAUSE=72,SDL_SCANCODE_INSERT=73,/**<insertonPC,helponsomeMackeyboards(butdoessendcode73,not117)*/SDL_SCANCODE_HOME=74,SDL_SCANCODE_PAGEUP=75,SDL_SCANCODE_DELETE=76,SDL_SCANCODE_END=77,SDL_SCANCODE_PAGEDOWN=78,SDL_SCANCODE_RIGHT=79,SDL_SCANCODE_LEFT=80,SDL_SCANCODE_DOWN=81,SDL_SCANCODE_UP=82,SDL_SCANCODE_NUMLOCKCLEAR=83,/**<numlockonPC,clearonMackeyboards*/SDL_SCANCODE_KP_DIVIDE=84,SDL_SCANCODE_KP_MULTIPLY=85,SDL_SCANCODE_KP_MINUS=86,SDL_SCANCODE_KP_PLUS=87,SDL_SCANCODE_KP_ENTER=88,SDL_SCANCODE_KP_1=89,SDL_SCANCODE_KP_2=90,SDL_SCANCODE_KP_3=91,SDL_SCANCODE_KP_4=92,SDL_SCANCODE_KP_5=93,SDL_SCANCODE_KP_6=94,SDL_SCANCODE_KP_7=95,SDL_SCANCODE_KP_8=96,SDL_SCANCODE_KP_9=97,SDL_SCANCODE_KP_0=98,SDL_SCANCODE_KP_PERIOD=99,SDL_SCANCODE_NONUSBACKSLASH=100,/**<ThisistheadditionalkeythatISO*keyboardshaveoverANSIones,*locatedbetweenleftshiftandZ.*ProducesGRAVEACCENTandTILDEina*USorUKMaclayout,REVERSESOLIDUS*(backslash)andVERTICALLINEina*USorUKWindowslayout,and*LESS-THANSIGNandGREATER-THANSIGN*inaSwissGerman,German,orFrench*layout.*/SDL_SCANCODE_APPLICATION=101,/**<windowscontextualmenu,compose*/SDL_SCANCODE_POWER=102,/**<TheUSBdocumentsaysthisisastatusflag,*notaphysicalkey-butsomeMackeyboards*dohaveapowerkey.*/SDL_SCANCODE_KP_EQUALS=103,SDL_SCANCODE_F13=104,SDL_SCANCODE_F14=105,SDL_SCANCODE_F15=106,SDL_SCANCODE_F16=107,SDL_SCANCODE_F17=108,SDL_SCANCODE_F18=109,SDL_SCANCODE_F19=110,SDL_SCANCODE_F20=111,SDL_SCANCODE_F21=112,SDL_SCANCODE_F22=113,SDL_SCANCODE_F23=114,SDL_SCANCODE_F24=115,SDL_SCANCODE_EXECUTE=116,SDL_SCANCODE_HELP=117,/**<ALIntegratedHelpCenter*/SDL_SCANCODE_MENU=118,/**<Menu(showmenu)*/SDL_SCANCODE_SELECT=119,SDL_SCANCODE_STOP=120,/**<ACStop*/SDL_SCANCODE_AGAIN=121,/**<ACRedo/Repeat*/SDL_SCANCODE_UNDO=122,/**<ACUndo*/SDL_SCANCODE_CUT=123,/**<ACCut*/SDL_SCANCODE_COPY=124,/**<ACCopy*/SDL_SCANCODE_PASTE=125,/**<ACPaste*/SDL_SCANCODE_FIND=126,/**<ACFind*/SDL_SCANCODE_MUTE=127,SDL_SCANCODE_VOLUMEUP=128,SDL_SCANCODE_VOLUMEDOWN=129,/*notsurewhetherthere'sareasontoenablethese*//*SDL_SCANCODE_LOCKINGCAPSLOCK=130,*//*SDL_SCANCODE_LOCKINGNUMLOCK=131,*//*SDL_SCANCODE_LOCKINGSCROLLLOCK=132,*/SDL_SCANCODE_KP_COMMA=133,SDL_SCANCODE_KP_EQUALSAS400=134,SDL_SCANCODE_INTERNATIONAL1=135,/**<usedonAsiankeyboards,seefootnotesinUSBdoc*/SDL_SCANCODE_INTERNATIONAL2=136,SDL_SCANCODE_INTERNATIONAL3=137,/**<Yen*/SDL_SCANCODE_INTERNATIONAL4=138,SDL_SCANCODE_INTERNATIONAL5=139,SDL_SCANCODE_INTERNATIONAL6=140,SDL_SCANCODE_INTERNATIONAL7=141,SDL_SCANCODE_INTERNATIONAL8=142,SDL_SCANCODE_INTERNATIONAL9=143,SDL_SCANCODE_LANG1=144,/**<Hangul/Englishtoggle*/SDL_SCANCODE_LANG2=145,/**<Hanjaconversion*/SDL_SCANCODE_LANG3=146,/**<Katakana*/SDL_SCANCODE_LANG4=147,/**<Hiragana*/SDL_SCANCODE_LANG5=148,/**<Zenkaku/Hankaku*/SDL_SCANCODE_LANG6=149,/**<reserved*/SDL_SCANCODE_LANG7=150,/**<reserved*/SDL_SCANCODE_LANG8=151,/**<reserved*/SDL_SCANCODE_LANG9=152,/**<reserved*/SDL_SCANCODE_ALTERASE=153,/**<Erase-Eaze*/SDL_SCANCODE_SYSREQ=154,SDL_SCANCODE_CANCEL=155,/**<ACCancel*/SDL_SCANCODE_CLEAR=156,SDL_SCANCODE_PRIOR=157,SDL_SCANCODE_RETURN2=158,SDL_SCANCODE_SEPARATOR=159,SDL_SCANCODE_OUT=160,SDL_SCANCODE_OPER=161,SDL_SCANCODE_CLEARAGAIN=162,SDL_SCANCODE_CRSEL=163,SDL_SCANCODE_EXSEL=164,SDL_SCANCODE_KP_00=176,SDL_SCANCODE_KP_000=177,SDL_SCANCODE_THOUSANDSSEPARATOR=178,SDL_SCANCODE_DECIMALSEPARATOR=179,SDL_SCANCODE_CURRENCYUNIT=180,SDL_SCANCODE_CURRENCYSUBUNIT=181,SDL_SCANCODE_KP_LEFTPAREN=182,SDL_SCANCODE_KP_RIGHTPAREN=183,SDL_SCANCODE_KP_LEFTBRACE=184,SDL_SCANCODE_KP_RIGHTBRACE=185,SDL_SCANCODE_KP_TAB=186,SDL_SCANCODE_KP_BACKSPACE=187,SDL_SCANCODE_KP_A=188,SDL_SCANCODE_KP_B=189,SDL_SCANCODE_KP_C=190,SDL_SCANCODE_KP_D=191,SDL_SCANCODE_KP_E=192,SDL_SCANCODE_KP_F=193,SDL_SCANCODE_KP_XOR=194,SDL_SCANCODE_KP_POWER=195,SDL_SCANCODE_KP_PERCENT=196,SDL_SCANCODE_KP_LESS=197,SDL_SCANCODE_KP_GREATER=198,SDL_SCANCODE_KP_AMPERSAND=199,SDL_SCANCODE_KP_DBLAMPERSAND=200,SDL_SCANCODE_KP_VERTICALBAR=201,SDL_SCANCODE_KP_DBLVERTICALBAR=202,SDL_SCANCODE_KP_COLON=203,SDL_SCANCODE_KP_HASH=204,SDL_SCANCODE_KP_SPACE=205,SDL_SCANCODE_KP_AT=206,SDL_SCANCODE_KP_EXCLAM=207,SDL_SCANCODE_KP_MEMSTORE=208,SDL_SCANCODE_KP_MEMRECALL=209,SDL_SCANCODE_KP_MEMCLEAR=210,SDL_SCANCODE_KP_MEMADD=211,SDL_SCANCODE_KP_MEMSUBTRACT=212,SDL_SCANCODE_KP_MEMMULTIPLY=213,SDL_SCANCODE_KP_MEMDIVIDE=214,SDL_SCANCODE_KP_PLUSMINUS=215,SDL_SCANCODE_KP_CLEAR=216,SDL_SCANCODE_KP_CLEARENTRY=217,SDL_SCANCODE_KP_BINARY=218,SDL_SCANCODE_KP_OCTAL=219,SDL_SCANCODE_KP_DECIMAL=220,SDL_SCANCODE_KP_HEXADECIMAL=221,SDL_SCANCODE_LCTRL=224,SDL_SCANCODE_LSHIFT=225,SDL_SCANCODE_LALT=226,/**<alt,option*/SDL_SCANCODE_LGUI=227,/**<windows,command(apple),meta*/SDL_SCANCODE_RCTRL=228,SDL_SCANCODE_RSHIFT=229,SDL_SCANCODE_RALT=230,/**<altgr,option*/SDL_SCANCODE_RGUI=231,/**<windows,command(apple),meta*/SDL_SCANCODE_MODE=257,/**<I'mnotsureifthisisreallynotcovered*byanyoftheabove,butsincethere'sa*specialSDL_KMOD_MODEforitI'maddingithere*//*@}*//*Usagepage0x07*//***\nameUsagepage0x0C**Thesevaluesaremappedfromusagepage0x0C(USBconsumerpage).**Therearewaymorekeysinthespecthanwecanrepresentinthe*currentscancoderange,sopicktheonesthatcommonlycomeupin*realworldusage.*//*@{*/SDL_SCANCODE_SLEEP=258,/**<Sleep*/SDL_SCANCODE_WAKE=259,/**<Wake*/SDL_SCANCODE_CHANNEL_INCREMENT=260,/**<ChannelIncrement*/SDL_SCANCODE_CHANNEL_DECREMENT=261,/**<ChannelDecrement*/SDL_SCANCODE_MEDIA_PLAY=262,/**<Play*/SDL_SCANCODE_MEDIA_PAUSE=263,/**<Pause*/SDL_SCANCODE_MEDIA_RECORD=264,/**<Record*/SDL_SCANCODE_MEDIA_FAST_FORWARD=265,/**<FastForward*/SDL_SCANCODE_MEDIA_REWIND=266,/**<Rewind*/SDL_SCANCODE_MEDIA_NEXT_TRACK=267,/**<NextTrack*/SDL_SCANCODE_MEDIA_PREVIOUS_TRACK=268,/**<PreviousTrack*/SDL_SCANCODE_MEDIA_STOP=269,/**<Stop*/SDL_SCANCODE_MEDIA_EJECT=270,/**<Eject*/SDL_SCANCODE_MEDIA_PLAY_PAUSE=271,/**<Play/Pause*/SDL_SCANCODE_MEDIA_SELECT=272,/*MediaSelect*/SDL_SCANCODE_AC_NEW=273,/**<ACNew*/SDL_SCANCODE_AC_OPEN=274,/**<ACOpen*/SDL_SCANCODE_AC_CLOSE=275,/**<ACClose*/SDL_SCANCODE_AC_EXIT=276,/**<ACExit*/SDL_SCANCODE_AC_SAVE=277,/**<ACSave*/SDL_SCANCODE_AC_PRINT=278,/**<ACPrint*/SDL_SCANCODE_AC_PROPERTIES=279,/**<ACProperties*/SDL_SCANCODE_AC_SEARCH=280,/**<ACSearch*/SDL_SCANCODE_AC_HOME=281,/**<ACHome*/SDL_SCANCODE_AC_BACK=282,/**<ACBack*/SDL_SCANCODE_AC_FORWARD=283,/**<ACForward*/SDL_SCANCODE_AC_STOP=284,/**<ACStop*/SDL_SCANCODE_AC_REFRESH=285,/**<ACRefresh*/SDL_SCANCODE_AC_BOOKMARKS=286,/**<ACBookmarks*//*@}*//*Usagepage0x0C*//***\nameMobilekeys**Thesearevaluesthatareoftenusedonmobilephones.*//*@{*/SDL_SCANCODE_SOFTLEFT=287,/**<Usuallysituatedbelowthedisplayonphonesandusedasamulti-functionfeaturekeyforselectingasoftwaredefinedfunctionshownonthebottomleftofthedisplay.*/SDL_SCANCODE_SOFTRIGHT=288,/**<Usuallysituatedbelowthedisplayonphonesandusedasamulti-functionfeaturekeyforselectingasoftwaredefinedfunctionshownonthebottomrightofthedisplay.*/SDL_SCANCODE_CALL=289,/**<Usedforacceptingphonecalls.*/SDL_SCANCODE_ENDCALL=290,/**<Usedforrejectingphonecalls.*//*@}*//*Mobilekeys*//*Addanyotherkeyshere.*/SDL_SCANCODE_RESERVED=400,/**<400-500reservedfordynamickeycodes*/SDL_SCANCODE_COUNT=512/**<notakey,justmarksthenumberofscancodesforarraybounds*/}SDL_Scancode;