X-Git-Url: https://git.ralfj.de/saartuer.git/blobdiff_plain/960dd08b9c20e339762ba9dab8977f29b05ac522..dfe98478e79cf926b2867677b3e1b90e6b679024:/waker.py diff --git a/waker.py b/waker.py index 7b212a1..1cf2884 100644 --- a/waker.py +++ b/waker.py @@ -1,13 +1,35 @@ from libtuer import ThreadRepeater -from statemachine import StateMachine +from collections import namedtuple + +SLEEP_TIME = 0.5 + +ToBeWoken = namedtuple('ToBeWoken','f period time_since_call one_shot') class Waker(): def __init__(self, sm): self._sm = sm - self._t = ThreadRepeater(self._wake, 0.5, name="Waker") + self._t = ThreadRepeater(self._wake, SLEEP_TIME, name="Waker") + self._tobewokens = [] + + def register(f, time, one_shot = False): + '''Register a function which is called approximately every