mirror of
https://github.com/reactos/reactos.git
synced 2024-08-26 13:18:51 +00:00
102 lines
2.7 KiB
C
102 lines
2.7 KiB
C
#ifndef _HIDPDDI_H
|
|
#define _HIDPDDI_H
|
|
|
|
#include "hidusage.h"
|
|
#include "hidpi.h"
|
|
|
|
typedef struct _HIDP_COLLECTION_DESC
|
|
{
|
|
USAGE UsagePage;
|
|
USAGE Usage;
|
|
UCHAR CollectionNumber;
|
|
UCHAR Reserved [15];
|
|
USHORT InputLength;
|
|
USHORT OutputLength;
|
|
USHORT FeatureLength;
|
|
USHORT PreparsedDataLength;
|
|
PHIDP_PREPARSED_DATA PreparsedData;
|
|
}HIDP_COLLECTION_DESC, *PHIDP_COLLECTION_DESC;
|
|
|
|
typedef struct _HIDP_REPORT_IDS
|
|
{
|
|
UCHAR ReportID;
|
|
UCHAR CollectionNumber;
|
|
USHORT InputLength;
|
|
USHORT OutputLength;
|
|
USHORT FeatureLength;
|
|
}HIDP_REPORT_IDS, *PHIDP_REPORT_IDS;
|
|
|
|
typedef struct _HIDP_GETCOLDESC_DBG
|
|
{
|
|
ULONG BreakOffset;
|
|
ULONG ErrorCode;
|
|
ULONG Args[6];
|
|
}HIDP_GETCOLDESC_DBG, *PHIDP_GETCOLDESC_DBG;
|
|
|
|
typedef struct _HIDP_DEVICE_DESC
|
|
{
|
|
PHIDP_COLLECTION_DESC CollectionDesc;
|
|
ULONG CollectionDescLength;
|
|
PHIDP_REPORT_IDS ReportIDs;
|
|
ULONG ReportIDsLength;
|
|
HIDP_GETCOLDESC_DBG Dbg;
|
|
}HIDP_DEVICE_DESC, *PHIDP_DEVICE_DESC;
|
|
|
|
NTSTATUS
|
|
NTAPI
|
|
HidP_GetCollectionDescription(
|
|
IN PHIDP_REPORT_DESCRIPTOR ReportDesc,
|
|
IN ULONG DescLength,
|
|
IN POOL_TYPE PoolType,
|
|
OUT PHIDP_DEVICE_DESC DeviceDescription
|
|
);
|
|
|
|
VOID
|
|
NTAPI
|
|
HidP_FreeCollectionDescription (
|
|
IN PHIDP_DEVICE_DESC DeviceDescription
|
|
);
|
|
|
|
NTSTATUS
|
|
NTAPI
|
|
HidP_SysPowerEvent (
|
|
IN PCHAR HidPacket,
|
|
IN USHORT HidPacketLength,
|
|
IN PHIDP_PREPARSED_DATA Ppd,
|
|
OUT PULONG OutputBuffer
|
|
);
|
|
|
|
NTSTATUS
|
|
NTAPI
|
|
HidP_SysPowerCaps (
|
|
IN PHIDP_PREPARSED_DATA Ppd,
|
|
OUT PULONG OutputBuffer
|
|
);
|
|
|
|
#define HIDP_GETCOLDESC_SUCCESS 0x00
|
|
#define HIDP_GETCOLDESC_RESOURCES 0x01
|
|
#define HIDP_GETCOLDESC_BUFFER 0x02
|
|
#define HIDP_GETCOLDESC_LINK_RESOURCES 0x03
|
|
#define HIDP_GETCOLDESC_UNEXP_END_COL 0x04
|
|
#define HIDP_GETCOLDESC_PREPARSE_RESOURCES 0x05
|
|
#define HIDP_GETCOLDESC_ONE_BYTE 0x06
|
|
#define HIDP_GETCOLDESC_TWO_BYTE 0x07
|
|
#define HIDP_GETCOLDESC_FOUR_BYTE 0x08
|
|
#define HIDP_GETCOLDESC_BYTE_ALLIGN 0x09
|
|
#define HIDP_GETCOLDESC_MAIN_ITEM_NO_USAGE 0x0A
|
|
#define HIDP_GETCOLDESC_TOP_COLLECTION_USAGE 0x0B
|
|
#define HIDP_GETCOLDESC_PUSH_RESOURCES 0x10
|
|
#define HIDP_GETCOLDESC_ITEM_UNKNOWN 0x12
|
|
#define HIDP_GETCOLDESC_REPORT_ID 0x13
|
|
#define HIDP_GETCOLDESC_BAD_REPORT_ID 0x14
|
|
#define HIDP_GETCOLDESC_NO_REPORT_ID 0x15
|
|
#define HIDP_GETCOLDESC_DEFAULT_ID_ERROR 0x16
|
|
#define HIDP_GETCOLDESC_NO_DATA 0x1A
|
|
#define HIDP_GETCOLDESC_INVALID_MAIN_ITEM 0x1B
|
|
#define HIDP_GETCOLDESC_NO_CLOSE_DELIMITER 0x20
|
|
#define HIDP_GETCOLDESC_NOT_VALID_DELIMITER 0x21
|
|
#define HIDP_GETCOLDESC_MISMATCH_OC_DELIMITER 0x22
|
|
#define HIDP_GETCOLDESC_UNSUPPORTED 0x40
|
|
|
|
#endif
|