Sur cette page

QSensorFilter Class

La classe QSensorFilter fournit une fonction de rappel efficace pour les notifications asynchrones des changements de capteurs. Plus d'informations...

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

QAccelerometerFilter QAmbientLightFilter, , , , , , , , , , , et QAmbientTemperatureFilter QCompassFilter QGyroscopeFilter QHumidityFilter QLightFilter QMagnetometerFilter QOrientationFilter QPressureFilter QProximityFilter QRotationFilter QTiltFilter

Fonctions publiques

virtual bool filter(QSensorReading *reading) = 0

Fonctions protégées

virtual ~QSensorFilter()

Description détaillée

Certains capteurs (par exemple l'accéléromètre) sont accédés très fréquemment. Cela peut être ralenti par l'utilisation de signaux et de slots. L'interface QSensorFilter fournit un moyen plus efficace pour le capteur de notifier votre classe que le capteur a changé.

En outre, plusieurs filtres peuvent être ajoutés à un capteur. Ils sont appelés dans l'ordre et chaque filtre a la possibilité de modifier les valeurs de la lecture ou de supprimer complètement la lecture.

Notez que les valeurs de la classe renvoyée par QSensor::reading() ne seront pas mises à jour tant que les filtres n'auront pas été exécutés.

Voir aussi filter().

Documentation sur les fonctions membres

[virtual noexcept protected] QSensorFilter::~QSensorFilter()

Notifie au capteur attaché (le cas échéant) que le filtre est en train d'être détruit.

[pure virtual] bool QSensorFilter::filter(QSensorReading *reading)

Cette fonction est appelée lorsque le capteur reading change.

Le filtre peut modifier la lecture.

Retourne true pour permettre au filtre suivant de recevoir la valeur. S'il s'agit du dernier filtre, le retour de true entraîne l'émission du signal et le stockage de la valeur dans le capteur.

Retourne false pour abandonner la lecture.

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