| /******************************************************* |
| HIDAPI - Multi-Platform library for |
| communication with HID devices. |
| |
| libusb/hidapi Team |
| |
| Copyright 2022, All Rights Reserved. |
| |
| At the discretion of the user of this library, |
| this software may be licensed under the terms of the |
| GNU General Public License v3, a BSD-Style license, or the |
| original HIDAPI license as outlined in the LICENSE.txt, |
| LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt |
| files located at the root of the source distribution. |
| These files may also be found in the public source |
| code repository located at: |
| https://github.com/libusb/hidapi . |
| ********************************************************/ |
| |
| #ifndef HIDAPI_HIDPI_H |
| #define HIDAPI_HIDPI_H |
| |
| #ifdef HIDAPI_USE_DDK |
| |
| #include <hidpi.h> |
| |
| #else |
| |
| /* This part of the header mimics hidpi.h, |
| but only what is used by HIDAPI */ |
| |
| typedef enum _HIDP_REPORT_TYPE |
| { |
| HidP_Input, |
| HidP_Output, |
| HidP_Feature |
| } HIDP_REPORT_TYPE; |
| |
| typedef struct _HIDP_PREPARSED_DATA * PHIDP_PREPARSED_DATA; |
| |
| typedef struct _HIDP_CAPS |
| { |
| USAGE Usage; |
| USAGE UsagePage; |
| USHORT InputReportByteLength; |
| USHORT OutputReportByteLength; |
| USHORT FeatureReportByteLength; |
| USHORT Reserved[17]; |
| |
| USHORT NumberLinkCollectionNodes; |
| |
| USHORT NumberInputButtonCaps; |
| USHORT NumberInputValueCaps; |
| USHORT NumberInputDataIndices; |
| |
| USHORT NumberOutputButtonCaps; |
| USHORT NumberOutputValueCaps; |
| USHORT NumberOutputDataIndices; |
| |
| USHORT NumberFeatureButtonCaps; |
| USHORT NumberFeatureValueCaps; |
| USHORT NumberFeatureDataIndices; |
| } HIDP_CAPS, *PHIDP_CAPS; |
| |
| #define HIDP_STATUS_SUCCESS 0x00110000 |
| #define HIDP_STATUS_INVALID_PREPARSED_DATA 0xc0110001 |
| |
| typedef NTSTATUS (__stdcall *HidP_GetCaps_)(PHIDP_PREPARSED_DATA preparsed_data, PHIDP_CAPS caps); |
| |
| #endif |
| |
| #endif /* HIDAPI_HIDPI_H */ |