diff --git a/src/intf/input/inp_interface.cpp b/src/intf/input/inp_interface.cpp index dd7b58830..16250d22e 100644 --- a/src/intf/input/inp_interface.cpp +++ b/src/intf/input/inp_interface.cpp @@ -1,5 +1,6 @@ // Burner Input module #include "burner.h" +#include UINT32 nInputSelect = 0; bool bInputOkay = false; @@ -27,6 +28,14 @@ static struct InputInOut *pInputInOut[]= #define INPUT_LEN (sizeof(pInputInOut) / sizeof(pInputInOut[0])) +std::vector InputGetInterfaces() +{ + std::vector list; + for (int i = 0; i < INPUT_LEN; i++) + list.push_back(pInputInOut[i]); + return list; +} + static InterfaceInfo InpInfo = { NULL, NULL, NULL }; inline INT32 CinpState(const INT32 nCode) diff --git a/src/intf/interface.h b/src/intf/interface.h index a2b277bb9..fb2748e2c 100644 --- a/src/intf/interface.h +++ b/src/intf/interface.h @@ -1,6 +1,8 @@ +#pragma once #ifdef FBA_DEBUG #define PRINT_DEBUG_INFO #endif +#include // GameInp structure #include "gameinp.h" @@ -47,6 +49,7 @@ INT32 InputMake(bool bCopy); INT32 InputFind(const INT32 nFlags); INT32 InputGetControlName(INT32 nCode, TCHAR* pszDeviceName, TCHAR* pszControlName); InterfaceInfo* InputGetInfo(); +std::vector InputGetInterfaces(); extern bool bInputOkay; extern UINT32 nInputSelect;