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
|
---|