- Qt 5.5
- Qt Sensors
- C++ Classes
- QSensorFilter
- Qt 5.5.1 Reference Documentation

# QSensorFilter Class

The QSensorFilter class provides an efficient callback facility for asynchronous notifications of sensor changes. More...

Header: | #include <QSensorFilter>
qmake: | QT += sensors
Inherited By: | QAccelerometerFilter, QAltimeterFilter, QAmbientLightFilter, QAmbientTemperatureFilter, QCompassFilter, QDistanceFilter, QGyroscopeFilter, QHolsterFilter, QIRProximityFilter, QLightFilter, QMagnetometerFilter, QOrientationFilter, QPressureFilter, QProximityFilter, QRotationFilter, QTapFilter, and QTiltFilter

- List of all members, including inherited members

## Public Functions

virtual bool | filter(QSensorReading * reading) = 0

## Protected Functions

virtual | ~QSensorFilter()

## Detailed Description

The QSensorFilter class provides an efficient callback facility for asynchronous notifications of sensor changes.

Some sensors (eg. the accelerometer) are often accessed very frequently. This may be slowed down by the use of signals and slots. The QSensorFilter interface provides a more efficient way for the sensor to notify your class that the sensor has changed.

Additionally, multiple filters can be added to a sensor. They are called in order and each filter has the option to modify the values in the reading or to suppress the reading altogether.

Note that the values in the class returned by QSensor::reading() will not be updated until after the filters have been run.

See also filter().

## Member Function Documentation

### `[virtual protected]` QSensorFilter::~QSensorFilter()

Notifies the attached sensor (if any) that the filter is being destroyed.

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

This function is called when the sensor reading changes.

The filter can modify the reading.

Returns true to allow the next filter to receive the value. If this is the last filter, returning true causes the signal to be emitted and the value is stored in the sensor.

Returns false to drop the reading.