dont start timers as recurring timers... this is better for blocking syscalls
[enigma2.git] / lib / python / Components / Sources / FrontendStatus.py
index 8e29030ac5455d3ca6d13dda9287f83b8ec074fa..5eb3445f09080dedb336203a954e15aa9eb09dd1 100644 (file)
@@ -10,7 +10,7 @@ class FrontendStatus(Source):
                self.invalidate()
                self.poll_timer = eTimer()
                self.poll_timer.callback.append(self.updateFrontendStatus)
-               self.poll_timer.start(update_interval)
+               self.poll_timer.start(update_interval, True)
 
        def invalidate(self):
                self.snr = self.agc = self.ber = self.lock = self.snr_db = None
@@ -20,12 +20,13 @@ class FrontendStatus(Source):
                if not status:
                        self.invalidate()
                else:
-                       self.snr = status.get("tuner_signal_power")
-                       self.snr_db = status.get("tuner_signal_power_db")
-                       self.agc = status.get("tuner_signal_quality")
+                       self.snr = status.get("tuner_signal_quality")
+                       self.snr_db = status.get("tuner_signal_quality_db")
+                       self.agc = status.get("tuner_signal_power")
                        self.ber = status.get("tuner_bit_error_rate")
                        self.lock = status.get("tuner_locked")
                self.changed((self.CHANGED_ALL, ))
+               self.poll_timer.start(self.update_interval, True)
 
        def getFrontendStatus(self):
                if self.frontend_source:
@@ -49,4 +50,5 @@ class FrontendStatus(Source):
 
        def destroy(self):
                self.poll_timer.callback.remove(self.updateFrontendStatus)
+               Source.destroy(self)