ReactOS 0.4.15-dev-8231-g29a56f3
hidusb.h
Go to the documentation of this file.
1#pragma once
2
3#define _HIDPI_
4#define _HIDPI_NO_FUNCTION_MACROS_
5#define NDEBUG
6#include <ntddk.h>
7#include <hidport.h>
8#include <debug.h>
9#include <hubbusif.h>
10#include <usbbusif.h>
11#include <usbioctl.h>
12#include <usb.h>
13#include <usbdlib.h>
14
15#include <hidport.h>
16
17typedef struct
18{
19 //
20 // event for completion
21 //
23
24 //
25 // device descriptor
26 //
28
29 //
30 // configuration descriptor
31 //
33
34 //
35 // interface information
36 //
38
39 //
40 // configuration handle
41 //
43
44 //
45 // hid descriptor
46 //
48
50
51typedef struct
52{
53 //
54 // request irp
55 //
57
58 //
59 // work item
60 //
62
63 //
64 // device object
65 //
67
69
70
74 IN USHORT UrbFunction,
75 IN USHORT UrbLength,
76 IN OUT PVOID *UrbBuffer,
77 IN OUT PULONG UrbBufferLength,
80 IN USHORT LanguageIndex);
81
85 IN PURB Urb);
86
87#define USB_SET_IDLE_REQUEST 0xA
88#define USB_GET_PROTOCOL_REQUEST 0x3
89
90#define HIDUSB_TAG 'UdiH'
91#define HIDUSB_URB_TAG 'rUiH'
LONG NTSTATUS
Definition: precomp.h:26
struct HID_USB_RESET_CONTEXT * PHID_USB_RESET_CONTEXT
NTSTATUS Hid_DispatchUrb(IN PDEVICE_OBJECT DeviceObject, IN PURB Urb)
Definition: hidusb.c:960
struct HID_USB_DEVICE_EXTENSION * PHID_USB_DEVICE_EXTENSION
NTSTATUS Hid_GetDescriptor(IN PDEVICE_OBJECT DeviceObject, IN USHORT UrbFunction, IN USHORT UrbLength, IN OUT PVOID *UrbBuffer, IN OUT PULONG UrbBufferLength, IN UCHAR DescriptorType, IN UCHAR Index, IN USHORT LanguageIndex)
Definition: hidusb.c:1052
unsigned short USHORT
Definition: pedump.c:61
USBD_CONFIGURATION_HANDLE ConfigurationHandle
Definition: hidusb.h:42
PHID_DESCRIPTOR HidDescriptor
Definition: hidusb.h:47
PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor
Definition: hidusb.h:32
PUSBD_INTERFACE_INFORMATION InterfaceInfo
Definition: hidusb.h:37
PUSB_DEVICE_DESCRIPTOR DeviceDescriptor
Definition: hidusb.h:27
PDEVICE_OBJECT DeviceObject
Definition: hidusb.h:66
PIO_WORKITEM WorkItem
Definition: hidusb.h:61
Definition: usb.h:529
uint32_t * PULONG
Definition: typedefs.h:59
#define IN
Definition: typedefs.h:39
#define OUT
Definition: typedefs.h:40
_In_ ULONG _In_ PVOID _In_ LONG DescriptorType
Definition: usbdlib.h:160
_In_ WDFCOLLECTION _In_ ULONG Index
_In_ PDEVICE_OBJECT DeviceObject
Definition: wdfdevice.h:2055
unsigned char UCHAR
Definition: xmlstorage.h:181