basic.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import argparse
  2. import logging
  3. from src.server import GestureServer
  4. from src.window import FullscreenWindow
  5. from src.trackers.basic import BasicTracker
  6. from src.logger import Logger
  7. # Parse arguments
  8. parser = argparse.ArgumentParser(description='Basic test program for usage '
  9. 'of multi-touch API.')
  10. parser.add_argument('--log', metavar='LOG_LEVEL', default='INFO',
  11. choices=['DEBUG', 'INFO', 'WARNING'],
  12. help='set log level (defaults to INFO)')
  13. parser.add_argument('--logfile', metavar='FILENAME',
  14. help='filename for the log file (the log is printed to '
  15. 'stdout by default)')
  16. args = parser.parse_args()
  17. # Configure logger
  18. log_config = {'level': getattr(logging, args.log)}
  19. if args.logfile:
  20. log_config['filename'] = args.logfile
  21. Logger.configure(**log_config)
  22. # Create server
  23. server = GestureServer()
  24. # Create a window to add trackers to
  25. win = FullscreenWindow(server=server)
  26. # Add tracker and handlers
  27. tracker = BasicTracker(win)
  28. tracker.bind('down', lambda g: 0)
  29. tracker.bind('move', lambda g: 0)
  30. tracker.bind('up', lambda g: 0)
  31. # Start listening to TUIO events
  32. try:
  33. server.start()
  34. except KeyboardInterrupt:
  35. server.stop()