From b1791833e2aeaa4e09ccd957a67400a4c53ba354 Mon Sep 17 00:00:00 2001 From: Joe Knapper Date: Wed, 13 May 2026 13:03:40 +0100 Subject: [PATCH] Clean up data_to_array to not use get attr --- .../things/autofocus.py | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/openflexure_microscope_server/things/autofocus.py b/src/openflexure_microscope_server/things/autofocus.py index a2b5f0c7..d5851e80 100644 --- a/src/openflexure_microscope_server/things/autofocus.py +++ b/src/openflexure_microscope_server/things/autofocus.py @@ -454,14 +454,18 @@ class JPEGSharpnessMonitor: def data_to_array(self) -> SharpnessDataArrays: """Return the gathered data as SharpnessDataArrays.""" data = {} - for k in [ - "jpeg_times", - "jpeg_sizes", - "stage_times", - "focus_foms", - "stage_positions", - ]: - data[k] = getattr(self, k) + + data["jpeg_times"] = self._jpeg_times + data["stage_times"] = self._stage_times + data["stage_positions"] = self._stage_positions + + if self.record & SharpnessMethod.JPEG: + data["jpeg_sizes"] = self._jpeg_sizes + + if self.record & SharpnessMethod.FOCUS_FOM: + data["focus_foms"] = self._focus_foms + else: + data["focus_foms"] = [] return SharpnessDataArrays(**data) def data_dict(self) -> dict: