diff options
author | Sergio Ahumada <sergio.ahumada@digia.com> | 2013-11-08 18:18:19 +0100 |
---|---|---|
committer | Sergio Ahumada <sergio.ahumada@digia.com> | 2013-11-08 18:18:19 +0100 |
commit | 9e51dc1175a696eba275d9bec6fc60148a942db6 (patch) | |
tree | 35a0163d12d134a76dec480031a9b36bc62e71b3 /src/plugins/sensors/blackberry/bbmagnetometer.cpp | |
parent | 7e515c17df4e145c804f5d53458b8ac8845dcbb6 (diff) | |
parent | e3af89e2630bba68d3f10a33bccdd19bbc46664d (diff) |
Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Ie5df603a69a8cf2c15f6a6137fcf3edd00d62523
Diffstat (limited to 'src/plugins/sensors/blackberry/bbmagnetometer.cpp')
-rw-r--r-- | src/plugins/sensors/blackberry/bbmagnetometer.cpp | 43 |
1 files changed, 13 insertions, 30 deletions
diff --git a/src/plugins/sensors/blackberry/bbmagnetometer.cpp b/src/plugins/sensors/blackberry/bbmagnetometer.cpp index a58dfe91..19619d6a 100644 --- a/src/plugins/sensors/blackberry/bbmagnetometer.cpp +++ b/src/plugins/sensors/blackberry/bbmagnetometer.cpp @@ -55,39 +55,22 @@ bool BbMagnetometer::updateReadingFromEvent(const sensor_event_t &event, QMagnet { float x, y, z; - QMagnetometer * const magnetometer = qobject_cast<QMagnetometer *>(sensor()); - if (magnetometer && magnetometer->returnGeoValues()) { - switch (event.accuracy) { - case SENSOR_ACCURACY_UNRELIABLE: reading->setCalibrationLevel(0.0f); break; - case SENSOR_ACCURACY_LOW: reading->setCalibrationLevel(0.1f); break; + switch (event.accuracy) { + case SENSOR_ACCURACY_UNRELIABLE: reading->setCalibrationLevel(0.0f); break; + case SENSOR_ACCURACY_LOW: reading->setCalibrationLevel(0.1f); break; - // We determined that MEDIUM should map to 1.0, because existing code samples - // show users should pop a calibration screen when seeing < 1.0. The MEDIUM accuracy - // is actually good enough not to require calibration, so we don't want to make it seem - // like it is required artificially. - case SENSOR_ACCURACY_MEDIUM: reading->setCalibrationLevel(1.0f); break; - case SENSOR_ACCURACY_HIGH: reading->setCalibrationLevel(1.0f); break; - } - - x = convertValue(event.motion.dsp.x); - y = convertValue(event.motion.dsp.y); - z = convertValue(event.motion.dsp.z); - - } else { - reading->setCalibrationLevel(1.0f); - -#ifndef Q_OS_BLACKBERRY_TABLET - x = convertValue(event.motion.raw.x); - y = convertValue(event.motion.raw.y); - z = convertValue(event.motion.raw.z); -#else - // Blackberry Tablet OS does not support raw reading values - x = convertValue(event.motion.dsp.x); - y = convertValue(event.motion.dsp.y); - z = convertValue(event.motion.dsp.z); -#endif + // We determined that MEDIUM should map to 1.0, because existing code samples + // show users should pop a calibration screen when seeing < 1.0. The MEDIUM accuracy + // is actually good enough not to require calibration, so we don't want to make it seem + // like it is required artificially. + case SENSOR_ACCURACY_MEDIUM: reading->setCalibrationLevel(1.0f); break; + case SENSOR_ACCURACY_HIGH: reading->setCalibrationLevel(1.0f); break; } + x = convertValue(event.motion.dsp.x); + y = convertValue(event.motion.dsp.y); + z = convertValue(event.motion.dsp.z); + remapAxes(&x, &y, &z); reading->setX(x); reading->setY(y); |