summaryrefslogtreecommitdiffstats
path: root/show.py
diff options
context:
space:
mode:
Diffstat (limited to 'show.py')
-rw-r--r--show.py18
1 files changed, 17 insertions, 1 deletions
diff --git a/show.py b/show.py
index f8544c9..5749863 100644
--- a/show.py
+++ b/show.py
@@ -1,5 +1,6 @@
from __future__ import division, print_function
import time
+import Queue
class Clock(object):
def __init__(self):
@@ -18,10 +19,12 @@ class Clock(object):
class Show(object):
- def __init__(self, bridge):
+ def __init__(self, bridge, send_queue, recv_queue):
self.bridge = bridge
self.clock = Clock()
self.running = True
+ self.send_queue = send_queue
+ self.recv_queue = recv_queue
self.init()
def run(self, framerate=40):
@@ -30,6 +33,19 @@ class Show(object):
self.bridge.update()
self.clock.tick(framerate)
+ def stop(self):
+ self.running = False
+
+ def send_event(self, event_name, data=None):
+ self.send_queue.put((event_name, data))
+
+ def recv_event(self):
+ try:
+ msg = self.recv_queue.get_nowait()
+ return msg
+ except Queue.Empty:
+ return None
+
def init(self):
"""Override me"""
raise NotImplementedError