From 9b878055e769e9971a8830511be9ba113f3eff89 Mon Sep 17 00:00:00 2001 From: appleb_m Date: Fri, 22 May 2026 15:24:26 +0200 Subject: [PATCH] DAQ: updated FD operation scripts --- src/aare/daq/operations/face_detection/models.py | 7 +++---- src/aare/daq/operations/face_detection/service.py | 8 ++++---- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/aare/daq/operations/face_detection/models.py b/src/aare/daq/operations/face_detection/models.py index 8aa86ad1..ec0cfbf2 100644 --- a/src/aare/daq/operations/face_detection/models.py +++ b/src/aare/daq/operations/face_detection/models.py @@ -1,10 +1,9 @@ from dataclasses import dataclass -from typing import Callable -from aare.common.sample_geometry import SampleGeometryModel from aare.daq.config import BeamlineConfig from aare.daq.devices import BeamlineDevices from aare.daq.mlbox import MlBox +from aare.daq.operations.common.runtime import DAQRuntimeState, FaceDetectionProgressEmitter @dataclass @@ -12,8 +11,8 @@ class FaceDetectionContext: cfg: BeamlineConfig devs: BeamlineDevices mlbox: MlBox - sample_geometry_provider: Callable[[], SampleGeometryModel] - emit_progress: Callable[[dict], None] + runtime: DAQRuntimeState + progress_emitter: FaceDetectionProgressEmitter @dataclass diff --git a/src/aare/daq/operations/face_detection/service.py b/src/aare/daq/operations/face_detection/service.py index 75ce4e58..e85fcde3 100644 --- a/src/aare/daq/operations/face_detection/service.py +++ b/src/aare/daq/operations/face_detection/service.py @@ -32,7 +32,7 @@ class FaceDetectionService: angle: int, boxes_face: dict[int, tuple[float, float, float, float]], ) -> None: - self.ctx.emit_progress( + self.ctx.progress_emitter.emit_progress( { "running": True, "current_angle_deg": angle, @@ -49,11 +49,11 @@ class FaceDetectionService: "height_fit": {}, "area_fit": {}, } - self.ctx.emit_progress(payload) + self.ctx.progress_emitter.emit_progress(payload) return payload def _centre_correction(self, model: MLBoxModel, tolerance: float = 0.2) -> None: - geom = self.ctx.sample_geometry_provider() + geom = self.ctx.runtime.sample_geometry beam_y = geom.beam_location_pxl.y beam_x = geom.beam_location_pxl.x @@ -206,7 +206,7 @@ class FaceDetectionService: "best_angle_deg": best_fit_angle_area, }, } - self.ctx.emit_progress(payload) + self.ctx.progress_emitter.emit_progress(payload) return FaceDetectionResult(success=True, payload=payload) except Exception as e: