From be07966631ec097a3c8acd81c5b471a96f394dee Mon Sep 17 00:00:00 2001 From: Julian Stirling Date: Tue, 24 Jun 2025 10:18:30 +0100 Subject: [PATCH] Remove the overwriting of internal globals, requires removing future annoations --- .../things/autofocus.py | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/openflexure_microscope_server/things/autofocus.py b/src/openflexure_microscope_server/things/autofocus.py index dd4a388a..e4ed09b9 100644 --- a/src/openflexure_microscope_server/things/autofocus.py +++ b/src/openflexure_microscope_server/things/autofocus.py @@ -6,7 +6,6 @@ camera together to perform an autofocus routine. See repository root for licensing information. """ -from __future__ import annotations from contextlib import contextmanager import logging import time @@ -37,9 +36,14 @@ CaptureDep = direct_thing_client_dependency(CaptureThing, "/capture/") SETTLING_TIME = 0.3 -class JPEGSharpnessMonitor: - __globals__ = globals() # Required for FastAPI dependency +class SharpnessDataArrays(BaseModel): + jpeg_times: NDArray + jpeg_sizes: NDArray + stage_times: NDArray + stage_positions: list[dict[str, int]] + +class JPEGSharpnessMonitor: def __init__(self, stage: Stage, camera: Camera, portal: BlockingPortal): self.camera = camera self.stage = stage @@ -140,13 +144,6 @@ class JPEGSharpnessMonitor: SharpnessMonitorDep = Annotated[JPEGSharpnessMonitor, Depends()] -class SharpnessDataArrays(BaseModel): - jpeg_times: NDArray - jpeg_sizes: NDArray - stage_times: NDArray - stage_positions: list[dict[str, int]] - - class AutofocusThing(Thing): """The Thing concerned with combinations of z axis movements and the camera.