from command_server import CommandServer, HandshakePayload, PixelKind from while_stopper import WhileStopper import logging import signal def receive_data() -> None: logging.info('Data received') def main(): server = CommandServer() print('Please launch BasaltPresenter now.') print('Then press Enter to continue...') input() logging.info('Waiting BasaltPresenter...') server.wait_handshake(HandshakePayload(PixelKind.GRAY_U8, 600, 600)) logging.info('Start to running.') stopper = WhileStopper() stopper.register() while True: if server.tick(receive_data, stopper.is_stop_requested()): break stopper.unregister() logging.info('Program stop.') print('Press Enter to exit...') input() if __name__ == "__main__": logging.basicConfig(level=logging.DEBUG, format='[%(asctime)s] [%(levelname)s] %(message)s', datefmt='%Y-%m-%d %H:%M:%S') main()