From 40309491b06b4582136601c073ed485224cc687d Mon Sep 17 00:00:00 2001 From: x01da Date: Wed, 27 May 2026 14:23:21 +0200 Subject: [PATCH] fix: nexus file structure for nidaq continuous scan --- .../file_writer/debye_nexus_structure.py | 29 +++++++++++-------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/debye_bec/file_writer/debye_nexus_structure.py b/debye_bec/file_writer/debye_nexus_structure.py index b472e94..b7c7e6c 100644 --- a/debye_bec/file_writer/debye_nexus_structure.py +++ b/debye_bec/file_writer/debye_nexus_structure.py @@ -236,6 +236,8 @@ class DebyeNexusStructure(DefaultFormat): self.configuration.get("nidaq", {}).get("nidaq_add_chans", {}).get("value") ) + rle = self.configuration.get("nidaq", {}).get("nidaq_rle", {}).get("value") + measurement_mode = entry.create_group(name="mode") measurement_mode.attrs["NX_class"] = "NX_CHAR" @@ -311,10 +313,11 @@ class DebyeNexusStructure(DefaultFormat): i0.attrs["NX_class"] = "NXdata" i0.attrs["units"] = "V" - main_data.create_soft_link( - name="i0", - target="/entry/collection/readout_groups/async/nidaq/nidaq_ai0_mean/value", - ) + if rle: + target = "/entry/collection/readout_groups/async/nidaq/nidaq_ai0_mean/value" + else: + target = "/entry/collection/readout_groups/async/nidaq/nidaq_ai0/value" + main_data.create_soft_link(name="i0", target=target) ################## ## i1 @@ -325,10 +328,11 @@ class DebyeNexusStructure(DefaultFormat): i1.attrs["NX_class"] = "NXdata" i1.attrs["units"] = "V" - main_data.create_soft_link( - name="i1", - target="/entry/collection/readout_groups/async/nidaq/nidaq_ai2_mean/value", - ) + if rle: + target = "/entry/collection/readout_groups/async/nidaq/nidaq_ai2_mean/value" + else: + target = "/entry/collection/readout_groups/async/nidaq/nidaq_ai2/value" + main_data.create_soft_link(name="i1", target=target) ################## ## i2 @@ -339,10 +343,11 @@ class DebyeNexusStructure(DefaultFormat): i2.attrs["NX_class"] = "NXdata" i2.attrs["units"] = "V" - main_data.create_soft_link( - name="i2", - target="/entry/collection/readout_groups/async/nidaq/nidaq_ai4_mean/value", - ) + if rle: + target = "/entry/collection/readout_groups/async/nidaq/nidaq_ai4_mean/value" + else: + target = "/entry/collection/readout_groups/async/nidaq/nidaq_ai4/value" + main_data.create_soft_link(name="i2", target=target) ################## ## ci sum