QSensorReading Class
The QSensorReading class holds the readings from the sensor. More...
Header: | #include <QSensorReading> |
qmake: | QT += sensors |
Inherits: | QObject. |
Inherited By: | QAccelerometerReading, QAltimeterReading, QAmbientLightReading, QAmbientTemperatureReading, QCompassReading, QDistanceReading, QGyroscopeReading, QHolsterReading, QIRProximityReading, QLightReading, QMagnetometerReading, QOrientationReading, QPressureReading, QProximityReading, QRotationReading, QTapReading, and QTiltReading. |
Properties
- timestamp : const quint64
- 1 property inherited from QObject
Public Functions
void | setTimestamp(quint64 timestamp) |
quint64 | timestamp() const |
QVariant | value(int index) const |
int | valueCount() const |
- 31 public functions inherited from QObject
Macros
DECLARE_READING( classname) | |
IMPLEMENT_READING( classname) |
Additional Inherited Members
- 1 public slot inherited from QObject
- 2 signals inherited from QObject
- 11 static public members inherited from QObject
- 9 protected functions inherited from QObject
Detailed Description
The QSensorReading class holds the readings from the sensor.
Note that QSensorReading is not particularly useful by itself. The interesting data for each sensor is defined in a sub-class of QSensorReading.
Property Documentation
timestamp : const quint64
This property holds the timestamp of the reading.
Timestamps values are microseconds since a fixed point. You can use timestamps to see how far apart two sensor readings are.
Note that sensor timestamps from different sensors may not be directly comparable (as they may choose different fixed points for their reference).
Note that some platforms do not deliver timestamps correctly. Applications should be prepared for occasional issues that cause timestamps to jump backwards.
Access functions:
quint64 | timestamp() const |
Member Function Documentation
void QSensorReading::setTimestamp(quint64 timestamp)
Sets the timestamp of the reading.
See also timestamp().
QVariant QSensorReading::value(int index) const
Returns the value of the property at index.
Note that this function is slower than calling the data function directly.
Here is an example of getting a property via the different mechanisms available.
Accessing directly provides the best performance but requires compile-time knowledge of the data you are accessing.
QAccelerometerReading *reading = ...; qreal x = reading->x();
You can also access a property by name. To do this you must call QObject::property().
qreal x = reading->property("x").value<qreal>();
Finally, you can access values via numeric index.
qreal x = reading->value(0).value<qreal>();
Note that value() can only access properties declared with Q_PROPERTY() in sub-classes of QSensorReading.
See also valueCount() and QObject::property().
int QSensorReading::valueCount() const
Returns the number of extra properties that the reading has.
Note that this does not count properties declared in QSensorReading.
As an example, this returns 3 for QAccelerometerReading because there are 3 properties defined in that class.
Macro Documentation
DECLARE_READING( classname)
The DECLARE_READING macro adds some required methods to a reading class.
This macro should be used for all reading classes. Pass the classname of your reading class.
class MyReading : public QSensorReading { Q_OBJECT Q_PROPERTY(qreal myprop READ myprop) DECLARE_READING(MyReading) public: qreal myprop() const; vod setMyprop(qreal myprop); };
See also IMPLEMENT_READING().
IMPLEMENT_READING( classname)
The IMPLEMENT_READING macro implements the required methods for a reading class.
This macro should be used for all reading classes. It should be placed into a single compilation unit (source file), not into a header file. Pass the classname of your reading class.
IMPLEMENT_READING(MyReading)
See also DECLARE_READING().
© 2015 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.