From 6035b79b50e3662dc5742283de5f7cafe4fc0183 Mon Sep 17 00:00:00 2001 From: Sven Augustin Date: Wed, 27 Aug 2025 12:35:37 +0200 Subject: [PATCH] split off wait_for_status function --- slic/core/acquisition/broker/brokerclient.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/slic/core/acquisition/broker/brokerclient.py b/slic/core/acquisition/broker/brokerclient.py index 5847e064b..246d52c7c 100644 --- a/slic/core/acquisition/broker/brokerclient.py +++ b/slic/core/acquisition/broker/brokerclient.py @@ -168,22 +168,24 @@ class BrokerClient: return detector = list(detectors.keys())[0] #TODO + self.wait_for_status(detector, wait_time=wait_time, timeout=timeout) + + def wait_for_status(self, detector, status="running", wait_time=0.1, timeout=300): start_time = time() stop_time = start_time + timeout while True: - status = self.restapi.get_detector_status(detector) + status_reply = self.restapi.get_detector_status(detector) - cb = color_bar(status) + cb = color_bar(status_reply) print(f"{detector}: {cb}") - running = ("running" in status) - if running: + if status in status_reply: break if time() > stop_time: - print("waiting for running status timed out") + print(f'{detector}: waiting for "{status}" status timed out') break sleep(wait_time)