Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ValveSoftware/Proton.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Eikum <aeikum@codeweavers.com>2019-02-25 18:53:13 +0300
committerAndrew Eikum <aeikum@codeweavers.com>2019-03-07 16:45:44 +0300
commit318a9df7a9062147f0d9f31dc42d8f91f5f7df09 (patch)
tree8d6cdda2938c1d4b1f0c95b057ad55587c7c8406
parentf6c12f63332691d27c769c87b06300d20ad66317 (diff)
lsteamclient: Support ISteamInput
-rw-r--r--lsteamclient/cppISteamInput_SteamInput001.cpp177
-rw-r--r--lsteamclient/cppISteamInput_SteamInput001.h33
-rwxr-xr-xlsteamclient/gen_wrapper.py1
-rw-r--r--lsteamclient/steam_defs.h7
-rw-r--r--lsteamclient/winISteamInput.c314
-rw-r--r--lsteamclient/win_constructors.h1
-rw-r--r--lsteamclient/win_constructors_table.dat1
7 files changed, 533 insertions, 1 deletions
diff --git a/lsteamclient/cppISteamInput_SteamInput001.cpp b/lsteamclient/cppISteamInput_SteamInput001.cpp
new file mode 100644
index 00000000..0c360373
--- /dev/null
+++ b/lsteamclient/cppISteamInput_SteamInput001.cpp
@@ -0,0 +1,177 @@
+#include "steam_defs.h"
+#include "steamworks_sdk_143/steam_api.h"
+#include "steamclient_private.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+#define SDKVER_143
+#include "struct_converters.h"
+#include "cppISteamInput_SteamInput001.h"
+bool cppISteamInput_SteamInput001_Init(void *linux_side)
+{
+ return ((ISteamInput*)linux_side)->Init();
+}
+
+bool cppISteamInput_SteamInput001_Shutdown(void *linux_side)
+{
+ return ((ISteamInput*)linux_side)->Shutdown();
+}
+
+void cppISteamInput_SteamInput001_RunFrame(void *linux_side)
+{
+ ((ISteamInput*)linux_side)->RunFrame();
+}
+
+int cppISteamInput_SteamInput001_GetConnectedControllers(void *linux_side, InputHandle_t * handlesOut)
+{
+ return ((ISteamInput*)linux_side)->GetConnectedControllers((InputHandle_t *)handlesOut);
+}
+
+InputActionSetHandle_t cppISteamInput_SteamInput001_GetActionSetHandle(void *linux_side, const char * pszActionSetName)
+{
+ return ((ISteamInput*)linux_side)->GetActionSetHandle((const char *)pszActionSetName);
+}
+
+void cppISteamInput_SteamInput001_ActivateActionSet(void *linux_side, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle)
+{
+ ((ISteamInput*)linux_side)->ActivateActionSet((InputHandle_t)inputHandle, (InputActionSetHandle_t)actionSetHandle);
+}
+
+InputActionSetHandle_t cppISteamInput_SteamInput001_GetCurrentActionSet(void *linux_side, InputHandle_t inputHandle)
+{
+ return ((ISteamInput*)linux_side)->GetCurrentActionSet((InputHandle_t)inputHandle);
+}
+
+void cppISteamInput_SteamInput001_ActivateActionSetLayer(void *linux_side, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle)
+{
+ ((ISteamInput*)linux_side)->ActivateActionSetLayer((InputHandle_t)inputHandle, (InputActionSetHandle_t)actionSetLayerHandle);
+}
+
+void cppISteamInput_SteamInput001_DeactivateActionSetLayer(void *linux_side, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle)
+{
+ ((ISteamInput*)linux_side)->DeactivateActionSetLayer((InputHandle_t)inputHandle, (InputActionSetHandle_t)actionSetLayerHandle);
+}
+
+void cppISteamInput_SteamInput001_DeactivateAllActionSetLayers(void *linux_side, InputHandle_t inputHandle)
+{
+ ((ISteamInput*)linux_side)->DeactivateAllActionSetLayers((InputHandle_t)inputHandle);
+}
+
+int cppISteamInput_SteamInput001_GetActiveActionSetLayers(void *linux_side, InputHandle_t inputHandle, InputActionSetHandle_t * handlesOut)
+{
+ return ((ISteamInput*)linux_side)->GetActiveActionSetLayers((InputHandle_t)inputHandle, (InputActionSetHandle_t *)handlesOut);
+}
+
+InputDigitalActionHandle_t cppISteamInput_SteamInput001_GetDigitalActionHandle(void *linux_side, const char * pszActionName)
+{
+ return ((ISteamInput*)linux_side)->GetDigitalActionHandle((const char *)pszActionName);
+}
+
+InputDigitalActionData_t cppISteamInput_SteamInput001_GetDigitalActionData(void *linux_side, InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle)
+{
+ return ((ISteamInput*)linux_side)->GetDigitalActionData((InputHandle_t)inputHandle, (InputDigitalActionHandle_t)digitalActionHandle);
+}
+
+int cppISteamInput_SteamInput001_GetDigitalActionOrigins(void *linux_side, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, EInputActionOrigin * originsOut)
+{
+ return ((ISteamInput*)linux_side)->GetDigitalActionOrigins((InputHandle_t)inputHandle, (InputActionSetHandle_t)actionSetHandle, (InputDigitalActionHandle_t)digitalActionHandle, (EInputActionOrigin *)originsOut);
+}
+
+InputAnalogActionHandle_t cppISteamInput_SteamInput001_GetAnalogActionHandle(void *linux_side, const char * pszActionName)
+{
+ return ((ISteamInput*)linux_side)->GetAnalogActionHandle((const char *)pszActionName);
+}
+
+InputAnalogActionData_t cppISteamInput_SteamInput001_GetAnalogActionData(void *linux_side, InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle)
+{
+ return ((ISteamInput*)linux_side)->GetAnalogActionData((InputHandle_t)inputHandle, (InputAnalogActionHandle_t)analogActionHandle);
+}
+
+int cppISteamInput_SteamInput001_GetAnalogActionOrigins(void *linux_side, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, EInputActionOrigin * originsOut)
+{
+ return ((ISteamInput*)linux_side)->GetAnalogActionOrigins((InputHandle_t)inputHandle, (InputActionSetHandle_t)actionSetHandle, (InputAnalogActionHandle_t)analogActionHandle, (EInputActionOrigin *)originsOut);
+}
+
+const char * cppISteamInput_SteamInput001_GetGlyphForActionOrigin(void *linux_side, EInputActionOrigin eOrigin)
+{
+ return ((ISteamInput*)linux_side)->GetGlyphForActionOrigin((EInputActionOrigin)eOrigin);
+}
+
+const char * cppISteamInput_SteamInput001_GetStringForActionOrigin(void *linux_side, EInputActionOrigin eOrigin)
+{
+ return ((ISteamInput*)linux_side)->GetStringForActionOrigin((EInputActionOrigin)eOrigin);
+}
+
+void cppISteamInput_SteamInput001_StopAnalogActionMomentum(void *linux_side, InputHandle_t inputHandle, InputAnalogActionHandle_t eAction)
+{
+ ((ISteamInput*)linux_side)->StopAnalogActionMomentum((InputHandle_t)inputHandle, (InputAnalogActionHandle_t)eAction);
+}
+
+InputMotionData_t cppISteamInput_SteamInput001_GetMotionData(void *linux_side, InputHandle_t inputHandle)
+{
+ return ((ISteamInput*)linux_side)->GetMotionData((InputHandle_t)inputHandle);
+}
+
+void cppISteamInput_SteamInput001_TriggerVibration(void *linux_side, InputHandle_t inputHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed)
+{
+ ((ISteamInput*)linux_side)->TriggerVibration((InputHandle_t)inputHandle, (unsigned short)usLeftSpeed, (unsigned short)usRightSpeed);
+}
+
+void cppISteamInput_SteamInput001_SetLEDColor(void *linux_side, InputHandle_t inputHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags)
+{
+ ((ISteamInput*)linux_side)->SetLEDColor((InputHandle_t)inputHandle, (uint8)nColorR, (uint8)nColorG, (uint8)nColorB, (unsigned int)nFlags);
+}
+
+void cppISteamInput_SteamInput001_TriggerHapticPulse(void *linux_side, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec)
+{
+ ((ISteamInput*)linux_side)->TriggerHapticPulse((InputHandle_t)inputHandle, (ESteamControllerPad)eTargetPad, (unsigned short)usDurationMicroSec);
+}
+
+void cppISteamInput_SteamInput001_TriggerRepeatedHapticPulse(void *linux_side, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags)
+{
+ ((ISteamInput*)linux_side)->TriggerRepeatedHapticPulse((InputHandle_t)inputHandle, (ESteamControllerPad)eTargetPad, (unsigned short)usDurationMicroSec, (unsigned short)usOffMicroSec, (unsigned short)unRepeat, (unsigned int)nFlags);
+}
+
+bool cppISteamInput_SteamInput001_ShowBindingPanel(void *linux_side, InputHandle_t inputHandle)
+{
+ return ((ISteamInput*)linux_side)->ShowBindingPanel((InputHandle_t)inputHandle);
+}
+
+ESteamInputType cppISteamInput_SteamInput001_GetInputTypeForHandle(void *linux_side, InputHandle_t inputHandle)
+{
+ return ((ISteamInput*)linux_side)->GetInputTypeForHandle((InputHandle_t)inputHandle);
+}
+
+InputHandle_t cppISteamInput_SteamInput001_GetControllerForGamepadIndex(void *linux_side, int nIndex)
+{
+ return ((ISteamInput*)linux_side)->GetControllerForGamepadIndex((int)nIndex);
+}
+
+int cppISteamInput_SteamInput001_GetGamepadIndexForController(void *linux_side, InputHandle_t ulinputHandle)
+{
+ return ((ISteamInput*)linux_side)->GetGamepadIndexForController((InputHandle_t)ulinputHandle);
+}
+
+const char * cppISteamInput_SteamInput001_GetStringForXboxOrigin(void *linux_side, EXboxOrigin eOrigin)
+{
+ return ((ISteamInput*)linux_side)->GetStringForXboxOrigin((EXboxOrigin)eOrigin);
+}
+
+const char * cppISteamInput_SteamInput001_GetGlyphForXboxOrigin(void *linux_side, EXboxOrigin eOrigin)
+{
+ return ((ISteamInput*)linux_side)->GetGlyphForXboxOrigin((EXboxOrigin)eOrigin);
+}
+
+EInputActionOrigin cppISteamInput_SteamInput001_GetActionOriginFromXboxOrigin(void *linux_side, InputHandle_t inputHandle, EXboxOrigin eOrigin)
+{
+ return ((ISteamInput*)linux_side)->GetActionOriginFromXboxOrigin((InputHandle_t)inputHandle, (EXboxOrigin)eOrigin);
+}
+
+EInputActionOrigin cppISteamInput_SteamInput001_TranslateActionOrigin(void *linux_side, ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin)
+{
+ return ((ISteamInput*)linux_side)->TranslateActionOrigin((ESteamInputType)eDestinationInputType, (EInputActionOrigin)eSourceOrigin);
+}
+
+#ifdef __cplusplus
+}
+#endif
diff --git a/lsteamclient/cppISteamInput_SteamInput001.h b/lsteamclient/cppISteamInput_SteamInput001.h
new file mode 100644
index 00000000..040aee3e
--- /dev/null
+++ b/lsteamclient/cppISteamInput_SteamInput001.h
@@ -0,0 +1,33 @@
+extern bool cppISteamInput_SteamInput001_Init(void *);
+extern bool cppISteamInput_SteamInput001_Shutdown(void *);
+extern void cppISteamInput_SteamInput001_RunFrame(void *);
+extern int cppISteamInput_SteamInput001_GetConnectedControllers(void *, InputHandle_t *);
+extern InputActionSetHandle_t cppISteamInput_SteamInput001_GetActionSetHandle(void *, const char *);
+extern void cppISteamInput_SteamInput001_ActivateActionSet(void *, InputHandle_t, InputActionSetHandle_t);
+extern InputActionSetHandle_t cppISteamInput_SteamInput001_GetCurrentActionSet(void *, InputHandle_t);
+extern void cppISteamInput_SteamInput001_ActivateActionSetLayer(void *, InputHandle_t, InputActionSetHandle_t);
+extern void cppISteamInput_SteamInput001_DeactivateActionSetLayer(void *, InputHandle_t, InputActionSetHandle_t);
+extern void cppISteamInput_SteamInput001_DeactivateAllActionSetLayers(void *, InputHandle_t);
+extern int cppISteamInput_SteamInput001_GetActiveActionSetLayers(void *, InputHandle_t, InputActionSetHandle_t *);
+extern InputDigitalActionHandle_t cppISteamInput_SteamInput001_GetDigitalActionHandle(void *, const char *);
+extern InputDigitalActionData_t cppISteamInput_SteamInput001_GetDigitalActionData(void *, InputHandle_t, InputDigitalActionHandle_t);
+extern int cppISteamInput_SteamInput001_GetDigitalActionOrigins(void *, InputHandle_t, InputActionSetHandle_t, InputDigitalActionHandle_t, EInputActionOrigin *);
+extern InputAnalogActionHandle_t cppISteamInput_SteamInput001_GetAnalogActionHandle(void *, const char *);
+extern InputAnalogActionData_t cppISteamInput_SteamInput001_GetAnalogActionData(void *, InputHandle_t, InputAnalogActionHandle_t);
+extern int cppISteamInput_SteamInput001_GetAnalogActionOrigins(void *, InputHandle_t, InputActionSetHandle_t, InputAnalogActionHandle_t, EInputActionOrigin *);
+extern const char * cppISteamInput_SteamInput001_GetGlyphForActionOrigin(void *, EInputActionOrigin);
+extern const char * cppISteamInput_SteamInput001_GetStringForActionOrigin(void *, EInputActionOrigin);
+extern void cppISteamInput_SteamInput001_StopAnalogActionMomentum(void *, InputHandle_t, InputAnalogActionHandle_t);
+extern InputMotionData_t cppISteamInput_SteamInput001_GetMotionData(void *, InputHandle_t);
+extern void cppISteamInput_SteamInput001_TriggerVibration(void *, InputHandle_t, unsigned short, unsigned short);
+extern void cppISteamInput_SteamInput001_SetLEDColor(void *, InputHandle_t, uint8, uint8, uint8, unsigned int);
+extern void cppISteamInput_SteamInput001_TriggerHapticPulse(void *, InputHandle_t, ESteamControllerPad, unsigned short);
+extern void cppISteamInput_SteamInput001_TriggerRepeatedHapticPulse(void *, InputHandle_t, ESteamControllerPad, unsigned short, unsigned short, unsigned short, unsigned int);
+extern bool cppISteamInput_SteamInput001_ShowBindingPanel(void *, InputHandle_t);
+extern ESteamInputType cppISteamInput_SteamInput001_GetInputTypeForHandle(void *, InputHandle_t);
+extern InputHandle_t cppISteamInput_SteamInput001_GetControllerForGamepadIndex(void *, int);
+extern int cppISteamInput_SteamInput001_GetGamepadIndexForController(void *, InputHandle_t);
+extern const char * cppISteamInput_SteamInput001_GetStringForXboxOrigin(void *, EXboxOrigin);
+extern const char * cppISteamInput_SteamInput001_GetGlyphForXboxOrigin(void *, EXboxOrigin);
+extern EInputActionOrigin cppISteamInput_SteamInput001_GetActionOriginFromXboxOrigin(void *, InputHandle_t, EXboxOrigin);
+extern EInputActionOrigin cppISteamInput_SteamInput001_TranslateActionOrigin(void *, ESteamInputType, EInputActionOrigin);
diff --git a/lsteamclient/gen_wrapper.py b/lsteamclient/gen_wrapper.py
index e885adec..ac554453 100755
--- a/lsteamclient/gen_wrapper.py
+++ b/lsteamclient/gen_wrapper.py
@@ -93,6 +93,7 @@ files = [
"ISteamFriends",
"ISteamHTMLSurface",
"ISteamHTTP",
+ "ISteamInput",
"ISteamInventory",
"ISteamMatchmaking",
"ISteamMatchmakingServers",
diff --git a/lsteamclient/steam_defs.h b/lsteamclient/steam_defs.h
index 322e3d64..ff439448 100644
--- a/lsteamclient/steam_defs.h
+++ b/lsteamclient/steam_defs.h
@@ -72,7 +72,8 @@ typedef uint32_t EUserUGCList,
EInputSourceMode,
EActivateGameOverlayToWebPageMode,
ESteamPartyBeaconLocationData,
- ESteamPartyBeaconLocationType
+ ESteamPartyBeaconLocationType,
+ EInputActionOrigin
;
/* these are PODs, so just copy the data. hopefully the
@@ -206,6 +207,10 @@ typedef int32 SteamInventoryResult_t, SteamItemDef_t;
typedef uint64 SteamItemInstanceID_t;
typedef uint64 SteamInventoryUpdateHandle_t;
typedef uint64 PartyBeaconID_t;
+typedef uint64 InputHandle_t;
+typedef uint64 InputActionSetHandle_t;
+typedef uint64 InputDigitalActionHandle_t;
+typedef uint64 InputAnalogActionHandle_t;
#pragma pack( push, 4 )
typedef struct CallbackMsg_t
diff --git a/lsteamclient/winISteamInput.c b/lsteamclient/winISteamInput.c
new file mode 100644
index 00000000..3d5add51
--- /dev/null
+++ b/lsteamclient/winISteamInput.c
@@ -0,0 +1,314 @@
+/* This file is auto-generated, do not edit. */
+#include <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+#include "wine/debug.h"
+
+#include "cxx.h"
+
+#include "steam_defs.h"
+
+#include "steamclient_private.h"
+
+#include "struct_converters.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(steamclient);
+
+#include "cppISteamInput_SteamInput001.h"
+
+typedef struct __winISteamInput_SteamInput001 {
+ vtable_ptr *vtable;
+ void *linux_side;
+} winISteamInput_SteamInput001;
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_Init, 4)
+bool __thiscall winISteamInput_SteamInput001_Init(winISteamInput_SteamInput001 *_this)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_Init(_this->linux_side);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_Shutdown, 4)
+bool __thiscall winISteamInput_SteamInput001_Shutdown(winISteamInput_SteamInput001 *_this)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_Shutdown(_this->linux_side);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_RunFrame, 4)
+void __thiscall winISteamInput_SteamInput001_RunFrame(winISteamInput_SteamInput001 *_this)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_RunFrame(_this->linux_side);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetConnectedControllers, 8)
+int __thiscall winISteamInput_SteamInput001_GetConnectedControllers(winISteamInput_SteamInput001 *_this, InputHandle_t * handlesOut)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetConnectedControllers(_this->linux_side, handlesOut);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetActionSetHandle, 8)
+InputActionSetHandle_t __thiscall winISteamInput_SteamInput001_GetActionSetHandle(winISteamInput_SteamInput001 *_this, const char * pszActionSetName)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetActionSetHandle(_this->linux_side, pszActionSetName);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_ActivateActionSet, 20)
+void __thiscall winISteamInput_SteamInput001_ActivateActionSet(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_ActivateActionSet(_this->linux_side, inputHandle, actionSetHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetCurrentActionSet, 12)
+InputActionSetHandle_t __thiscall winISteamInput_SteamInput001_GetCurrentActionSet(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetCurrentActionSet(_this->linux_side, inputHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_ActivateActionSetLayer, 20)
+void __thiscall winISteamInput_SteamInput001_ActivateActionSetLayer(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_ActivateActionSetLayer(_this->linux_side, inputHandle, actionSetLayerHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_DeactivateActionSetLayer, 20)
+void __thiscall winISteamInput_SteamInput001_DeactivateActionSetLayer(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_DeactivateActionSetLayer(_this->linux_side, inputHandle, actionSetLayerHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_DeactivateAllActionSetLayers, 12)
+void __thiscall winISteamInput_SteamInput001_DeactivateAllActionSetLayers(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_DeactivateAllActionSetLayers(_this->linux_side, inputHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetActiveActionSetLayers, 16)
+int __thiscall winISteamInput_SteamInput001_GetActiveActionSetLayers(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, InputActionSetHandle_t * handlesOut)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetActiveActionSetLayers(_this->linux_side, inputHandle, handlesOut);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetDigitalActionHandle, 8)
+InputDigitalActionHandle_t __thiscall winISteamInput_SteamInput001_GetDigitalActionHandle(winISteamInput_SteamInput001 *_this, const char * pszActionName)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetDigitalActionHandle(_this->linux_side, pszActionName);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetDigitalActionData, 24)
+InputDigitalActionData_t *__thiscall winISteamInput_SteamInput001_GetDigitalActionData(winISteamInput_SteamInput001 *_this, InputDigitalActionData_t *_r, InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle)
+{
+ TRACE("%p\n", _this);
+ *_r = cppISteamInput_SteamInput001_GetDigitalActionData(_this->linux_side, inputHandle, digitalActionHandle);
+ return _r;
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetDigitalActionOrigins, 32)
+int __thiscall winISteamInput_SteamInput001_GetDigitalActionOrigins(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, EInputActionOrigin * originsOut)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetDigitalActionOrigins(_this->linux_side, inputHandle, actionSetHandle, digitalActionHandle, originsOut);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetAnalogActionHandle, 8)
+InputAnalogActionHandle_t __thiscall winISteamInput_SteamInput001_GetAnalogActionHandle(winISteamInput_SteamInput001 *_this, const char * pszActionName)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetAnalogActionHandle(_this->linux_side, pszActionName);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetAnalogActionData, 24)
+InputAnalogActionData_t *__thiscall winISteamInput_SteamInput001_GetAnalogActionData(winISteamInput_SteamInput001 *_this, InputAnalogActionData_t *_r, InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle)
+{
+ TRACE("%p\n", _this);
+ *_r = cppISteamInput_SteamInput001_GetAnalogActionData(_this->linux_side, inputHandle, analogActionHandle);
+ return _r;
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetAnalogActionOrigins, 32)
+int __thiscall winISteamInput_SteamInput001_GetAnalogActionOrigins(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, EInputActionOrigin * originsOut)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetAnalogActionOrigins(_this->linux_side, inputHandle, actionSetHandle, analogActionHandle, originsOut);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetGlyphForActionOrigin, 8)
+const char * __thiscall winISteamInput_SteamInput001_GetGlyphForActionOrigin(winISteamInput_SteamInput001 *_this, EInputActionOrigin eOrigin)
+{
+ const char *path_result;
+ TRACE("%p\n", _this);
+ path_result = cppISteamInput_SteamInput001_GetGlyphForActionOrigin(_this->linux_side, eOrigin);
+ path_result = steamclient_isteamcontroller_getglyph(eOrigin, path_result);
+ return path_result;
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetStringForActionOrigin, 8)
+const char * __thiscall winISteamInput_SteamInput001_GetStringForActionOrigin(winISteamInput_SteamInput001 *_this, EInputActionOrigin eOrigin)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetStringForActionOrigin(_this->linux_side, eOrigin);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_StopAnalogActionMomentum, 20)
+void __thiscall winISteamInput_SteamInput001_StopAnalogActionMomentum(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, InputAnalogActionHandle_t eAction)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_StopAnalogActionMomentum(_this->linux_side, inputHandle, eAction);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetMotionData, 16)
+InputMotionData_t *__thiscall winISteamInput_SteamInput001_GetMotionData(winISteamInput_SteamInput001 *_this, InputMotionData_t *_r, InputHandle_t inputHandle)
+{
+ TRACE("%p\n", _this);
+ *_r = cppISteamInput_SteamInput001_GetMotionData(_this->linux_side, inputHandle);
+ return _r;
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_TriggerVibration, 20)
+void __thiscall winISteamInput_SteamInput001_TriggerVibration(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_TriggerVibration(_this->linux_side, inputHandle, usLeftSpeed, usRightSpeed);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_SetLEDColor, 28)
+void __thiscall winISteamInput_SteamInput001_SetLEDColor(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_SetLEDColor(_this->linux_side, inputHandle, nColorR, nColorG, nColorB, nFlags);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_TriggerHapticPulse, 20)
+void __thiscall winISteamInput_SteamInput001_TriggerHapticPulse(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_TriggerHapticPulse(_this->linux_side, inputHandle, eTargetPad, usDurationMicroSec);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_TriggerRepeatedHapticPulse, 32)
+void __thiscall winISteamInput_SteamInput001_TriggerRepeatedHapticPulse(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags)
+{
+ TRACE("%p\n", _this);
+ cppISteamInput_SteamInput001_TriggerRepeatedHapticPulse(_this->linux_side, inputHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_ShowBindingPanel, 12)
+bool __thiscall winISteamInput_SteamInput001_ShowBindingPanel(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_ShowBindingPanel(_this->linux_side, inputHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetInputTypeForHandle, 12)
+ESteamInputType __thiscall winISteamInput_SteamInput001_GetInputTypeForHandle(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetInputTypeForHandle(_this->linux_side, inputHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetControllerForGamepadIndex, 8)
+InputHandle_t __thiscall winISteamInput_SteamInput001_GetControllerForGamepadIndex(winISteamInput_SteamInput001 *_this, int nIndex)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetControllerForGamepadIndex(_this->linux_side, nIndex);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetGamepadIndexForController, 12)
+int __thiscall winISteamInput_SteamInput001_GetGamepadIndexForController(winISteamInput_SteamInput001 *_this, InputHandle_t ulinputHandle)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetGamepadIndexForController(_this->linux_side, ulinputHandle);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetStringForXboxOrigin, 8)
+const char * __thiscall winISteamInput_SteamInput001_GetStringForXboxOrigin(winISteamInput_SteamInput001 *_this, EXboxOrigin eOrigin)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetStringForXboxOrigin(_this->linux_side, eOrigin);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetGlyphForXboxOrigin, 8)
+const char * __thiscall winISteamInput_SteamInput001_GetGlyphForXboxOrigin(winISteamInput_SteamInput001 *_this, EXboxOrigin eOrigin)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetGlyphForXboxOrigin(_this->linux_side, eOrigin);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_GetActionOriginFromXboxOrigin, 16)
+EInputActionOrigin __thiscall winISteamInput_SteamInput001_GetActionOriginFromXboxOrigin(winISteamInput_SteamInput001 *_this, InputHandle_t inputHandle, EXboxOrigin eOrigin)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_GetActionOriginFromXboxOrigin(_this->linux_side, inputHandle, eOrigin);
+}
+
+DEFINE_THISCALL_WRAPPER(winISteamInput_SteamInput001_TranslateActionOrigin, 12)
+EInputActionOrigin __thiscall winISteamInput_SteamInput001_TranslateActionOrigin(winISteamInput_SteamInput001 *_this, ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin)
+{
+ TRACE("%p\n", _this);
+ return cppISteamInput_SteamInput001_TranslateActionOrigin(_this->linux_side, eDestinationInputType, eSourceOrigin);
+}
+
+extern vtable_ptr winISteamInput_SteamInput001_vtable;
+
+#ifndef __GNUC__
+void __asm_dummy_vtables(void) {
+#endif
+ __ASM_VTABLE(winISteamInput_SteamInput001,
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_Init)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_Shutdown)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_RunFrame)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetConnectedControllers)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetActionSetHandle)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_ActivateActionSet)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetCurrentActionSet)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_ActivateActionSetLayer)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_DeactivateActionSetLayer)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_DeactivateAllActionSetLayers)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetActiveActionSetLayers)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetDigitalActionHandle)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetDigitalActionData)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetDigitalActionOrigins)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetAnalogActionHandle)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetAnalogActionData)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetAnalogActionOrigins)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetGlyphForActionOrigin)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetStringForActionOrigin)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_StopAnalogActionMomentum)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetMotionData)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_TriggerVibration)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_SetLEDColor)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_TriggerHapticPulse)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_TriggerRepeatedHapticPulse)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_ShowBindingPanel)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetInputTypeForHandle)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetControllerForGamepadIndex)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetGamepadIndexForController)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetStringForXboxOrigin)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetGlyphForXboxOrigin)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_GetActionOriginFromXboxOrigin)
+ VTABLE_ADD_FUNC(winISteamInput_SteamInput001_TranslateActionOrigin)
+ );
+#ifndef __GNUC__
+}
+#endif
+
+winISteamInput_SteamInput001 *create_winISteamInput_SteamInput001(void *linux_side)
+{
+ winISteamInput_SteamInput001 *r = HeapAlloc(GetProcessHeap(), 0, sizeof(winISteamInput_SteamInput001));
+ TRACE("-> %p\n", r);
+ r->vtable = &winISteamInput_SteamInput001_vtable;
+ r->linux_side = linux_side;
+ return r;
+}
+
diff --git a/lsteamclient/win_constructors.h b/lsteamclient/win_constructors.h
index 7daa53fa..7511f51f 100644
--- a/lsteamclient/win_constructors.h
+++ b/lsteamclient/win_constructors.h
@@ -13,6 +13,7 @@ extern void *create_winISteamScreenshots_STEAMSCREENSHOTS_INTERFACE_VERSION003(v
extern void *create_winISteamMusic_STEAMMUSIC_INTERFACE_VERSION001(void *);
extern void *create_winISteamMusicRemote_STEAMMUSICREMOTE_INTERFACE_VERSION001(void *);
extern void *create_winISteamHTTP_STEAMHTTP_INTERFACE_VERSION003(void *);
+extern void *create_winISteamInput_SteamInput001(void *);
extern void *create_winISteamController_SteamController007(void *);
extern void *create_winISteamUGC_STEAMUGC_INTERFACE_VERSION012(void *);
extern void *create_winISteamAppList_STEAMAPPLIST_INTERFACE_VERSION001(void *);
diff --git a/lsteamclient/win_constructors_table.dat b/lsteamclient/win_constructors_table.dat
index 9e799ee8..758eb804 100644
--- a/lsteamclient/win_constructors_table.dat
+++ b/lsteamclient/win_constructors_table.dat
@@ -13,6 +13,7 @@
{"STEAMMUSIC_INTERFACE_VERSION001", &create_winISteamMusic_STEAMMUSIC_INTERFACE_VERSION001},
{"STEAMMUSICREMOTE_INTERFACE_VERSION001", &create_winISteamMusicRemote_STEAMMUSICREMOTE_INTERFACE_VERSION001},
{"STEAMHTTP_INTERFACE_VERSION003", &create_winISteamHTTP_STEAMHTTP_INTERFACE_VERSION003},
+ {"SteamInput001", &create_winISteamInput_SteamInput001},
{"SteamController007", &create_winISteamController_SteamController007},
{"STEAMUGC_INTERFACE_VERSION012", &create_winISteamUGC_STEAMUGC_INTERFACE_VERSION012},
{"STEAMAPPLIST_INTERFACE_VERSION001", &create_winISteamAppList_STEAMAPPLIST_INTERFACE_VERSION001},