QSensorManager Class

The QSensorManager class handles registration and creation of sensor backends. More...

Header: #include <QSensorManager>
CMake: find_package(Qt6 REQUIRED COMPONENTS Sensors)
target_link_libraries(mytarget PRIVATE Qt6::Sensors)
qmake: QT += sensors

Static Public Members

QSensorBackend *createBackend(QSensor *sensor)
bool isBackendRegistered(const QByteArray &type, const QByteArray &identifier)
void registerBackend(const QByteArray &type, const QByteArray &identifier, QSensorBackendFactory *factory)
void setDefaultBackend(const QByteArray &type, const QByteArray &identifier)
void unregisterBackend(const QByteArray &type, const QByteArray &identifier)

Detailed Description

Sensor plugins register backends using the registerBackend() function.

When QSensor::connectToBackend() is called, the createBackend() function will be called.

Member Function Documentation

[static] QSensorBackend *QSensorManager::createBackend(QSensor *sensor)

Create a backend for sensor. Returns null if no suitable backend exists.

[static] bool QSensorManager::isBackendRegistered(const QByteArray &type, const QByteArray &identifier)

Returns true if the backend identified by type and identifier is registered.

This is a convenience method that helps out plugins doing dynamic registration.

[static] void QSensorManager::registerBackend(const QByteArray &type, const QByteArray &identifier, QSensorBackendFactory *factory)

Register a sensor for type. The identifier must be unique.

The factory will be asked to create instances of the backend.

Sensor identifiers starting with generic or dummy are given lower priority when choosing the default sensor if other sensors are found.

[static] void QSensorManager::setDefaultBackend(const QByteArray &type, const QByteArray &identifier)

Sets or overwrite the sensor type with the backend identifier.

[static] void QSensorManager::unregisterBackend(const QByteArray &type, const QByteArray &identifier)

Unregister the backend for type with identifier.

Note that this only prevents new instance of the backend from being created. It does not invalidate the existing instances of the backend. The backend code should handle the disappearance of the underlying hardware itself.

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.