[1166] | 1 | /*
|
---|
| 2 | * hidsdi.h
|
---|
| 3 | *
|
---|
| 4 | * Public interface for USB HID user space functions.
|
---|
| 5 | *
|
---|
| 6 | * Contributors:
|
---|
| 7 | * Created by Simon Josefsson <simon@josefsson.org>
|
---|
| 8 | * Extended by Kai Tietz
|
---|
| 9 | *
|
---|
| 10 | * THIS SOFTWARE IS NOT COPYRIGHTED
|
---|
| 11 | *
|
---|
| 12 | * This source code is offered for use in the public domain. You may
|
---|
| 13 | * use, modify or distribute it freely.
|
---|
| 14 | *
|
---|
| 15 | * This code is distributed in the hope that it will be useful but
|
---|
| 16 | * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
|
---|
| 17 | * DISCLAIMED. This includes but is not limited to warranties of
|
---|
| 18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
---|
| 19 | *
|
---|
| 20 | */
|
---|
| 21 |
|
---|
| 22 | #include <winapifamily.h>
|
---|
| 23 |
|
---|
| 24 | #ifndef _HIDSDI_H
|
---|
| 25 | #define _HIDSDI_H
|
---|
| 26 |
|
---|
| 27 | #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
---|
| 28 |
|
---|
| 29 | #include <pshpack4.h>
|
---|
| 30 |
|
---|
| 31 | typedef LONG NTSTATUS;
|
---|
| 32 |
|
---|
| 33 | #include "hidusage.h"
|
---|
| 34 | #include "hidpi.h"
|
---|
| 35 |
|
---|
| 36 | typedef struct _HIDD_CONFIGURATION {
|
---|
| 37 | PVOID cookie;
|
---|
| 38 | ULONG size;
|
---|
| 39 | ULONG RingBufferSize;
|
---|
| 40 | } HIDD_CONFIGURATION,*PHIDD_CONFIGURATION;
|
---|
| 41 |
|
---|
| 42 | typedef struct _HIDD_ATTRIBUTES {
|
---|
| 43 | ULONG Size;
|
---|
| 44 | USHORT VendorID;
|
---|
| 45 | USHORT ProductID;
|
---|
| 46 | USHORT VersionNumber;
|
---|
| 47 | } HIDD_ATTRIBUTES,*PHIDD_ATTRIBUTES;
|
---|
| 48 |
|
---|
| 49 | BOOLEAN NTAPI HidD_FlushQueue (HANDLE HidDeviceObject);
|
---|
| 50 | BOOLEAN NTAPI HidD_FreePreparsedData (PHIDP_PREPARSED_DATA PreparsedData);
|
---|
| 51 | BOOLEAN NTAPI HidD_GetAttributes (HANDLE HidDeviceObject, PHIDD_ATTRIBUTES Attributes);
|
---|
| 52 | BOOLEAN NTAPI HidD_GetConfiguration (HANDLE HidDeviceObject, PHIDD_CONFIGURATION Configuration, ULONG ConfigurationLength);
|
---|
| 53 | BOOLEAN NTAPI HidD_GetFeature (HANDLE HidDeviceObject, PVOID ReportBuffer, ULONG ReportBufferLength);
|
---|
| 54 | void NTAPI HidD_GetHidGuid (LPGUID HidGuid);
|
---|
| 55 | BOOLEAN NTAPI HidD_GetInputReport (HANDLE HidDeviceObject, PVOID ReportBuffer, ULONG ReportBufferLength);
|
---|
| 56 | BOOLEAN NTAPI HidD_GetIndexedString (HANDLE HidDeviceObject, ULONG StringIndex, PVOID Buffer, ULONG BufferLength);
|
---|
| 57 | BOOLEAN NTAPI HidD_GetManufacturerString (HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength);
|
---|
| 58 | BOOLEAN NTAPI HidD_GetMsGenreDescriptor (HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength);
|
---|
| 59 | BOOLEAN NTAPI HidD_GetNumInputBuffers (HANDLE HidDeviceObject, PULONG NumberBuffers);
|
---|
| 60 | BOOLEAN NTAPI HidD_GetPhysicalDescriptor (HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength);
|
---|
| 61 | BOOLEAN NTAPI HidD_GetPreparsedData (HANDLE HidDeviceObject, PHIDP_PREPARSED_DATA *PreparsedData);
|
---|
| 62 | BOOLEAN NTAPI HidD_GetProductString (HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength);
|
---|
| 63 | BOOLEAN NTAPI HidD_GetSerialNumberString (HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength);
|
---|
| 64 | BOOLEAN NTAPI HidD_SetConfiguration (HANDLE HidDeviceObject, PHIDD_CONFIGURATION Configuration, ULONG ConfigurationLength);
|
---|
| 65 | BOOLEAN NTAPI HidD_SetFeature (HANDLE HidDeviceObject, PVOID ReportBuffer, ULONG ReportBufferLength);
|
---|
| 66 | BOOLEAN NTAPI HidD_SetNumInputBuffers (HANDLE HidDeviceObject, ULONG NumberBuffers);
|
---|
| 67 | BOOLEAN NTAPI HidD_SetOutputReport (HANDLE HidDeviceObject, PVOID ReportBuffer, ULONG ReportBufferLength);
|
---|
| 68 |
|
---|
| 69 | #include <poppack.h>
|
---|
| 70 |
|
---|
| 71 | #endif
|
---|
| 72 | #endif
|
---|