Skip to content
Snippets Groups Projects
Commit cb62a8f3 authored by Martin Killenberg's avatar Martin Killenberg
Browse files

fix: introduce process to decouple GUI

parent b444bd9e
No related branches found
No related tags found
No related merge requests found
...@@ -82,6 +82,20 @@ class TestStandMainWindow(QMainWindow): ...@@ -82,6 +82,20 @@ class TestStandMainWindow(QMainWindow):
self.stopButton.setEnabled(True) self.stopButton.setEnabled(True)
self.qt_app.processEvents(); self.qt_app.processEvents();
p = mp.Process(target=self.do_measurement_impl)
p.start()
while p.is_alive():
time.sleep(0.1)
self.qt_app.processEvents();
p.join()
self.runSettingsLayout.setEnabled(True)
self.startButton.setEnabled(True)
self.stopButton.setEnabled(False)
#the part that is started in a separate process
def do_measurement_impl(self):
os.chdir(self.start_dir) os.chdir(self.start_dir)
with open('test_stand_parameter.json', 'r') as f: with open('test_stand_parameter.json', 'r') as f:
config_data = json.load(f) config_data = json.load(f)
...@@ -96,7 +110,6 @@ class TestStandMainWindow(QMainWindow): ...@@ -96,7 +110,6 @@ class TestStandMainWindow(QMainWindow):
output_basename = self.baseName.text() output_basename = self.baseName.text()
if not self.check_and_change_dir(config_data['data_folder'] + '/' + output_basename): if not self.check_and_change_dir(config_data['data_folder'] + '/' + output_basename):
self.setEnabled(True)
return return
meas = None meas = None
...@@ -156,10 +169,6 @@ class TestStandMainWindow(QMainWindow): ...@@ -156,10 +169,6 @@ class TestStandMainWindow(QMainWindow):
if meas is not None: if meas is not None:
meas.chamber.close() meas.chamber.close()
meas.ext_sensors.close() meas.ext_sensors.close()
self.runSettingsLayout.setEnabled(True)
self.startButton.setEnabled(True)
self.stopButton.setEnabled(False)
if __name__ == '__main__': if __name__ == '__main__':
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment