⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hid.hpp

📁 human interface devices.zip 一套组件
💻 HPP
📖 第 1 页 / 共 2 页
字号:
// Borland C++ Builder
// Copyright (c) 1995, 2002 by Borland Software Corporation
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Hid.pas' rev: 6.00

#ifndef HidHPP
#define HidHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <Windows.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Hid
{
//-- type declarations -------------------------------------------------------
typedef Word *PUsage;

typedef Word TUsage;

typedef unsigned THIDPKeyboardModifierState;

#pragma option push -b-
enum THIDVariantFlags { Range, NotRange };
#pragma option pop

struct HIDD_CONFIGURATION;
typedef HIDD_CONFIGURATION *PHIDDConfiguration;

#pragma pack(push, 4)
struct HIDD_CONFIGURATION
{
	void *cookie;
	unsigned size;
	unsigned RingBufferSize;
} ;
#pragma pack(pop)

typedef HIDD_CONFIGURATION  THIDDConfiguration;

struct HIDD_ATTRIBUTES;
typedef HIDD_ATTRIBUTES *PHIDDAttributes;

#pragma pack(push, 4)
struct HIDD_ATTRIBUTES
{
	unsigned Size;
	Word VendorID;
	Word ProductID;
	Word VersionNumber;
} ;
#pragma pack(pop)

typedef HIDD_ATTRIBUTES  THIDDAttributes;

typedef void *PHIDPPreparsedData;

typedef unsigned *PHIDPReportType;

typedef unsigned THIDPReportType;

typedef unsigned *PHIDPKeyboardDirection;

typedef unsigned THIDPKeyboardDirection;

struct USAGE_AND_PAGE;
typedef USAGE_AND_PAGE *PUsageAndPage;

#pragma pack(push, 2)
struct USAGE_AND_PAGE
{
	Word Usage;
	Word UsagePage;
} ;
#pragma pack(pop)

typedef USAGE_AND_PAGE  TUsageAndPage;

struct HIDP_BUTTON_CAPS;
typedef HIDP_BUTTON_CAPS *PHIDPButtonCaps;

#pragma pack(push, 4)
struct HIDP_BUTTON_CAPS
{
	Word UsagePage;
	Byte ReportID;
	Byte IsAlias;
	Word BitField;
	Word LinkCollection;
	Word LinkUsage;
	Word LinkUsagePage;
	Byte IsRange;
	Byte IsStringRange;
	Byte IsDesignatorRange;
	Byte IsAbsolute;
	unsigned Reserved[10];
	union
	{
		struct 
		{
			Word Usage;
			Word Reserved1;
			Word StringIndex;
			Word Reserved2;
			Word DesignatorIndex;
			Word Reserved3;
			Word DataIndex;
			Word Reserved4;
			
		};
		struct 
		{
			Word UsageMin;
			Word UsageMax;
			Word StringMin;
			Word StringMax;
			Word DesignatorMin;
			Word DesignatorMax;
			Word DataIndexMin;
			Word DataIndexMax;
			
		};
		
	};
} ;
#pragma pack(pop)

typedef HIDP_BUTTON_CAPS  THIDPButtonCaps;

struct HIDP_VALUE_CAPS;
typedef HIDP_VALUE_CAPS *PHIDPValueCaps;

#pragma pack(push, 4)
struct HIDP_VALUE_CAPS
{
	Word UsagePage;
	Byte ReportID;
	Byte IsAlias;
	Word BitField;
	Word LinkCollection;
	Word LinkUsage;
	Word LinkUsagePage;
	Byte IsRange;
	Byte IsStringRange;
	Byte IsDesignatorRange;
	Byte IsAbsolute;
	Byte HasNull;
	Byte Reserved;
	Word BitSize;
	Word ReportCount;
	Word Reserved_[5];
	unsigned UnitsExp;
	unsigned Units;
	int LogicalMin;
	int LogicalMax;
	int PhysicalMin;
	int PhysicalMax;
	union
	{
		struct 
		{
			Word Usage;
			Word Reserved1;
			Word StringIndex;
			Word Reserved2;
			Word DesignatorIndex;
			Word Reserved3;
			Word DataIndex;
			Word Reserved4;
			
		};
		struct 
		{
			Word UsageMin;
			Word UsageMax;
			Word StringMin;
			Word StringMax;
			Word DesignatorMin;
			Word DesignatorMax;
			Word DataIndexMin;
			Word DataIndexMax;
			
		};
		
	};
} ;
#pragma pack(pop)

typedef HIDP_VALUE_CAPS  THIDPValueCaps;

struct HIDP_LINK_COLLECTION_NODE;
typedef HIDP_LINK_COLLECTION_NODE *PHIDPLinkCollectionNode;

#pragma pack(push, 4)
struct HIDP_LINK_COLLECTION_NODE
{
	Word LinkUsage;
	Word LinkUsagePage;
	Word Parent;
	Word NumberOfChildren;
	Word NextSibling;
	Word FirstChild;
	Byte CollectionType;
	Byte IsAlias;
	Word Reserved;
	void *UserContext;
} ;
#pragma pack(pop)

typedef HIDP_LINK_COLLECTION_NODE  THIDPLinkCollectionNode;

typedef char *PHIDPReportDescriptor;

struct HIDP_CAPS;
typedef HIDP_CAPS *PHIDPCaps;

#pragma pack(push, 2)
struct HIDP_CAPS
{
	Word Usage;
	Word UsagePage;
	Word InputReportByteLength;
	Word OutputReportByteLength;
	Word FeatureReportByteLength;
	Word Reserved[17];
	Word NumberLinkCollectionNodes;
	Word NumberInputButtonCaps;
	Word NumberInputValueCaps;
	Word NumberInputDataIndices;
	Word NumberOutputButtonCaps;
	Word NumberOutputValueCaps;
	Word NumberOutputDataIndices;
	Word NumberFeatureButtonCaps;
	Word NumberFeatureValueCaps;
	Word NumberFeatureDataIndices;
} ;
#pragma pack(pop)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -