Поделиться через


Общие свойства датчика

В этой статье описываются свойства датчика, которые являются общими для всех датчиков.

В следующей таблице показаны общие свойства. Дополнительные сведения о типах, отображаемых в столбце типов, см . в структуре 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