Sensor network stuff works now
This commit is contained in:
+9
-15
@@ -3,25 +3,19 @@
|
||||
class Timer:
|
||||
def __init__(self, interval_s):
|
||||
self._interval_s = interval_s
|
||||
self._last_time = 0
|
||||
self._last_utc = (0,0,0)
|
||||
self._delta = 0
|
||||
|
||||
def set_interval(self, new_interval_s):
|
||||
self._interval_s = new_interval_s
|
||||
|
||||
def check_timer(self, utc):
|
||||
ns = utc[3] * 0.000000001
|
||||
timestamp = utc[0] * 3600 + utc[1] * 60 + utc[2] + ns
|
||||
shifted_timestamp = timestamp
|
||||
if self._last_utc[0] == 23 and utc[0] == 0:
|
||||
shifted_timestamp += 24*3600
|
||||
if (shifted_timestamp - self._last_time) >= self._interval_s:
|
||||
self._last_time = timestamp
|
||||
self._last_utc = (utc[0], utc[1], utc[2])
|
||||
def update(self, delta):
|
||||
self._delta += delta
|
||||
|
||||
def check_timer(self):
|
||||
if self._delta >= self._interval_s:
|
||||
self._delta = 0
|
||||
return True
|
||||
return False
|
||||
|
||||
def reset(self, utc):
|
||||
ns = utc[3] * 0.000000001
|
||||
self._last_time = utc[0] * 3600 + utc[1] * 60 + utc[2] + ns
|
||||
self._last_utc = (utc[0], utc[1], utc[2])
|
||||
def reset(self):
|
||||
self._delta = 0
|
||||
Reference in New Issue
Block a user