X-Git-Url: https://git.ucc.asn.au/?p=uccvend-vendserver.git;a=blobdiff_plain;f=sql-edition%2Fservers%2FIdler.py;h=07be6ab8b17c9d15a1541a1cbb764e8003bf8231;hp=d11fe90db5686293d6528518ad565088c5d23964;hb=0641ff03b772c74ccb868c536514e5be9420953b;hpb=81da4cd39d67db53ea95c6ddb5855e050a3f4391 diff --git a/sql-edition/servers/Idler.py b/sql-edition/servers/Idler.py index d11fe90..07be6ab 100755 --- a/sql-edition/servers/Idler.py +++ b/sql-edition/servers/Idler.py @@ -13,8 +13,8 @@ class Idler: self.v = v def next(self): - """Displays next stage of the idler""" - pass + """Displays next stage of the idler. Returns time to the next step""" + return 1 def reset(self): """Resets the idler to a known intial state""" @@ -28,6 +28,29 @@ class Idler: """How much we want this idler to be the next one chosen""" return 1 +class GreetingIdler(Idler): + def __init__(self, v, secs_to_greeting = None): + self.v = v + self.secs_to_greeting = secs_to_greeting + + def next(self): + if not self.secs_to_greeting is None: + x = self.secs_to_greeting + self.secs_to_greeting = None + return x + + self.v.display('UCC SNACKS') + return 2 + + def reset(self): + pass + + def finished(self): + return self.secs_to_greeting == None + + def affinity(self): + return 0 + class TrainIdler(Idler): def __init__(self, v): self.idle_state = 0 @@ -240,7 +263,9 @@ class ClockIdler(Idler): self.last = None def next(self): - output = time.strftime("%H:%M:%S") + colonchar = ':' + if int(time.time()*2) & 1: colonchar = ' ' + output = time.strftime("%%H%c%%M%c%%S"%(colonchar,colonchar)) if output != self.last: self.v.display(" %8.8s " % (output)) self.last = output