From e686969424ede2a4640fbe25e28151522b0834fa Mon Sep 17 00:00:00 2001
From: Prasanna Pakkiam
Date: Thu, 8 Aug 2024 08:47:49 +1000
Subject: [PATCH] Fixed bug in ExperimentConfiguration when handling extra
post-processors in ACQ.
---
sqdtoolz/ExperimentConfiguration.py | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/sqdtoolz/ExperimentConfiguration.py b/sqdtoolz/ExperimentConfiguration.py
index fbac702..ac60cba 100644
--- a/sqdtoolz/ExperimentConfiguration.py
+++ b/sqdtoolz/ExperimentConfiguration.py
@@ -103,11 +103,21 @@ def _settle_currently_used_processors(self, conf=None):
cur_proc = self._lab.PROC(cur_dict['Processor'])
if cur_proc != None:
self._proc_configs += [cur_proc]
+ if 'ExProcessors' in cur_dict:
+ for proc_name in cur_dict['ExProcessors']:
+ cur_proc = self._lab.PROC(proc_name)
+ if cur_proc != None:
+ self._proc_configs += [cur_proc]
else:
if self._hal_ACQ and hasattr(self._hal_ACQ, 'data_processor'):
cur_proc = self._hal_ACQ.data_processor
if cur_proc:
self._proc_configs = [cur_proc]
+ if hasattr(self._hal_ACQ, '_post_processors'): #TODO: Perhaps refactor to have ACQ return all used processors?
+ for proc_name in self._hal_ACQ._post_processors:
+ cur_proc = self._lab.PROC(proc_name)
+ if cur_proc != None:
+ self._proc_configs += [cur_proc]
def get_config(self):
return self._init_config