Source code for ophyd_async.epics.adkinetix._kinetix_io

from ophyd_async.core import StrictEnum
from ophyd_async.epics import adcore
from ophyd_async.epics.core import epics_signal_rw_rbv


[docs] class KinetixTriggerMode(StrictEnum): """Trigger mode for ADKinetix detector.""" INTERNAL = "Internal" EDGE = "Rising Edge" GATE = "Exp. Gate"
class KinetixReadoutMode(StrictEnum): SENSITIVITY = 1 SPEED = 2 DYNAMIC_RANGE = 3 SUB_ELECTRON = 4
[docs] class KinetixDriverIO(adcore.ADBaseIO): """Mirrors the interface provided by ADKinetix/db/ADKinetix.template.""" def __init__(self, prefix: str, name: str = "") -> None: # self.pixel_format = epics_signal_rw_rbv(PixelFormat, prefix + "PixelFormat") self.trigger_mode = epics_signal_rw_rbv( KinetixTriggerMode, prefix + "TriggerMode" ) self.readout_port_idx = epics_signal_rw_rbv( KinetixReadoutMode, prefix + "ReadoutPortIdx" ) super().__init__(prefix, name=name)