HID Usages

HID usages identify the intended use of HID controls and what the controls actually measure.

The following concepts and terminology are used throughout the HID documentation in the WDK:

Usage Page

Usage ID

Extended Usage

Usage Range

Aliased Usages

For specific examples of usages that Windows components access, see Top-Level Collections Opened by Windows for System Use.

For more information about how to determine the usages that a HIDClass device supports, see:

Collection Capability

Button Capability Arrays

Value Capability Arrays

Interpreting HID Reports

For detailed information about industry standard HID usage, see the Universal Serial Bus (USB) specification HID Usage Tables that is located at the USB Implementers Forum website. (This resource may not be available in some languages and countries.)

Usage Page

HID usages are organized into usage pages of related controls. A specific control usage is defined by its usage page, a usage ID, a name, and a description. Examples of usage pages include Generic Desktop Controls, Game Controls, LEDs, Button, and so on. Examples of controls that are listed on the Generic Desktop Controls usage page include pointers, mouse and keyboard devices, joysticks, and so on. A usage page value is a 16-bit unsigned value.

Usage ID

In the context of a usage page, a valid usage identifier, or usage ID, is a positive integer greater than zero that indicates a usage in a usage page. A usage ID of zero is reserved. A usage ID value is an unsigned 16-bit value.

Extended Usage

An extended usage is a 32-bit value that specifies a 16-bit usage page value in the most-significant two bytes and a 16-bit usage ID in the least significant two bytes of the extended usage value.

Usage Range

A usage range is an inclusive, consecutive range of usage IDs, all of which are on the same usage page. A usage range is specified by usage minimum and usage maximum items in a report descriptor.

Aliased Usages

More than one usage can be specified for a link collection or a HID control. For a given collection or control, a group of such usages are aliases of one another, and are referred to as aliased usages. Delimiter items are used to specify aliased usages. Usage ranges cannot be aliased.

For information about how aliased usages are specified in a top-level collection's capability arrays, see Button Capability Arrays and Value Capability Arrays.

 

 

Send comments about this topic to Microsoft

Afficher:
© 2014 Microsoft