How to create your own Sensor
The Qt Sensors module provides access to sensor hardware via QML and C++ interfaces.
The API is supported on Android, iOS, and Windows (MSVC).
Creating your own sensor using C++ API
Using a Qt module's C++ API requires linking against the module library, either directly or through other dependencies.
Creating a sensor
To create your own sensor you can use the following steps:
- Create your own MySensor and MySensorReading classes
class MyReadingPrivate; class MyReading : public QSensorReading { Q_OBJECT Q_PROPERTY(qreal myprop READ myprop) DECLARE_READING(MyReading) public: qreal myprop() const; void setMyprop(qreal myprop); }; class MySensor : public QSensor { Q_OBJECT public: explicit MySensor(QObject *parent = 0); MyReading *reading() const; static char const * const sensorType; };
- Create a MySensorBackend by inheriting from QSensorBackend
- Create MySensorBackendFactory factory class for instantiating that backend by inheriting a class QSensorBackendFactory
- Register the backend factory by calling QSensorManager::registerBackend ("MySensorType", "MySensorId", &myfactory)
- Instantiate the new MySensor and start using it
As an another option the sensors are put into a Creating a sensor plugin that you can use on demand.