From 6bacf63117d44a8e0583c2c3369093dcdedf026a Mon Sep 17 00:00:00 2001 From: appleb_m Date: Thu, 29 Jan 2026 16:45:48 +0100 Subject: [PATCH] DAQ: functionality for auto_exposure added using enums --- src/aare/devices/area_detector.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/aare/devices/area_detector.py b/src/aare/devices/area_detector.py index 32dbea93..1f6ac594 100644 --- a/src/aare/devices/area_detector.py +++ b/src/aare/devices/area_detector.py @@ -1,6 +1,12 @@ +from enum import Enum + import epics import numpy as np +class AutoEnum(Enum): + MANUAL = 0 + ONCE = 1 + AUTO = 2 class epicsAD(object): def __init__(self, prefix, cam="cam1:", image="image1:"): @@ -133,10 +139,10 @@ class epicsAD(object): self.expo.put(expo) # 20 hz acquisition self.acquire.put(1) - def set_auto(self): + def set_auto(self, state: AutoEnum): self.acquire.put(0, wait=True) - self.gain_mode.put(2) # automatic gain control - self.expo_mode.put(2) # automatic exposure control + self.gain_mode.put(state.value) # automatic gain control + self.expo_mode.put(state.value) # automatic exposure control self.acquire.put(1) def set_auto_once(self):