Общие свойства датчика
В этой статье описываются свойства датчика, которые являются общими для всех датчиков.
В следующей таблице показаны общие свойства. Дополнительные сведения о типах, отображаемых в столбце типов, см . в структуре PROPVARIANT.
Ключ свойства | Тип | Access (R/O, R/W) | Обязательно/Необязательно | Description |
---|---|---|---|---|
PKEY_Sensor_Type | VT_CLSID | R/O | Обязательное поле | Тип датчика. GUID состоит из того же формата, что и датчик Windows (например, SENSOR_TYPE_ACCELEROMETER_3D). Дополнительные сведения о типах датчиков см. в разделе "Идентификаторы guid типа датчика". |
PKEY_Sensor_State | VT_UI4 | R/O | Обязательное поле | Состояние датчика. Дополнительные сведения о состояниях датчиков см. в SENSOR_STATE. |
PKEY_Sensor_MinimumDataInterval_Ms | VT_UI4 | R/O | Обязательное поле | Минимальный интервал времени (в миллисекундах), поддерживаемый оборудованием для создания отчета о данных датчика. |
PKEY_Sensor_MaximumDataFieldSize_Bytes | VT_UI4 | R/O | Обязательное поле | Максимальный размер, возвращаемый в вызове ReadFile. Вызов ReadFile позволяет собственному API выделить буфер для хранения любого поля данных. |
PKEY_Sensor_Power_Milliwatts | VT_R4 | R/O | Необязательно | Мощность датчика, выраженная в милливаттах. |
PKEY_SensorHistory_MaxSize_Bytes | VT_UI4 | R/O | Необязательный, но обязательный , если датчик поддерживает журнал. |
Максимальный размер данных журнала датчиков, выраженный в байтах. |
PKEY_SensorHistory_Interval_Ms | VT_UI4 | R/O | Необязательный, но обязательный , если датчик поддерживает журнал. |
Интервал выборки журнала датчиков, выраженный в миллисекундах. |
PKEY_SensorHistory_MaximumRecordSize_Bytes | VT_UI4 | R/O | Необязательный, но обязательный , если датчик поддерживает журнал. |
Максимальный размер записи, выраженный в байтах. |
PKEY_Sensor_FifoReservedSize_Samples | VT_UI4 | R/O | Необязательный, но обязательный , если датчик поддерживает пакетную обработку. |
Количество событий, зарезервированных для этого датчика в буфере fist-in-out (FIFO) для пакета. Это гарантирует минимальное количество событий. Если это значение равно нулю, датчик не выполняет пакетную обработку. |
PKEY_Sensor_FifoMaxSize_Samples | VT_UI4 | R/O | Необязательный, но обязательный , если датчик поддерживает пакетную обработку. |
Максимальное количество событий, которые могут быть пакетированы в FIFO. Если это значение равно нулю, пакетная обработка не поддерживается датчиком. Фактическое количество событий может быть меньше этого числа, так как пакетная функция FIFO может быть предоставлена несколькими датчиками. |
PKEY_Sensor_WakeCapable | VT_BOOL | R/O | Необязательный, но обязательный , если датчик поддерживает пакетную обработку. |
Указывает, поддерживается ли датчик пробуждением. Если датчик поддерживает пакетную обработку датчиков, это свойство должно быть установлено на VARIANT_TRUE, если датчик может проснуть обработчик приложений при заполнении FIFO. Значение должно быть задано как VARIANT_FALSE, если датчик не может проснуть обработчик приложения. В этом случае состояние этого свойства указывает на способность датчика проснуться от подключенного резервирования. Если датчик поддерживает пробуждение системы из SX, это свойство должно иметь значение VARIANT_TRUE и если оно не поддерживает пробуждение от SX, это свойство должно иметь значение VARIANT_FALSE. |
Пакетная обработка данных
Драйвер датчика, поддерживающий пакетную обработку данных, должен сообщать о следующих общих свойствах датчика:
- PKEY_Sensor_FifoReservedSize_Samples
- PKEY_Sensor_FifoMaxSize_Samples
- PKEY_Sensor_WakeCapable
Начиная с Windows 10 версии 1511 поддержка теперь доступна для реализации пакетной обработки данных с помощью драйвера класса датчиков HID. Сведения об этом см. в разделе "Элементы управления пакетной обработкой датчика".
Сведения о функции обратного вызова, связанной с пакетной обработкой данных, см. в разделе EvtSensorSetBatchLatency .
Благодаря возможности датчика пробуждения ЦП и операционной системы из состояния SX PKEY_Sensor_WakeCapable также используется в качестве свойства перечисления, которое можно запросить из хранилища драйверов PnP, чтобы узнать, может ли датчик проснуть систему из SX в дополнение к пробуждению системы из подключенного резервного копирования.
Замечания
Когда драйвер клиента сообщает следующие свойства, драйвер клиента должен использовать CollectionsListGetMarshalledSizeWithoutSerialization вместо CollectionsListGetMarshalledSize:
- PKEY_SensorHistory_MaxSize_Bytes
- PKEY_SensorHistory_MaximumRecordSize_Bytes