Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
97 <strong>HID</strong> <strong>Sensor</strong> <strong>Usage</strong>s<br />
};<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_USAGE_SENSOR_DATA_CUSTOM_BOOLEAN_ARRAY,<br />
<strong>HID</strong>_LOGICAL_MIN_8(0),<br />
<strong>HID</strong>_LOGICAL_MAX_16(0xFF,0xFF),<br />
<strong>HID</strong>_REPORT_SIZE(16),<br />
<strong>HID</strong>_REPORT_COUNT(1),<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_USAGE_SENSOR_DATA_CUSTOM_VALUE_1,<br />
<strong>HID</strong>_LOGICAL_MIN_16(0x01,0x80), // LOGICAL_MINIMUM (-32767)<br />
<strong>HID</strong>_LOGICAL_MAX_16(0xFF,0x7F), // LOGICAL_MAXIMUM (32767)<br />
<strong>HID</strong>_REPORT_SIZE(16),<br />
<strong>HID</strong>_REPORT_COUNT(1),<br />
<strong>HID</strong>_USAGE_SENSOR_UNITS_NOT_SPECIFIED,<br />
<strong>HID</strong>_UNIT_EXPONENT(0x0E), // scale unit to provide 2 digits past the decimal point<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_USAGE_SENSOR_DATA_CUSTOM_VALUE_2,<br />
<strong>HID</strong>_LOGICAL_MIN_16(0x01,0x80), // LOGICAL_MINIMUM (-32767)<br />
<strong>HID</strong>_LOGICAL_MAX_16(0xFF,0x7F), // LOGICAL_MAXIMUM (32767)<br />
<strong>HID</strong>_REPORT_SIZE(16),<br />
<strong>HID</strong>_REPORT_COUNT(1),<br />
<strong>HID</strong>_USAGE_SENSOR_UNITS_NOT_SPECIFIED,<br />
<strong>HID</strong>_UNIT_EXPONENT(0x0E), // scale unit to provide 2 digits past the decimal point<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_USAGE_SENSOR_DATA_CUSTOM_VALUE_3,<br />
<strong>HID</strong>_LOGICAL_MIN_16(0x01,0x80), // LOGICAL_MINIMUM (-32767)<br />
<strong>HID</strong>_LOGICAL_MAX_16(0xFF,0x7F), // LOGICAL_MAXIMUM (32767)<br />
<strong>HID</strong>_REPORT_SIZE(16),<br />
<strong>HID</strong>_REPORT_COUNT(1),<br />
<strong>HID</strong>_USAGE_SENSOR_UNITS_NOT_SPECIFIED,<br />
<strong>HID</strong>_UNIT_EXPONENT(0x0E), // scale unit to provide 2 digits past the decimal point<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_USAGE_SENSOR_DATA_CUSTOM_VALUE_4,<br />
<strong>HID</strong>_LOGICAL_MIN_16(0x01,0x80), // LOGICAL_MINIMUM (-32767)<br />
<strong>HID</strong>_LOGICAL_MAX_16(0xFF,0x7F), // LOGICAL_MAXIMUM (32767)<br />
<strong>HID</strong>_REPORT_SIZE(16),<br />
<strong>HID</strong>_REPORT_COUNT(1),<br />
<strong>HID</strong>_USAGE_SENSOR_UNITS_NOT_SPECIFIED,<br />
<strong>HID</strong>_UNIT_EXPONENT(0x0E), // scale unit to provide 2 digits past the decimal point<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_USAGE_SENSOR_DATA_CUSTOM_VALUE_5,<br />
<strong>HID</strong>_LOGICAL_MIN_16(0x01,0x80), // LOGICAL_MINIMUM (-32767)<br />
<strong>HID</strong>_LOGICAL_MAX_16(0xFF,0x7F), // LOGICAL_MAXIMUM (32767)<br />
<strong>HID</strong>_REPORT_SIZE(16),<br />
<strong>HID</strong>_REPORT_COUNT(1),<br />
<strong>HID</strong>_USAGE_SENSOR_UNITS_NOT_SPECIFIED,<br />
<strong>HID</strong>_UNIT_EXPONENT(0x0E), // scale unit to provide 2 digits past the decimal point<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_USAGE_SENSOR_DATA_CUSTOM_VALUE_6,<br />
<strong>HID</strong>_LOGICAL_MIN_16(0x01,0x80), // LOGICAL_MINIMUM (-32767)<br />
<strong>HID</strong>_LOGICAL_MAX_16(0xFF,0x7F), // LOGICAL_MAXIMUM (32767)<br />
<strong>HID</strong>_REPORT_SIZE(16),<br />
<strong>HID</strong>_REPORT_COUNT(1),<br />
<strong>HID</strong>_USAGE_SENSOR_UNITS_NOT_SPECIFIED,<br />
<strong>HID</strong>_UNIT_EXPONENT(0x0E), // scale unit to provide 2 digits past the decimal point<br />
<strong>HID</strong>_INPUT(Const_Var_Abs),<br />
<strong>HID</strong>_END_COLLECTION<br />
4.2.7 Generic <strong>Sensor</strong><br />
The Generic sensor provides a comprehensive means by which platform driver support can be extended<br />
dynamically without changes to the platform driver. The Generic sensor achieves this by directly exposing<br />
the sensor category, type and supported events, properties and datafields by means of GUIDs and<br />
PROPERTYKEYs, which can consumed directly by the Operating System’s sensor driver without having<br />
to parse and translate <strong>HID</strong> <strong>Usage</strong>s.<br />
A Generic sensor is different from a Custom sensor in that, where the Custom sensor presents itself at the<br />
platform level as a Custom sensor with certain properties, the Generic sensor presents itself as the Category<br />
and Type of sensor defined in the Category and Type fields. A further distinction is that, where the Custom<br />
sensor must encapsulate datafields in one of the defined Custom datafields, the Generic sensor can<br />
represent any supported event, property or datafield defined in the Event, Property and Datafield fields.<br />
Use of a Generic sensor may be desireable in several circumstances:<br />
1) The vendor may wish create a new category or type of sensor not previously anticipated by the<br />
platform driver;