Sur cette page

QSensorReading Class

La classe QSensorReading contient les données du capteur. Plus d'informations...

En-tête : #include <QSensorReading>
CMake : find_package(Qt6 REQUIRED COMPONENTS Sensors)
target_link_libraries(mytarget PRIVATE Qt6::Sensors)
qmake : QT += sensors
Hérite : QObject
Hérités par :
13 types

QAccelerometerReading QAmbientLightReading, , , , , , , , , , , et QAmbientTemperatureReading QCompassReading QGyroscopeReading QHumidityReading QLightReading QMagnetometerReading QOrientationReading QPressureReading QProximityReading QRotationReading QTiltReading

Propriétés

Fonctions publiques

void setTimestamp(quint64 timestamp)
quint64 timestamp() const
QVariant value(int index) const
int valueCount() const

Macros

DECLARE_READING(classname)
IMPLEMENT_READING(classname)

Description détaillée

Notez que QSensorReading n'est pas particulièrement utile en soi. Les données intéressantes pour chaque capteur sont définies dans une sous-classe de QSensorReading.

Documentation sur les propriétés

[read-only] timestamp : quint64

Cette propriété contient l'horodatage de la lecture.

Les valeurs des horodatages sont exprimées en microsecondes depuis un point fixe. Vous pouvez utiliser les horodatages pour déterminer la distance qui sépare deux relevés de capteur.

Notez que les horodatages de différents capteurs peuvent ne pas être directement comparables (car ils peuvent choisir des points fixes différents pour leur référence).

Notez que certaines plateformes ne fournissent pas les horodatages correctement. Les applications doivent être prêtes à faire face à des problèmes occasionnels qui entraînent un retour en arrière des horodatages.

Fonctions d'accès :

quint64 timestamp() const

Documentation des fonctions membres

void QSensorReading::setTimestamp(quint64 timestamp)

Définit l'adresse timestamp de la lecture.

Voir aussi timestamp().

quint64 QSensorReading::timestamp() const

Renvoie l'horodatage de la lecture.

Remarque : fonction Getter pour la propriété timestamp.

Voir également setTimestamp().

QVariant QSensorReading::value(int index) const

Renvoie la valeur de la propriété à index.

Notez que cette fonction est plus lente que l'appel direct à la fonction de données.

Voici un exemple d'obtention d'une propriété via les différents mécanismes disponibles.

L'accès direct offre les meilleures performances, mais nécessite une connaissance des données auxquelles vous accédez au moment de la compilation.

QAccelerometerReading *reading = ...;
qreal x = reading->x();

Vous pouvez également accéder à une propriété par son nom. Pour ce faire, vous devez appeler QObject::property().

qreal x = reading->property("x").value<qreal>();

Enfin, vous pouvez accéder aux valeurs par l'intermédiaire d'un index numérique.

qreal x = reading->value(0).value<qreal>();

Notez que value() ne peut accéder qu'aux propriétés déclarées avec Q_PROPERTY() dans les sous-classes de QSensorReading.

Voir également valueCount() et QObject::property().

int QSensorReading::valueCount() const

Renvoie le nombre de propriétés supplémentaires que la lecture possède.

Notez que ce nombre ne tient pas compte des propriétés déclarées dans QSensorReading.

Par exemple, cette macro renvoie 3 pour QAccelerometerReading car il y a 3 propriétés définies dans cette classe.

Documentation sur les macros

DECLARE_READING(classname)

La macro DECLARE_READING ajoute certaines méthodes nécessaires à une classe de lecture.

Cette macro doit être utilisée pour toutes les classes de lecture. Passez l'adresse classname de votre classe de lecture.

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);
};

Voir aussi IMPLEMENT_READING().

IMPLEMENT_READING(classname)

La macro IMPLEMENT_READING implémente les méthodes requises pour une classe de lecture.

Cette macro doit être utilisée pour toutes les classes de lecture. Elle doit être placée dans une seule unité de compilation (fichier source), et non dans un fichier d'en-tête. Passez l'adresse classname de votre classe de lecture.

IMPLEMENT_READING(MyReading)

Voir aussi DECLARE_READING().

© 2026 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.