diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/sensors/ios/iosgyroscope.h | 4 | ||||
-rw-r--r-- | src/plugins/sensors/ios/iosgyroscope.mm | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/sensors/ios/iosgyroscope.h b/src/plugins/sensors/ios/iosgyroscope.h index 358a7c83..ed46241c 100644 --- a/src/plugins/sensors/ios/iosgyroscope.h +++ b/src/plugins/sensors/ios/iosgyroscope.h @@ -42,6 +42,8 @@ #ifndef IOSGYROSCOPE_H #define IOSGYROSCOPE_H +#include <Foundation/Foundation.h> + #include <qsensorbackend.h> #include <qgyroscope.h> @@ -59,7 +61,7 @@ public: void stop(); private: - void *m_updateQueue; + NSOperationQueue *m_updateQueue; QGyroscopeReading m_reading; }; QT_END_NAMESPACE diff --git a/src/plugins/sensors/ios/iosgyroscope.mm b/src/plugins/sensors/ios/iosgyroscope.mm index 03289913..700755de 100644 --- a/src/plugins/sensors/ios/iosgyroscope.mm +++ b/src/plugins/sensors/ios/iosgyroscope.mm @@ -60,7 +60,7 @@ IOSGyroscope::IOSGyroscope(QSensor *sensor) IOSGyroscope::~IOSGyroscope() { - [static_cast<NSOperationQueue *>(m_updateQueue) release]; + [m_updateQueue release]; } void IOSGyroscope::start() @@ -71,8 +71,7 @@ void IOSGyroscope::start() motionManager.gyroUpdateInterval = (hz == 0) ? 0 : 1. / hz; QPointer<QObject> self = this; - NSOperationQueue *queue = static_cast<NSOperationQueue *>(m_updateQueue); - [motionManager startGyroUpdatesToQueue:queue withHandler:^(CMGyroData *data, NSError *error) { + [motionManager startGyroUpdatesToQueue:m_updateQueue withHandler:^(CMGyroData *data, NSError *error) { // NSOperationQueue is multi-threaded, so we process the data by queuing a callback to // the main application queue. By the time the callback executes, IOSAccelerometer might // have been deleted, so we need an extra QPointer check for that: |