runner.py 850 B

1234567891011121314151617181920212223242526
  1. import target_py.target as target
  2. from sccd.runtime.statecharts_core import Event
  3. import threading
  4. if __name__ == '__main__':
  5. controller = target.Controller()
  6. def raw_inputter():
  7. while 1:
  8. controller.addInput(Event(raw_input(), "input", []))
  9. input_thread = threading.Thread(target=raw_inputter)
  10. input_thread.daemon = True
  11. input_thread.start()
  12. output_listener = controller.addOutputListener(["output"])
  13. def outputter():
  14. while 1:
  15. event = output_listener.fetch(-1)
  16. print event
  17. print "SIMTIME: %.2fs" % (event.getParameters()[0] / 1000.0)
  18. print "ACTTIME: %.2fs" % (event.getParameters()[1] / 1000.0)
  19. output_thread = threading.Thread(target=outputter)
  20. output_thread.daemon = True
  21. output_thread.start()
  22. controller.start()