qtmobility/plugins/sensors/n900/n900filebasedsensor.cpp
changeset 4 90517678cc4f
parent 1 2b40d63a9c3d
child 11 06b8e2af4411
--- a/qtmobility/plugins/sensors/n900/n900filebasedsensor.cpp	Fri Apr 16 15:51:22 2010 +0300
+++ b/qtmobility/plugins/sensors/n900/n900filebasedsensor.cpp	Mon May 03 13:18:40 2010 +0300
@@ -45,11 +45,10 @@
     : QSensorBackend(sensor)
     , m_timerid(0)
 {
-    setSupportedUpdatePolicies(QSensor::OccasionalUpdates |
-            QSensor::InfrequentUpdates |
-            QSensor::FrequentUpdates |
-            QSensor::TimedUpdates |
-            QSensor::PolledUpdates);
+}
+
+n900filebasedsensor::~n900filebasedsensor()
+{
 }
 
 void n900filebasedsensor::start()
@@ -57,26 +56,14 @@
     if (m_timerid)
         return;
 
-    int interval = m_sensor->updateInterval();
+    if (sensor()->dataRate() == 0) {
+        sensorStopped();
+        return;
+    }
 
-    switch (m_sensor->updatePolicy()) {
-    case QSensor::OccasionalUpdates:
-        interval = 5000;
-        break;
-    case QSensor::InfrequentUpdates:
+    int interval = 1000 / sensor()->dataRate();
+    if (interval < 0)
         interval = 1000;
-        break;
-    case QSensor::Undefined: /* fall through */
-    case QSensor::FrequentUpdates:
-        interval = 100;
-        break;
-    case QSensor::TimedUpdates:
-        // already set
-        break;
-    default:
-        interval = 0;
-        break;
-    }
 
     if (interval)
         m_timerid = startTimer(interval);