21 #include "../../SDL_internal.h"
34 typedef struct _HIDD_ATTRIBUTES
101 USHORT Reserved2[ 5 ];
138 USHORT Reserved[ 17 ];
160 #define HIDP_ERROR_CODES( p1, p2 ) ((NTSTATUS)(((p1) << 28) | (0x11 << 16) | (p2)))
161 #define HIDP_STATUS_SUCCESS HIDP_ERROR_CODES( 0x0, 0x0000 )
162 #define HIDP_STATUS_NULL HIDP_ERROR_CODES( 0x8, 0x0001 )
163 #define HIDP_STATUS_INVALID_PREPARSED_DATA HIDP_ERROR_CODES( 0xC, 0x0001 )
164 #define HIDP_STATUS_INVALID_REPORT_TYPE HIDP_ERROR_CODES( 0xC, 0x0002 )
165 #define HIDP_STATUS_INVALID_REPORT_LENGTH HIDP_ERROR_CODES( 0xC, 0x0003 )
166 #define HIDP_STATUS_USAGE_NOT_FOUND HIDP_ERROR_CODES( 0xC, 0x0004 )
167 #define HIDP_STATUS_VALUE_OUT_OF_RANGE HIDP_ERROR_CODES( 0xC, 0x0005 )
168 #define HIDP_STATUS_BAD_LOG_PHY_VALUES HIDP_ERROR_CODES( 0xC, 0x0006 )
169 #define HIDP_STATUS_BUFFER_TOO_SMALL HIDP_ERROR_CODES( 0xC, 0x0007 )
170 #define HIDP_STATUS_INTERNAL_ERROR HIDP_ERROR_CODES( 0xC, 0x0008 )
171 #define HIDP_STATUS_I8042_TRANS_UNKNOWN HIDP_ERROR_CODES( 0xC, 0x0009 )
172 #define HIDP_STATUS_INCOMPATIBLE_REPORT_ID HIDP_ERROR_CODES( 0xC, 0x000A )
173 #define HIDP_STATUS_NOT_VALUE_ARRAY HIDP_ERROR_CODES( 0xC, 0x000B )
174 #define HIDP_STATUS_IS_VALUE_ARRAY HIDP_ERROR_CODES( 0xC, 0x000C )
175 #define HIDP_STATUS_DATA_INDEX_NOT_FOUND HIDP_ERROR_CODES( 0xC, 0x000D )
176 #define HIDP_STATUS_DATA_INDEX_OUT_OF_RANGE HIDP_ERROR_CODES( 0xC, 0x000E )
177 #define HIDP_STATUS_BUTTON_NOT_PRESSED HIDP_ERROR_CODES( 0xC, 0x000F )
178 #define HIDP_STATUS_REPORT_DOES_NOT_EXIST HIDP_ERROR_CODES( 0xC, 0x0010 )
179 #define HIDP_STATUS_NOT_IMPLEMENTED HIDP_ERROR_CODES( 0xC, 0x0020 )
185 typedef BOOLEAN (WINAPI *
HidD_GetString_t)(HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength);
BOOLEAN(WINAPI * HidD_GetString_t)(HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength)
struct HIDP_CAPS * PHIDP_CAPS
struct HIDP_VALUE_CAPS * PHIDP_VALUE_CAPS
HidD_FreePreparsedData_t SDL_HidD_FreePreparsedData
HidP_GetCaps_t SDL_HidP_GetCaps
NTSTATUS(WINAPI * HidP_GetValueCaps_t)(HIDP_REPORT_TYPE ReportType, PHIDP_VALUE_CAPS ValueCaps, PUSHORT ValueCapsLength, PHIDP_PREPARSED_DATA PreparsedData)
HidP_GetButtonCaps_t SDL_HidP_GetButtonCaps
HidD_GetString_t SDL_HidD_GetManufacturerString
HidD_GetPreparsedData_t SDL_HidD_GetPreparsedData
void WIN_UnloadHIDDLL(void)
NTSTATUS(WINAPI * HidP_GetCaps_t)(PHIDP_PREPARSED_DATA PreparsedData, PHIDP_CAPS Capabilities)
struct HIDP_BUTTON_CAPS * PHIDP_BUTTON_CAPS
BOOLEAN(WINAPI * HidD_GetPreparsedData_t)(HANDLE HidDeviceObject, PHIDP_PREPARSED_DATA *PreparsedData)
HidP_MaxDataListLength_t SDL_HidP_MaxDataListLength
NTSTATUS(WINAPI * HidP_GetData_t)(HIDP_REPORT_TYPE ReportType, PHIDP_DATA DataList, PULONG DataLength, PHIDP_PREPARSED_DATA PreparsedData, PCHAR Report, ULONG ReportLength)
HidP_GetValueCaps_t SDL_HidP_GetValueCaps
struct _HIDP_PREPARSED_DATA * PHIDP_PREPARSED_DATA
BOOLEAN(WINAPI * HidD_FreePreparsedData_t)(PHIDP_PREPARSED_DATA PreparsedData)
NTSTATUS(WINAPI * HidP_GetButtonCaps_t)(HIDP_REPORT_TYPE ReportType, PHIDP_BUTTON_CAPS ButtonCaps, PUSHORT ButtonCapsLength, PHIDP_PREPARSED_DATA PreparsedData)
struct HIDP_DATA * PHIDP_DATA
HidP_GetData_t SDL_HidP_GetData
ULONG(WINAPI * HidP_MaxDataListLength_t)(HIDP_REPORT_TYPE ReportType, PHIDP_PREPARSED_DATA PreparsedData)
HidD_GetString_t SDL_HidD_GetProductString
BOOLEAN IsDesignatorRange
USHORT NumberFeatureButtonCaps
USHORT NumberOutputValueCaps
USHORT NumberFeatureDataIndices
USHORT FeatureReportByteLength
USHORT NumberInputValueCaps
USHORT OutputReportByteLength
USHORT NumberOutputButtonCaps
USHORT NumberInputDataIndices
USHORT InputReportByteLength
USHORT NumberLinkCollectionNodes
USHORT NumberOutputDataIndices
USHORT NumberInputButtonCaps
USHORT NumberFeatureValueCaps
BOOLEAN IsDesignatorRange