Source code for ophyd_async.epics.areadetector.kinetix

from bluesky.protocols import HasHints, Hints

from ophyd_async.core import PathProvider, StandardDetector
from ophyd_async.epics.areadetector.controllers.kinetix_controller import (
    KinetixController,
)
from ophyd_async.epics.areadetector.drivers import ADBaseShapeProvider
from ophyd_async.epics.areadetector.drivers.kinetix_driver import KinetixDriver
from ophyd_async.epics.areadetector.writers import HDFWriter, NDFileHDF


[docs] class KinetixDetector(StandardDetector, HasHints): """ Ophyd-async implementation of an ADKinetix Detector. https://github.com/NSLS-II/ADKinetix """ _controller: KinetixController _writer: HDFWriter def __init__( self, prefix: str, path_provider: PathProvider, drv_suffix="cam1:", hdf_suffix="HDF1:", name="", ): self.drv = KinetixDriver(prefix + drv_suffix) self.hdf = NDFileHDF(prefix + hdf_suffix) super().__init__( KinetixController(self.drv), HDFWriter( self.hdf, path_provider, lambda: self.name, ADBaseShapeProvider(self.drv), ), config_sigs=(self.drv.acquire_time,), name=name, ) @property def hints(self) -> Hints: return self._writer.hints