From 49b71acd5918e8a3b4372a0acaa9e92c3dd10c13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger?= Date: Sat, 26 Aug 2017 22:07:40 +0200 Subject: [PATCH] Rewrote tester to cover parts of new client library --- ViGEmBusShared.h | 7 +++++++ ViGEmClient.h | 14 +++++++------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/ViGEmBusShared.h b/ViGEmBusShared.h index 9d369a6..26c12b2 100644 --- a/ViGEmBusShared.h +++ b/ViGEmBusShared.h @@ -255,6 +255,13 @@ typedef struct _XUSB_REPORT SHORT sThumbRY; } XUSB_REPORT, *PXUSB_REPORT; +VOID FORCEINLINE XUSB_REPORT_INIT( + _Out_ PXUSB_REPORT Report +) +{ + RtlZeroMemory(Report, sizeof(XUSB_REPORT)); +} + // // Data structure used in IOCTL_XUSB_SUBMIT_REPORT requests. // diff --git a/ViGEmClient.h b/ViGEmClient.h index 2961bc1..c7e2328 100644 --- a/ViGEmClient.h +++ b/ViGEmClient.h @@ -48,24 +48,22 @@ typedef enum _VIGEM_ERRORS #define VIGEM_SUCCESS(_val_) (_val_ == VIGEM_ERROR_NONE) -// -// Represents a virtual gamepad object. -// -typedef struct _VIGEM_TARGET *PVIGEM_TARGET; + +typedef struct _VIGEM_CLIENT_T *PVIGEM_CLIENT; +typedef struct _VIGEM_TARGET_T *PVIGEM_TARGET; typedef VOID(CALLBACK* PVIGEM_X360_NOTIFICATION)( - PVIGEM_TARGET Target, + ULONG Index, UCHAR LargeMotor, UCHAR SmallMotor, UCHAR LedNumber); typedef VOID(CALLBACK* PVIGEM_DS4_NOTIFICATION)( - PVIGEM_TARGET Target, + ULONG Index, UCHAR LargeMotor, UCHAR SmallMotor, DS4_LIGHTBAR_COLOR LightbarColor); -typedef struct _VIGEM_CLIENT_T* PVIGEM_CLIENT; PVIGEM_CLIENT vigem_alloc(void); @@ -101,4 +99,6 @@ VIGEM_ERROR vigem_target_x360_update(PVIGEM_CLIENT vigem, PVIGEM_TARGET target, VIGEM_ERROR vigem_target_ds4_update(PVIGEM_CLIENT vigem, PVIGEM_TARGET target, DS4_REPORT report); +ULONG vigem_target_get_index(PVIGEM_TARGET target); + #endif // ViGEmClient_h__