diff --git a/reactos/sdk/include/psdk/xinput.h b/reactos/sdk/include/psdk/xinput.h index 98d23a30af7..ccdc0233431 100644 --- a/reactos/sdk/include/psdk/xinput.h +++ b/reactos/sdk/include/psdk/xinput.h @@ -170,11 +170,27 @@ typedef struct _XINPUT_GAMEPAD { SHORT sThumbRY; } XINPUT_GAMEPAD, *PXINPUT_GAMEPAD; +typedef struct _XINPUT_GAMEPAD_EX { + WORD wButtons; + BYTE bLeftTrigger; + BYTE bRightTrigger; + SHORT sThumbLX; + SHORT sThumbLY; + SHORT sThumbRX; + SHORT sThumbRY; + DWORD dwPaddingReserved; +} XINPUT_GAMEPAD_EX, *PXINPUT_GAMEPAD_EX; + typedef struct _XINPUT_STATE { DWORD dwPacketNumber; XINPUT_GAMEPAD Gamepad; } XINPUT_STATE, *PXINPUT_STATE; +typedef struct _XINPUT_STATE_EX { + DWORD dwPacketNumber; + XINPUT_GAMEPAD_EX Gamepad; +} XINPUT_STATE_EX, *PXINPUT_STATE_EX; + /* * Defines the structure of how much vibration is set on both the * right and left motors in a joystick. If you're not using a 360 @@ -232,6 +248,8 @@ DWORD WINAPI XInputGetCapabilities(DWORD, DWORD, XINPUT_CAPABILITIES*); DWORD WINAPI XInputGetDSoundAudioDeviceGuids(DWORD, GUID*, GUID*); DWORD WINAPI XInputGetBatteryInformation(DWORD, BYTE, XINPUT_BATTERY_INFORMATION*); +DWORD WINAPI XInputGetStateEx(DWORD, XINPUT_STATE_EX*); + #ifdef __cplusplus } #endif