summaryrefslogtreecommitdiffstats
path: root/src/plugins/sensors
Commit message (Collapse)AuthorAgeFilesLines
* Update license headers and add new licensesJani Heikkinen2014-08-24145-2683/+1523
| | | | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: I99c601a398559886c2900f3e04833acfceba8263 Reviewed-by: Antti Kokko <antti.kokko@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
* Merge remote-tracking branch 'origin/5.3' into 5.4Frederik Gladhorn2014-08-1219-72/+160
|\ | | | | | | | | | | | | | | Conflicts: src/plugins/sensors/sensorfw/sensorfwproximitysensor.cpp src/sensors/qcompass.cpp Change-Id: Idfcbbfe1757a4b827663453abc27f4026cd3d752
| * Restore setting of sensors interface.Robin Burchell2014-07-171-0/+4
| | | | | | | | | | | | | | | | Change I5c1bf3999ad2268c0dba9b3fe511d999c2e63fd9's forward porting from Qt 5.1 removed this, thus the interface was never set, thus sensors all broke. Change-Id: If3b14b5ebd20e6cb64bc2000b23a2c1e37d36b05 Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
| * Series of crash fixes from Mer, squashedLorn Potter2014-07-1013-76/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1)tracing plugin loading 2)m_remoteSensorManager can be nullptr But it seems it does not solve incorrect initialization in the case manager interface is nullptr: init() for different sensors does not check initDone 3)split initSensor() to template function and function most of initSensor() does not depend on template param, so it is better to split it -> less code should be generated 4)do not use sensor manager if it is invalid 5)correct class members initialization order 6)assert sensor interface is not null From what I saw according to logic it should not happen so using Q_ASSERT for better maintainability 7)check local interface pointer in SensorfwTapSensor::start() Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com> Change-Id: I5c1bf3999ad2268c0dba9b3fe511d999c2e63fd9 Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
| * [sensorfw] need to run init after sensord has been restartedLorn Potter2014-07-1019-0/+63
| | | | | | | | | | | | | | This ensures things are setup and work properly. Change-Id: I23c8b53e760d49695c5ae207eed77a2e7d2be3a4 Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
* | Compass sensor implementation for AndroidPaul Olav Tvete2014-08-127-0/+298
| | | | | | | | | | Change-Id: Ic13d2d1e400a92b2f0c3c83e279c58b799f9d06b Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* | winrt: Avoid divide-by-zero when starting sensorsAndrew Knight2014-08-085-5/+30
| | | | | | | | | | | | | | | | | | | | Several sensors were setting the dataRate without checking the value first. If the dataRate is zero, then don't set the native rate (use the default). Task-number: QTBUG-40664 Change-Id: I50e78fd071bd1f56e47baf23b74900b8a6e6c7eb Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* | Set dataRates for sensorsMaurice Kalinowski2014-08-085-0/+15
| | | | | | | | | | | | | | | | | | | | | | Some sensors need to set a dataRate in which they are providing values. Values are in Hz, hence the conversion and defaults to 1Hz like on other backends as well. Task-number: QTBUG-40664 Change-Id: I980155f9b4b2772e8420df4b51e8ebb5cdea6037 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* | Add Windows Phone 8.1 supported sensorsMaurice Kalinowski2014-08-083-19/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | AmbientLight as well as Orientation sensors have been added to the Windows Phone 8.1 API. Furthermore accuracy for QCompass is now available on all WinRT related platforms. [ChangeLog][Windows Phone] Add support for QAmbientLightSensor and QOrientationSensor with Windows Phone 8.1 Task-number: QTBUG-39627 Change-Id: I6b2674c0d9935b874f35e6453f1e51d811133264 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* | Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-06-266-7/+7
|\ \ | |/ | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I01306a5c0d34f85efdbc5f947add4dee0cccbf8e
| * WinRT: Check whether default sensors were obtained successfullyv5.3.1Oliver Wolff2014-06-186-7/+7
| | | | | | | | | | | | | | | | | | In case of an unsuccessful call of the GetDefault function the returned HRESULT does not have the FAILED status but the returned sensor is 0. Task-number: QTBUG-39698 Change-Id: I42a8327c1d7687ab7a8ca71be5a2234b2c4e0b38 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* | Merge remote-tracking branch 'origin/5.3' into devSergio Ahumada2014-06-146-0/+20
|\ \ | |/ | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ia804a9a975baea0f971c7bea004c5ce403d1adee
| * Android: don't crash if Gravity is not supportedstablePaul Olav Tvete2014-06-023-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | The QtSensors documentation says that if Gravity mode is not available, we should silently fall back to the default Combined mode. In addition, add null pointer checks in case we try to ask for non-existent sensors in the future. Task-number: QTBUG-39335 Change-Id: I6c18622d081db4e3a7d07c744bb0b746e3f5c6ff Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
| * ios: skip accelerometer, gyroscope and magnetomenter updates if NaNFawzi Mohamed2014-04-173-0/+12
| | | | | | | | | | | | Change-Id: I7becfab81d56fc45ec7dc76333383503b8abccfe Reviewed-by: Alex Blasche <alexander.blasche@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | send first proximity signal even when it's "closed".Lorn Potter2014-05-202-10/+7
| | | | | | | | | | | | | | | | This fixes a bug where the proximity sensor would send the initial signal only when it was not closed. This will send it regardless. Change-Id: I5f388e671091ae2a7719f700a049cea41bfaa0db Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
* | fix obs buildLorn Potter2014-05-205-16/+16
| | | | | | | | | | Change-Id: Ia70486a0c6b813829ffd633f5334945f73d3b628 Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-04-1119-16/+26
|\ \ | |/ | | | | Change-Id: I07a6842afc72f56c82e82906429fa422f9a82de2
| * Android, Fix generic access to QAccelerometerAndrew Inwood2014-04-092-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Generic access to QAccelerometer through QSensor was broken by my previous change: 971fc95eca1d9db93aa4bdb75793dfe83e4a97db When using a QSensor* to access the accelerometer, the qobject_cast would fail, and return 0. I fix this by defaulting the accelerationMode to Combined when a QSensor* is used. Change-Id: If8389808a416807b72709a13ca315aa23bbf94a0 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
| * add PLUGIN_CLASS_NAME declarations to plugin projectsOswald Buddenhagen2014-04-097-0/+7
| | | | | | | | | | | | | | | | | | | | | | needed for automatic static linking (and later deployment). the gesture plugins are excluded from the automation based on the assumption that they are usually not needed. the example and the test plugin are also excluded for obvious reasons. Change-Id: I7645aa0daf216ce430989e13d4380dbe6dd2bbd1 Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
| * BlackBerry: update plugin keyAndrew Inwood2014-04-079-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The plugin key for both the Generic backend and the BlackBerry backend were set to "notused". This ultimately caused the Generic backend not to be loaded, which is why QTiltSensor wasn't being exposed. The duplicate keys caused a collision in a QMap in QFactoryLoader, making it look like the generic backend had been created, when it hadn't. Tested on a BlackBerry Z10. Change-Id: Ie5e40586751e7c3b9683a94a39b07efd4fc7fc82 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
| * Simplify building of simulator based codeAlex Blasche2014-04-071-3/+5
| | | | | | | | | | | | | | | | | | There is no need for the CONFIG+=simulator logic anymore. qtHaveModule() is an automatic way of doing the same. Change-Id: Ibe87abb93e036a82fae3a752d9886c58ccebeec1 Reviewed-by: Rainer Keller <rainer.keller@digia.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
* | Create a new sensor type for distance.Andrew Inwood2014-03-284-0/+126
|/ | | | | | | | | | | | | | | | | | | Create a new sensor type for distance. This sensor type supports new hardware sensors that can measure physical distance from the device, in centimeters. The API is designed to mimic the Android API for proximity (TYPE_PROXIMITY), so that if a given proximity sensor only supports a binary measurement (near vs far), then instead of reporting distance in cm, the QDistanceSensor will return the max range value to represent far, and a lesser value to represent close. Using this definition should simplify implementation. The main reason for not implementing this as a new property of QProximitySensor is that clients of QProximitySensor have made the assumption that they will receive the readingReady signal if and only if the reading has changed from near to far or vice versa. Adding a distance property will break that assumption, as distance has a higher degree of precision. Change-Id: Ia804948c78ff7391fc8b78df975cddcf861326dc Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* Implement QAccelerometer accelerationModev5.3.0-beta1Andrew Inwood2014-03-204-3/+49
| | | | | | | | | | | | | | | | | | | The Qt API does not expose Linear Accel and Gravity as separate sensor types, they are different versions of QAccelerometer, accessed by modifying the accelerationMode property. The possible values are Combined, User, and Gravity, which correspond to Acceleration, Linear Acceleration, and Gravity respectively. When constructing the accelerometer backend, the accelerationMode must be queried. The backend must also connect to the accelerationModeChanged signal from the QAccelerometer. I think that the existing implementation of QSensors on Android assumes that there is a one-to-one correspondence between QSensors and AndroidSensorTypes. To fix this assumption, I promoted the m_type attribute of androidcommonsensor.h from private to protected so that a sensor backend can update the Android sensor being used. Task-number: QTBUG-30531 Change-Id: I842d2485109542f74731d179e2720ea55fa248cc Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* BlackBerry: Update threshold for close detectionAndrew Inwood2014-03-111-1/+5
| | | | | | | | | | The current algorithm for close detection in QProximitySensor will not work for sensors whose output is not binary (ie, close/far). The new algorithm will use the threshold of 8cm when the output is not binary. Change-Id: I2173e9afae0a2d29434e092e1afc09d1c6f5647c Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* Fix some typos in comments and documentationSergio Ahumada2014-03-044-5/+5
| | | | | Change-Id: I8541601c0bfe2b7c80e88b4617e8215b266fb0bd Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Initial sensors backend for WinRT/Windows Phonev5.3.0-alpha1Andrew Knight2014-02-1618-0/+1887
| | | | | | | | | | This provides the sensor plugin with support for accelerometer, gyroscope, rotation sensor, orientation sensor, compass, and ambient light sensor. Change-Id: Ic91a6cef98e4011858552c5cd6407b494579fe17 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Normalize signal & slot signatures in connectionThiago Macieira2014-02-0311-24/+24
| | | | | | | Profiling shows Qt Creator spends 2% of its load time normalizing Change-Id: I462d0e0b603ab644e57c5b804015508abeebdc6e Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* Compile fix for WinRTMaurice Kalinowski2014-01-281-0/+4
| | | | | | Change-Id: Ifc7b86fa4d40dd051399999ad998b0750183d501 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* Use correct method signature for slots.old/5.2Michael Brasser2014-01-161-2/+2
| | | | | | Change-Id: I09b5df218ad22afefe8a615c80585aa3fb46006f Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* Make QtSensors use Q_DECL_OVERRIDESamuel Gaist2013-11-1941-102/+102
| | | | | | | | | This patch aims to make QtSensors uses Q_DECL_OVERRIDE uniformly across the module Task-number: QTBUG-27392 Change-Id: I5f814f93307159175f92e29a9990587c03cce96f Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* BlackBerry: Disabled "returnGeoValues" featureBernd Weimer2013-10-282-36/+15
| | | | | | | | Elimination of interference is not supported on BlackBerry, so returnGeoValues property will be ignored. Change-Id: I5c6e3a80ec18f9e0d349d3c4040bfb8067a72291 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* make sensorfw plugin handle the sensord restarting.Lorn Potter2013-10-2325-74/+182
| | | | | | | | | | This way, clients that are connected will continue to receive updates after the sensord has restarted, without the need to restart the sensor. Task-number: QTBUG-34050 Change-Id: I4a8fbca189764cf23a1453feae5c1fd9ed6911e7 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* BlackBerry: Ensured that proper sensor.h file is usedBernd Weimer2013-09-192-3/+7
| | | | | Change-Id: I746cbf971b88cdffcfc5d675d27d0dda5bac95ad Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* Android: Add missing sensorsPaul Olav Tvete2013-09-1911-8/+435
| | | | | | | | | This adds Android backends for QAmbientTemperatureSensor, QPressureSensor and QProximitySensor. Task-number: QTBUG-30531 Change-Id: I8d97f62d007c886fcc8dd701e23f6a35a3cbd748 Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* Merge branch 'stable' into devSergio Ahumada2013-08-052-2/+2
|\ | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ifed287670b09398ef659b9420c3e513a699a0944
| * add gyroscope for sensorfw backendLorn Potter2013-08-011-0/+1
| | | | | | | | | | | | | | | | Task-number: QTBUG-32754 Change-Id: I9037c20953d67584fdfeb4d0fabdfd73f919f14c Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
| * use 9.80665 as standard gravity for calculations.Lorn Potter2013-08-011-2/+1
| | | | | | | | | | | | | | | | Task-number: QTBUG-32751 Change-Id: I65076fa41d5c6a4e716df96bc5156068c1bd0040 Reviewed-by: Alex Blasche <alexander.blasche@digia.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | iOS: change magnetometer implementation to use Timer base pollingRichard Moe Gustavsen2013-06-122-83/+54
| | | | | | | | | | | | | | | | | | | | | | Ref change: 102bdf3 We need to change the implementation to use polling rather than callback to achieve full performance together with fine-grained QTimers. Change-Id: Ic3bf978633c56175eeca90cad8ed764a0b1c9b0c Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | iOS: change gyro implementation to use Timer base pollingRichard Moe Gustavsen2013-06-102-35/+23
| | | | | | | | | | | | | | | | | | | | | | Ref change: 102bdf3 We need to change the implementation to use polling rather than callback to achieve full performance together with fine-grained QTimers. Change-Id: I895418996b53432642d37279855167d815261d92 Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* | Merge branch 'stable' into devSergio Ahumada2013-06-0722-24/+45
|\ \ | |/ | | | | | | | | | | | | Conflicts: .qmake.conf sync.profile Change-Id: I0eaa022110b99fc5bc7cdf6304b5cda3ad3e8f8c
| * fix build in OBS, as well as fixes for API changes.Lorn Potter2013-06-0622-23/+44
| | | | | | | | | | | | | | Change-Id: I27eabe7c8b79e03d814deb541db5e7f0b5449099 Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
| * Fix pkgconfig dependsLorn Potter2013-05-231-1/+1
| | | | | | | | | | | | | | We call it sensord-qt5 now. Use this instead of the qt4 sensord Change-Id: I54f9de52e572f0afbfef742cf0c84fc64f1469f0 Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* | iOS: change accelerometer to use QTimer for pollingRichard Moe Gustavsen2013-06-052-37/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to the docs (CMMotionManager class reference) there are two ways of interacting with the accelerometer; Either through the callback API (NSOperationQueue), or peridic sampling (polling). Our first implementation of IOSAcceleometer used the former technique, which turns out to have bad performance when using the sensor together with a fine-grained QTimer. And this case is pretty common when using sensors together with e.g QML. Reading through the docs more carefully, they recommend using the polling technique when creating games instead since the NSOperationQueue introduces some overhead. So this patch does that, change the implementation to use QTimer based polling. And this solves the performance issues found. Change-Id: Ifde0d2292302467afb8db90a954ef45f3238350e Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-05-237-18/+21
|\ \ | |/ | | | | Change-Id: I497c153fe555fbfbbd5fbb40f65f614ee33b065d
| * Remove debug output.Friedemann Kleint2013-05-132-2/+0
| | | | | | | | | | | | | | Task-number: QTBUG-31074 Change-Id: I7cb66ccbe74203e87e3bcc60400a8f7b2b2be0ed Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * BlackBerry: Fix for GeoValues supportBernd Weimer2013-05-061-3/+1
| | | | | | | | | | | | | | | | Generic QSensor("QMagnetometer") crashed, because of a null pointer access. Fixed by disabling geo values support for generic magnetometer sensors. Change-Id: Ie3e654df10f325ff42cd3a08c3108e9b7a84604f Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * Make it possible to bundle Android buildsEskil Abrahamsen Blomfeldt2013-05-064-13/+20
| | | | | | | | | | | | | | | | | | Add the bundled jar file and information about required plugins. Task-number: QTBUG-30751 Change-Id: I41918e8f04449439703ef1ae91c78636e9475f36 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-04-298-3/+428
|\ \ | |/ | | | | Change-Id: I4cfd0e2a2f108f5ecf79c56418c02928b041856e
| * iOS: enable generic sensorsRichard Moe Gustavsen2013-04-231-0/+4
| | | | | | | | | | Change-Id: I400661cabd4839f8a4e0c2b648a8a62a161dc955 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * Generic: set PLUGIN_CLASS_NAME to help static builds (iOS)Richard Moe Gustavsen2013-04-231-0/+1
| | | | | | | | | | | | | | | | | | | | qmake will parse QTPLUGIN when building static apps, and create a stand-alone cpp file that adds the needed Q_IMPORT_PLUGIN lines. But for this to work, PLUGIN_CLASS_NAME needs to be set. Change-Id: Id92d78f3d77c3ce0d59fd27eec1df3271a947d51 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>