From 505dbc8230414a31cd3def9f2d8b144b0e9444f4 Mon Sep 17 00:00:00 2001 From: Thomas McGuire Date: Mon, 9 Jul 2012 10:54:25 +0200 Subject: Add QSensor::isFeatureSupported() Now it is possible to check if a backend supports a specific feature. During reviews of features like acceleration mode or duplicate skipping, the issue was raised how to check if these features are actually supported. The same is true for existing features like QMagnetometer::returnGeoValues. Change-Id: I47115d6c487bbcbb668a9021cdc7085e6780a67c Reviewed-by: Marc Mutz Reviewed-by: Lorn Potter --- src/plugins/sensors/blackberry/bbsensorbackend.cpp | 14 ++++++++++++++ src/plugins/sensors/blackberry/bbsensorbackend.h | 1 + 2 files changed, 15 insertions(+) (limited to 'src/plugins') diff --git a/src/plugins/sensors/blackberry/bbsensorbackend.cpp b/src/plugins/sensors/blackberry/bbsensorbackend.cpp index c13bc585..a1829b1a 100644 --- a/src/plugins/sensors/blackberry/bbsensorbackend.cpp +++ b/src/plugins/sensors/blackberry/bbsensorbackend.cpp @@ -204,6 +204,20 @@ void BbSensorBackendBase::stop() m_deviceFile.close(); } +bool BbSensorBackendBase::isFeatureSupported(QSensor::Feature feature) const +{ + switch (feature) { + case QSensor:: AlwaysOn: + return true; + case QSensor::Buffering: + case QSensor::GeoValues: + case QSensor::FieldOfView: + break; + } + + return false; +} + void BbSensorBackendBase::dataAvailable() { Q_FOREVER { diff --git a/src/plugins/sensors/blackberry/bbsensorbackend.h b/src/plugins/sensors/blackberry/bbsensorbackend.h index 5cfefbd9..81c54bb1 100644 --- a/src/plugins/sensors/blackberry/bbsensorbackend.h +++ b/src/plugins/sensors/blackberry/bbsensorbackend.h @@ -67,6 +67,7 @@ public: void start() Q_DECL_OVERRIDE; void stop() Q_DECL_OVERRIDE; + bool isFeatureSupported(QSensor::Feature feature) const Q_DECL_OVERRIDE; protected: QFile& deviceFile(); -- cgit v1.2.3