Note

Ophyd async is considered experimental until the v1.0 release and may change API on minor release numbers before then

ophyd_async.epics.adcore#

Members

ADBaseIO

DetectorState

Default set of states of an AreaDetector driver.

NDArrayBaseIO

NDFileHDFIO

NDPluginStatsIO

Plugin for computing statistics from an image or region of interest within an image.

ADBaseDatasetDescriber

set_exposure_time_and_acquire_period_if_supplied

Sets the exposure time if it is not None and the acquire period to the exposure time plus the deadtime.

start_acquiring_driver_and_ensure_status

Start acquiring driver, raising ValueError if the detector is in a bad state.

ADHDFWriter

SingleTriggerDetector

ADBaseDataType

FileWriteMode

ImageMode

NDAttributePv

NDAttributeParam

NDAttributeDataType

stop_busy_record

NDAttributePvDbrType

class ophyd_async.epics.adcore.DetectorState(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#

Default set of states of an AreaDetector driver. See definition in ADApp/ADSrc/ADDriver.h in areaDetector/ADCore

class ophyd_async.epics.adcore.NDPluginStatsIO(prefix: str, name: str = '')[source]#

Plugin for computing statistics from an image or region of interest within an image.

async ophyd_async.epics.adcore.set_exposure_time_and_acquire_period_if_supplied(controller: DetectorControl, driver: ADBaseIO, exposure: float | None = None, timeout: float = 10.0) None[source]#

Sets the exposure time if it is not None and the acquire period to the exposure time plus the deadtime. This is expected behavior for most AreaDetectors, but some may require more specialized handling.

Parameters:
  • controller – Controller that can supply a deadtime.

  • driver – The driver to start acquiring. Must subclass ADBaseIO.

  • exposure – Desired exposure time, this is a noop if it is None.

  • timeout – How long to wait for the exposure time and acquire period to be set.

async ophyd_async.epics.adcore.start_acquiring_driver_and_ensure_status(driver: ADBaseIO, good_states: frozenset[DetectorState] = frozenset({DetectorState.Aborted, DetectorState.Idle}), timeout: float = 10.0) AsyncStatus[source]#

Start acquiring driver, raising ValueError if the detector is in a bad state.

This sets driver.acquire to True, and waits for it to be True up to a timeout. Then, it checks that the DetectorState PV is in DEFAULT_GOOD_STATES, and otherwise raises a ValueError.

Parameters:
  • driver – The driver to start acquiring. Must subclass ADBaseIO.

  • good_states – set of states defined in DetectorState enum which are considered good states.

  • timeout – How long to wait for driver.acquire to readback True (i.e. acquiring).

Returns:

An AsyncStatus that can be awaited to set driver.acquire to True and perform subsequent raising (if applicable) due to detector state.

Return type:

AsyncStatus

class ophyd_async.epics.adcore.NDAttributePv(name: str, signal: ophyd_async.core._signal.SignalR, dbrtype: ophyd_async.epics.adcore._utils.NDAttributePvDbrType, description: str = '')[source]#
class ophyd_async.epics.adcore.NDAttributeParam(name: str, param: str, datatype: ophyd_async.epics.adcore._utils.NDAttributeDataType, addr: int = 0, description: str = '')[source]#