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

📄 hil.h

📁 linux得一些常用命令,以及linux环境下的c编程
💻 H
📖 第 1 页 / 共 2 页
字号:
#define HIL_IDD_DID_ABS_RSVD1_MASK	0xf8	/* Reserved */#define HIL_IDD_DID_ABS_RSVD1		0x98#define HIL_IDD_DID_ABS_TABLET_MASK	0xf8	/* Tablets and digitizers */#define HIL_IDD_DID_ABS_TABLET		0x90#define HIL_IDD_DID_ABS_TSCREEN_MASK	0xfc	/* Touch screens */#define HIL_IDD_DID_ABS_TSCREEN		0x8c#define HIL_IDD_DID_ABS_RSVD2_MASK	0xfc	/* Reserved */#define HIL_IDD_DID_ABS_RSVD2		0x88#define HIL_IDD_DID_ABS_RSVD3_MASK	0xfc	/* Reserved */#define HIL_IDD_DID_ABS_RSVD3		0x80#define HIL_IDD_DID_TYPE_REL		0x60    /* Relative Positioners */#define HIL_IDD_DID_REL_RSVD1_MASK	0xf0	/* Reserved */#define HIL_IDD_DID_REL_RSVD1		0x70#define HIL_IDD_DID_REL_RSVD2_MASK	0xfc	/* Reserved */#define HIL_IDD_DID_REL_RSVD2		0x6c#define HIL_IDD_DID_REL_MOUSE_MASK	0xfc	/* Mouse */#define HIL_IDD_DID_REL_MOUSE		0x68#define HIL_IDD_DID_REL_QUAD_MASK	0xf8	/* Other Quadrature Devices */#define HIL_IDD_DID_REL_QUAD		0x60#define HIL_IDD_DID_TYPE_CHAR		0x40    /* Character Entry */#define HIL_IDD_DID_CHAR_BARCODE_MASK	0xfc	/* Barcode Reader */#define HIL_IDD_DID_CHAR_BARCODE	0x5c#define HIL_IDD_DID_CHAR_RSVD1_MASK	0xfc	/* Reserved */#define HIL_IDD_DID_CHAR_RSVD1		0x58#define HIL_IDD_DID_CHAR_RSVD2_MASK	0xf8	/* Reserved */#define HIL_IDD_DID_CHAR_RSVD2		0x50#define HIL_IDD_DID_CHAR_RSVD3_MASK	0xf0	/* Reserved */#define HIL_IDD_DID_CHAR_RSVD3		0x40#define HIL_IDD_DID_TYPE_OTHER		0x20    /* Miscellaneous */#define HIL_IDD_DID_OTHER_RSVD1_MASK	0xf0	/* Reserved */#define HIL_IDD_DID_OTHER_RSVD1		0x30#define HIL_IDD_DID_OTHER_BARCODE_MASK	0xfc	/* Tone Generator */#define HIL_IDD_DID_OTHER_BARCODE	0x2c#define HIL_IDD_DID_OTHER_RSVD2_MASK	0xfc	/* Reserved */#define HIL_IDD_DID_OTHER_RSVD2		0x28#define HIL_IDD_DID_OTHER_RSVD3_MASK	0xf8	/* Reserved */#define HIL_IDD_DID_OTHER_RSVD3		0x20#define HIL_IDD_DID_TYPE_KEYPAD		0x00	/* Vectra Keyboard *//* IDD record header  */#define HIL_IDD_HEADER_AXSET_MASK	0x03    /* Number of axis in a set */#define HIL_IDD_HEADER_RSC		0x04	/* Supports RSC command */#define HIL_IDD_HEADER_EXD		0x08	/* Supports EXD command */#define HIL_IDD_HEADER_IOD		0x10	/* IOD byte to follow */#define HIL_IDD_HEADER_16BIT		0x20	/* 16 (vs. 8) bit resolution */#define HIL_IDD_HEADER_ABS		0x40	/* Reports Absolute Position */#define HIL_IDD_HEADER_2X_AXIS		0x80	/* Two sets of 1-3 axis *//* I/O Descriptor */#define HIL_IDD_IOD_NBUTTON_MASK	0x07	/* Number of buttons */#define HIL_IDD_IOD_PROXIMITY		0x08	/* Proximity in/out events */#define HIL_IDD_IOD_PROMPT_MASK		0x70	/* Number of prompts/acks */#define HIL_IDD_IOD_PROMPT_SHIFT	4#define HIL_IDD_IOD_PROMPT		0x80	/* Generic prompt/ack */#define HIL_IDD_NUM_AXES_PER_SET(header_packet) \((header_packet) & HIL_IDD_HEADER_AXSET_MASK)#define HIL_IDD_NUM_AXSETS(header_packet) \(2 - !((header_packet) & HIL_IDD_HEADER_2X_AXIS))#define HIL_IDD_LEN(header_packet) \((4 - !(header_packet & HIL_IDD_HEADER_IOD) -			\  2 * !(HIL_IDD_NUM_AXES_PER_SET(header_packet))) +		\  2 * HIL_IDD_NUM_AXES_PER_SET(header_packet) *			\ !!((header_packet) & HIL_IDD_HEADER_ABS))/* The following HIL_IDD_* macros assume you have an array of  * packets and/or unpacked 8-bit data in the order that they  * were received. */#define HIL_IDD_AXIS_COUNTS_PER_M(header_ptr) \(!(HIL_IDD_NUM_AXSETS(*(header_ptr))) ? -1 :			\(((*(header_ptr + 1) & HIL_PKT_DATA_MASK) +			\  ((*(header_ptr + 2) & HIL_PKT_DATA_MASK)) << 8)		\* ((*(header_ptr) & HIL_IDD_HEADER_16BIT) ? 100 : 1)))#define HIL_IDD_AXIS_MAX(header_ptr, __axnum) \((!(*(header_ptr) & HIL_IDD_HEADER_ABS) ||			\  (HIL_IDD_NUM_AXES_PER_SET(*(header_ptr)) <= __axnum)) ? 0 :	\ ((HIL_PKT_DATA_MASK & *((header_ptr) + 3 + 2 * __axnum)) +	\  ((HIL_PKT_DATA_MASK & *((header_ptr) + 4 + 2 * __axnum)) << 8)))#define HIL_IDD_IOD(header_ptr) \(*(header_ptr + HIL_IDD_LEN((*header_ptr)) - 1))#define HIL_IDD_HAS_GEN_PROMPT(header_ptr) \((*header_ptr & HIL_IDD_HEADER_IOD) &&				\ (HIL_IDD_IOD(header_ptr) & HIL_IDD_IOD_PROMPT))#define HIL_IDD_HAS_GEN_PROXIMITY(header_ptr) \((*header_ptr & HIL_IDD_HEADER_IOD) &&				\ (HIL_IDD_IOD(header_ptr) & HIL_IDD_IOD_PROXIMITY))#define HIL_IDD_NUM_BUTTONS(header_ptr) \((*header_ptr & HIL_IDD_HEADER_IOD) ?				\ (HIL_IDD_IOD(header_ptr) & HIL_IDD_IOD_NBUTTON_MASK) : 0)#define HIL_IDD_NUM_PROMPTS(header_ptr) \((*header_ptr & HIL_IDD_HEADER_IOD) ?				\ ((HIL_IDD_IOD(header_ptr) & HIL_IDD_IOD_NPROMPT_MASK)		\  >> HIL_IDD_IOD_PROMPT_SHIFT) : 0)/* The response to HIL EXD commands -- the "extended describe record" */#define	HIL_EXD_HEADER_WRG		0x03	/* Supports type2 WRG */#define HIL_EXD_HEADER_WRG_TYPE1	0x01	/* Supports type1 WRG */#define	HIL_EXD_HEADER_WRG_TYPE2	0x02	/* Supports type2 WRG */#define	HIL_EXD_HEADER_RRG		0x04	/* Supports RRG command */#define	HIL_EXD_HEADER_RNM		0x10	/* Supports RNM command */#define HIL_EXD_HEADER_RST		0x20	/* Supports RST command */#define HIL_EXD_HEADER_LOCALE		0x40	/* Contains locale code */#define HIL_EXD_NUM_RRG(header_ptr) \((*header_ptr & HIL_EXD_HEADER_RRG) ? \ (*(header_ptr + 1) & HIL_PKT_DATA_MASK) : 0)#define HIL_EXD_NUM_WWG(header_ptr) \((*header_ptr & HIL_EXD_HEADER_WRG) ?				\ (*(header_ptr + 2 - !(*header_ptr & HIL_EXD_HEADER_RRG)) &	\    HIL_PKT_DATA_MASK) : 0)#define HIL_EXD_LEN(header_ptr) \(!!(*header_ptr & HIL_EXD_HEADER_RRG) +				\ !!(*header_ptr & HIL_EXD_HEADER_WRG) +				\ !!(*header_ptr & HIL_EXD_HEADER_LOCALE) +			\ 2 * !!(*header_ptr & HIL_EXD_HEADER_WRG_TYPE2) + 1)#define HIL_EXD_LOCALE(header_ptr) \(!(*header_ptr & HIL_EXD_HEADER_LOCALE) ? -1 :			\ (*(header_ptr + HIL_EXD_LEN(header_ptr) - 1) & HIL_PKT_DATA_MASK))#define HIL_EXD_WRG_TYPE2_LEN(header_ptr) \(!(*header_ptr & HIL_EXD_HEADER_WRG_TYPE2) ? -1	:			\ (*(header_ptr + HIL_EXD_LEN(header_ptr) - 2 -                  	\    !!(*header_ptr & HIL_EXD_HEADER_LOCALE)) & HIL_PKT_DATA_MASK) +	\ ((*(header_ptr + HIL_EXD_LEN(header_ptr) - 1 -				\     !!(*header_ptr & HIL_EXD_HEADER_LOCALE)) & HIL_PKT_DATA_MASK) << 8))/* Device locale codes. */ /* Last defined locale code.  Everything above this is "Reserved",   and note that this same table applies to the Device ID Byte where    keyboards may have a nationality code which is only 5 bits. */#define HIL_LOCALE_MAX 0x1f/* Map to hopefully useful strings.  I was trying to make these look   like locale.aliases strings do; maybe that isn't the right table to   emulate.  In either case, I didn't have much to work on. */#define HIL_LOCALE_MAP \"",			/* 0x00 Reserved */		\"",			/* 0x01 Reserved */		\"",			/* 0x02 Reserved */		\"swiss.french",		/* 0x03 Swiss/French */		\"portuguese",		/* 0x04 Portuguese */		\"arabic",		/* 0x05 Arabic */		\"hebrew",		/* 0x06 Hebrew */		\"english.canadian",	/* 0x07 Canadian English */	\"turkish",		/* 0x08 Turkish */		\"greek",		/* 0x09 Greek */		\"thai",			/* 0x0a Thai (Thailand) */	\"italian",		/* 0x0b Italian */		\"korean",		/* 0x0c Hangul (Korea) */	\"dutch",		/* 0x0d Dutch */		\"swedish",		/* 0x0e Swedish */		\"german",		/* 0x0f German */		\"chinese",		/* 0x10 Chinese-PRC */		\"chinese",		/* 0x11 Chinese-ROC */		\"swiss.french",		/* 0x12 Swiss/French II */	\"spanish",		/* 0x13 Spanish */		\"swiss.german",		/* 0x14 Swiss/German II */	\"flemish",		/* 0x15 Belgian (Flemish) */	\"finnish",		/* 0x16 Finnish	*/		\"english.uk",		/* 0x17 United Kingdom */	\"french.canadian",	/* 0x18 French/Canadian */	\"swiss.german",		/* 0x19 Swiss/German */		\"norwegian",		/* 0x1a Norwegian */		\"french",		/* 0x1b French */		\"danish",		/* 0x1c Danish */		\"japanese",		/* 0x1d Katakana */		\"spanish",		/* 0x1e Latin American/Spanish*/\"english.us"		/* 0x1f United States */	\/* Response to POL command, the "poll record header" */#define HIL_POL_NUM_AXES_MASK	0x03	/* Number of axis reported */#define HIL_POL_CTS		0x04	/* Device ready to receive data */#define HIL_POL_STATUS_PENDING	0x08	/* Device has status to report */#define HIL_POL_CHARTYPE_MASK	0x70	/* Type of character data to follow */#define HIL_POL_CHARTYPE_NONE	0x00	/* No character data to follow */#define HIL_POL_CHARTYPE_RSVD1	0x10	/* Reserved Set 1 */#define HIL_POL_CHARTYPE_ASCII	0x20	/* U.S. ASCII */#define HIL_POL_CHARTYPE_BINARY	0x30	/* Binary data */#define HIL_POL_CHARTYPE_SET1	0x40	/* Keycode Set 1 */#define HIL_POL_CHARTYPE_RSVD2	0x50	/* Reserved Set 2 */#define HIL_POL_CHARTYPE_SET2	0x60	/* Keycode Set 2 */#define HIL_POL_CHARTYPE_SET3	0x70	/* Keycode Set 3 */#define HIL_POL_AXIS_ALT	0x80	/* Data is from axis set 2 */

⌨️ 快捷键说明

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