Датчики
Обзор технологии датчиков.
Для разработки датчиков вам потребуются следующие заголовки:
- math3dhelper.h
- sensorsclassextension.h
- sensorscx.h
- sensorscxfuncenum.h
- sensorsdef.h
- sensorsdriversutils.h
- sensorsstructures.h
- sensorsutils.h
Руководство по программированию см. в разделе Датчики.
Класс
CVEC3D Математическая библиотека для трехмерного вектора. |
Перечисления
ACTIVITY_STATE Это перечисление представляет состояния активности, сообщаемые датчиком обнаружения действий. |
ОСИ Определяет трехмерные координаты. |
LOCATION_DESIRED_ACCURACY Тип перечисления LOCATION_DESIRED_ACCURACY определяет значения для свойства SENSOR_PROPERTY_LOCATION_DESIRED_ACCURACY. |
MAGNETOMETER_ACCURACY Это перечисление представляет состояния точности магнитометра. |
МагнитометрAccuracy Указывает точность магнитометра. |
PEDOMETER_STEP_TYPE Это перечисление представляет типы шагов, сообщаемые шагомером. |
PEDOMETER_STEP_TYPE_COUNT Это перечисление представляет количество типов шагов, которые могут быть обнаружены шагомером. |
PROXIMITY_SENSOR_CAPABILITIES Значения перечисления PROXIMITY_SENSOR_CAPABILITIES указывают на возможности датчика близкого взаимодействия. |
SENSOR_CONNECTION_TYPES Определяет типы подключений устройств датчиков. |
SENSOR_STATE Это перечисление представляет допустимые состояния датчика. |
SensorConnectionType Тип перечисления SensorConnectionType определяет значения для свойства SENSOR_CONNECTION_TYPE. |
SENSORSCXFUNCENUM Перечисление _SENSORSCXFUNCENUM содержит список всех функций API WDF. |
SensorState Тип перечисления SensorState указывает текущее рабочее состояние датчика. |
Функции
~CVEC3D Деструктор для векторного 3d-класса, используемого в драйверах датчиков. |
CleanupFile Метод ISensorClassExtension::CleanupFile уведомляет расширение класса о дескрипторе файла, который закрывает и отменяет все ожидающие запросы ввода-вывода для указанного приложения. |
CollectionsListAllocateBufferAndSerialize Эта подпрограмма выделяет буфер, а затем сериализует в него список коллекций датчиков. |
CollectionsListCopyAndMarshall Эта подпрограмма копирует и маршалирует список коллекций из источника в целевой. |
CollectionsListDeserializeFromBuffer Эта подпрограмма десериализует список коллекций из входного буфера. |
CollectionsListGetFillableCount Возвращает количество элементов, в которых может храниться буфер SENSOR_COLLECTION_LIST определенного размера. |
CollectionsListGetMarshalledSize Возвращает размер, необходимый для сериализации и маршалинга списка коллекций, включая внедренную память. |
CollectionsListGetMarshalledSizeWithoutSerialization Возвращает размер всего списка коллекций, включая размер блоков памяти, на которые указывают внедренные указатели. |
CollectionsListGetSerializedSize Эта подпрограмма возвращает больший из двух размеров, чтобы обеспечить достаточный размер буфера для передачи списка коллекции между процессами, которые могут иметь различные значения битовости. |
CollectionsListMarshall Эта процедура похожа на CollectionsListCopyAndMarshall, за исключением того, что она маршалирует список коллекций на месте. |
CollectionsListSerializeToBuffer Эта подпрограмма сериализует список коллекций в буфер, выделенный вызывающим объектом. |
CollectionsListSortSubscribedActivitiesByConfidence Эта подпрограмма изменяет порядок сбора данных о действиях при определенных условиях. |
CollectionsListUpdateMarshalledPointer Эта подпрограмма обновляет внедренные указатели. |
CVEC3D Класс 3d-векторов, используемый при разработке драйвера датчика. |
CVEC3D Класс 3d-векторов, используемый при разработке драйвера датчика, с параметром 3d-вектора. |
CVEC3D Конструктор класса 3d-векторов, используемый при разработке драйвера датчика, с параметрами float. |
EvaluateActivityThresholds Эта подпрограмма определяет, соответствуют ли новые входящие данные действия пороговой. |
EVT_SENSOR_DRIVER_CANCEL_HISTORY_RETRIEVAL Отменяет извлечение журнала с датчика. |
EVT_SENSOR_DRIVER_CLEAR_SENSOR_HISTORY Очищает журнал, записанный на данный момент в датчике. |
EVT_SENSOR_DRIVER_DEVICE_IO_CONTROL Обратный вызов для обработки IOCTL. |
EVT_SENSOR_DRIVER_DISABLE_WAKE Обратный вызов для отключения пробуждения для датчика. |
EVT_SENSOR_DRIVER_ENABLE_WAKE Обратный вызов для включения пробуждения для датчика. |
EVT_SENSOR_DRIVER_GET_DATA_FIELD_PROPERTIES Эта функция обратного вызова возвращает свойства заданного поля данных, связанного с датчиком. |
EVT_SENSOR_DRIVER_GET_DATA_INTERVAL Эта функция обратного вызова возвращает интервал данных для указанного датчика. |
EVT_SENSOR_DRIVER_GET_DATA_THRESHOLDS Эта функция обратного вызова возвращает пороговые значения, связанные с датчиком. |
EVT_SENSOR_DRIVER_GET_PROPERTIES Эта функция обратного вызова возвращает свойства для заданного датчика. |
EVT_SENSOR_DRIVER_GET_SUPPORTED_DATA_FIELDS Эта функция обратного вызова возвращает список полей данных, поддерживаемых указанным датчиком. |
EVT_SENSOR_DRIVER_SET_BATCH_LATENCY Эта функция обратного вызова задает задержку пакета для указанного датчика. |
EVT_SENSOR_DRIVER_SET_DATA_INTERVAL Эта функция обратного вызова задает интервал данных для указанного датчика. |
EVT_SENSOR_DRIVER_SET_DATA_THRESHOLDS Эта функция обратного вызова задает пороговое значение для одного или нескольких полей данных, связанных с датчиком. |
EVT_SENSOR_DRIVER_START_HISTORY_RETRIEVAL Начинает получать журнал, записанный на данный момент в датчике. |
EVT_SENSOR_DRIVER_START_SENSOR Эта функция обратного вызова запускает датчик на основе свойств по умолчанию, заданных драйвером, или свойств, заданных расширением класса. |
EVT_SENSOR_DRIVER_START_SENSOR_HISTORY Запускает журнал записи в датчике. |
EVT_SENSOR_DRIVER_START_STATE_CHANGE_NOTIFICATION Используется для запуска уведомления об изменении состояния. |
EVT_SENSOR_DRIVER_STOP_SENSOR Эта функция обратного вызова останавливает работу датчика. |
EVT_SENSOR_DRIVER_STOP_SENSOR_HISTORY Останавливает журнал записи в датчике. |
EVT_SENSOR_DRIVER_STOP_STATE_CHANGE_NOTIFICATION Используется для остановки уведомления об изменении состояния. |
FloatEq Эта функция проверяет равенство с FLOAT_TOLERANCE = 0,00001. |
GetMethodArgumentFromAcpi Функция GetMethodArgumentFromAcpi считывает запрошенную запись ACPI, используя предоставленное имя метода. |
GetPerformanceTime Эта подпрограмма вычисляет системное время в миллисекундах. |
GetRotationMatrixFromAcpi Функция GetRotationMatrixFromAcpi считывает матрицу поворота из записей ACPI. |
I2C_REQUEST_SIZE Макрос I2C_REQUEST_SIZE определяет размер запроса I2C. |
I2CSensorReadRegister Функция I2CSensorReadRegister считывает регистры устройств через I2C. |
I2CSensorWriteRegister Функция I2CSensorWriteRegister записывает данные в регистры устройств по протоколу I2C. |
Initialize Метод ISensorClassExtension::Initialize инициализирует объект расширения класса датчика. |
InitPropVariantFromCLSIDArray Эта подпрограмма инициализирует PROPVARIANT из заданного массива guid. |
InitPropVariantFromFloat Эта подпрограмма инициализирует PROPVARIANT с заданным значением float. |
InitTransformationMatrix Функция InitTransformationMatrix считывает матрицу поворота из записей ACPI. |
IsCollectionListSame Эта процедура сравнивает два списка коллекций, чтобы узнать, совпадают ли они. |
IsGUIDPresentInList Эта подпрограмма ищет GUID в списке идентификаторов GUID. |
IsKeyPresentInCollectionList Эта подпрограмма определяет, присутствует ли ключ в списке коллекций. |
IsKeyPresentInPropertyList Эта подпрограмма определяет, присутствует ли ключ в списке свойств. |
IsSensorSubscribed Только для внутреннего использования. |
MILLISECONDS_FROM_100NANOSECONDS Этот макрос преобразует время в миллисекундах в виде 100 единиц наносекунд. |
MILLISECONDS_TO_100NANOSECONDS Этот макрос преобразует время в миллисекундах в 100 единиц наносекунд. |
OnClientConnect Метод ISensorDriver::OnClientConnect уведомляет драйвер датчика о том, что клиентское приложение подключено. |
OnClientDisconnect Метод ISensorDriver::OnClientDisconnect уведомляет драйвер датчика о том, что клиентское приложение отключено. |
OnClientSubscribeToEvents Метод ISensorDriver::OnClientSubscribeToEvents уведомляет драйвер датчика о том, что авторизованное клиентское приложение запрашивает уведомления о событиях. |
OnClientUnsubscribeFromEvents Метод ISensorDriver::OnClientUnsubscribeFromEvents уведомляет драйвер датчика о том, что клиентское приложение больше не запрашивает уведомления о событиях. |
OnGetDataFields Метод ISensorDriver::OnGetDataFields извлекает текущие данные датчика. |
OnGetProperties Метод ISensorDriver::OnGetProperties извлекает значения указанных свойств из указанного датчика. |
OnGetSupportedDataFields Метод ISensorDriver::OnGetSupportedDataFields извлекает список полей данных, которые может предоставить указанный датчик. |
OnGetSupportedEvents Метод ISensorDriver::OnGetSupportedEvents извлекает список событий, которые может вызвать указанный датчик. |
OnGetSupportedProperties Метод ISensorDriver::OnGetSupportedProperties извлекает список свойств, которые предоставляет указанный датчик. |
OnGetSupportedSensorObjects Метод ISensorDriver::OnGetSupportedSensorObjects извлекает список датчиков, которые предоставляет драйвер. |
OnProcessWpdMessage Метод ISensorDriver::OnProcessWpdMessage обрабатывает команды переносного устройства Windows (WPD), которые не обрабатываются методом ISensorClassExtension::P rocessIoControl. |
OnSetProperties Метод ISensorDriver::OnSetProperties задает значения для указанного списка свойств. |
оператор+= Оператор присваивания +. |
оператор-= Оператор присваивания -. |
ParseRotationMatrixEntry Функция ParseRotationMatrixEntry анализирует строку из трех чисел с плавающей точкой. |
PFN_SENSORSCXDEVICEGETSENSORLIST Возвращает список экземпляров датчика, связанных с WDFDEVICE. |
PFN_SENSORSCXDEVICEINITCONFIG Настраивает устройство датчика. |
PFN_SENSORSCXDEVICEINITIALIZE Инициализирует датчик в расширении класса. |
PFN_SENSORSCXSENSORCREATE Создает экземпляр датчика в расширении класса. |
PFN_SENSORSCXSENSORDATAREADY Уведомляет расширение класса о том, что драйвер извлек данные. |
PFN_SENSORSCXSENSORHISTORYRETRIEVALCOMPLETED Указывает, что извлечение журнала завершено. |
PFN_SENSORSCXSENSORINITIALIZE Задает свойства перечисления датчика. |
PFN_SENSORSCXSTATECHANGE Используется для инициализации изменения состояния датчика. |
PostEvent Метод ISensorClassExtension::P ostEvent вызывает одно или несколько событий драйвера в расширении класса датчика. |
PostStateChange Метод ISensorClassExtension::P ostStateChange уведомляет расширение класса датчика об изменении рабочего состояния датчика. |
ProcessIoControl Метод ISensorClassExtension::P rocessControl отправляет запросы на управление вводом-выводом в переносных устройствах Windows (WPD) в расширение класса датчика для обработки. |
PropertiesListCopy Эта подпрограмма копирует список свойств из источника в целевой. |
PropertiesListGetFillableCount Возвращает количество элементов, в которых может храниться буфер списка свойств определенного размера. |
PropKeyFindKeyGetBool Эта подпрограмма получает значение BOOL из PROPVARIANT в списке коллекций на основе PROPERTYKEY. |
PropKeyFindKeyGetDouble Эта подпрограмма получает значение двойной точности с плавающей запятой из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetFileTime Эта подпрограмма получает значение FILETIME из PROPVARIANT в списке коллекций на основе PROPERTYKEY. |
PropKeyFindKeyGetFloat Эта подпрограмма получает одно значение точности с плавающей запятой из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetGuid Эта подпрограмма получает значение GUID из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetInt32 Эта подпрограмма получает значение INT32 из PROPVARIANT в списке коллекций на основе PROPERTYKEY. |
PropKeyFindKeyGetInt64 Эта подпрограмма получает значение INT64 из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetNthInt64 Эта подпрограмма получает n-е значение INT64 из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetNthUlong Эта подпрограмма получает n-е значение ULONG из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetNthUshort Эта подпрограмма получает n-е значение USHORT из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetPropVariant Эта подпрограмма находит PROPVARIANT из списка коллекций на основе PROPERTYKEY. |
PropKeyFindKeyGetUlong Эта подпрограмма получает значение ULONG из PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropKeyFindKeyGetUshort Эта подпрограмма получает значение USHORT из PROPVARIANT в списке коллекций на основе PROPERTYKEY. |
PropKeyFindKeySetPropVariant Эта подпрограмма находит и задает PROPVARIANT в списке коллекции на основе PROPERTYKEY. |
PropVariantGetInformation Эта подпрограмма получает смещение, размер, указатель расположения и DEVPROPTYPE PROPVARIANT. |
RealModulo Вычисляет модульное значение в диапазоне от x до y. |
SENSOR_COLLECTION_LIST_CALCULATE_MAX_COUNT Эта функция вычисляет количество SENSOR_VALUE_PAIR элементов в SENSOR_COLLECTION_LIST структуре. |
SENSOR_COLLECTION_LIST_INIT Эта функция инициализирует структуру SENSOR_COLLECTION_LIST. |
SENSOR_COLLECTION_LIST_SIZE Эта функция возвращает размер структуры SENSOR_COLLECTION_LIST. |
SENSOR_CONFIG_INIT Эта функция инициализирует структуру SENSOR_CONFIG. |
SENSOR_CONTROLLER_CONFIG_INIT Эта функция инициализирует структуру SENSOR_CONTROLLER_CONFIG. |
SENSOR_PROPERTY_LIST_CALCULATE_MAX_COUNT Эта функция вычисляет количество элементов PROPERTYKEY. |
SENSOR_PROPERTY_LIST_INIT Эта функция инициализирует структуру SENSOR_PROPERTY_LIST. |
SENSOR_PROPERTY_LIST_SIZE Эта функция возвращает размер списка свойств. |
SensorCollectionGetAt Эта подпрограмма возвращает PROPERTYKEY и PROPVARIANT, связанные с n-м элементом в предоставленном списке коллекции датчиков. |
SensorsCxDeviceGetSensorList Эта функция возвращает список экземпляров датчиков, связанных с WDFDEVICE. |
SensorsCxDeviceInitConfig Эта функция настраивает устройство датчика. |
SensorsCxDeviceInitialize Эта функция инициализирует датчик в расширении класса. |
SensorsCxSensorCreate Эта функция создает экземпляр датчика в расширении класса. |
SensorsCxSensorDataReady Эта функция уведомляет расширение класса о том, что драйвер извлек данные. |
SensorsCxSensorHistoryRetrievalCompleted Функция SensorsCxSensorHistoryRetrievalCompleted указывает, что извлечение журнала завершено. |
SensorsCxSensorInitialize Эта функция задает свойства перечисления датчика. |
SensorsCxStateChange Используется для инициализации изменения состояния. |
SerializationBufferAllocate Экспортированная функция выделения памяти для выделения сериализованного буфера. |
SerializationBufferFree Экспортируемая функция выделения памяти для освобождения буфера сериализации. |
TranslateAxes Функция TranslateAxes применяет матрицу поворота к данному образцу. |
Неинициализировать Метод ISensorClassExtension::Uninitialize не инициализирует объект расширения класса датчика. |
Интерфейсы
ISensorClassExtension Интерфейс ISensorClassExtension предоставляет методы, которые драйвер датчика использует для взаимодействия с платформой датчика (и, следовательно, клиентскими приложениями) через объект расширения класса датчика. |
ISensorDriver Интерфейс ISensorDriver предоставляет методы обратного вызова, которые расширение класса датчика использует для отправки запросов и уведомлений драйверу датчика. |
Структуры
I2C_REQUEST Запрос I2C. |
MATRIX3X3 Определяет матрицу 3x3. |
КВАТЕРНИОН Структура, представляющая 4-мерный вектор, используемый для простой операции 3D-поворота. |
SENSOR_COLLECTION_LIST Эта структура содержит список всех SENSOR_VALUE_PAIR структур для каждого датчика. Эта структура возвращается путем вызова ReadFile. |
SENSOR_CONFIG Эта структура содержит сведения, которые драйвер датчика передает расширению класса о каждом датчике. |
SENSOR_CONTROLLER_CONFIG Эта структура содержит указатели на функции обратного вызова, которые должны быть реализованы драйвером и переданы в расширение класса для вызова. |
SENSOR_PROPERTY_LIST Узнайте, как эта структура содержит список всех SENSOR_VALUE_PAIR структур для каждого датчика. Эта структура возвращается путем вызова ReadFile. |
SENSOR_VALUE_PAIR Эта структура объединяет ключи свойств, перечисленные в разделе Свойства датчика, с данными, представленными каждым ключом. |
VEC3D Определяет трехмерный вектор. |