Extracting Value Data by Specifying Its Usage
To extract value data from a HID report, an application or driver can use one of the following HID support routines:
Returns a signed and scaled value.
Returns a nonscaled value in an unsigned format or a scaled value that is out of its Normal range.
Returns a usage value array.
To use HidP_GetUsageValueArray, applications and drivers must allocate a zero-initialized buffer, which is large enough to hold the usage value array. The required size, in bytes, is the product of the BitSize and ReportCount members of the usage value array's HIDP_VALUE_CAPS structure, rounded up to the nearest byte.