Source code for sm_bluesky.common.plan_stubs.detectors

from blueapi.core import MsgGenerator
from bluesky.plan_stubs import abs_set
from bluesky.utils import plan
from ophyd_async.epics.adcore import AreaDetector, SingleTriggerDetector


[docs] @plan def set_area_detector_acquire_time( det: AreaDetector | SingleTriggerDetector, acquire_time: float, wait: bool = True ) -> MsgGenerator: """ Set the acquire time on an area detector. Parameters ---------- det : AreaDetector | SingleTriggerDetector The detector whose acquire time is to be set. acquire_time : float The desired acquire time. wait : bool, optional Whether to wait for the operation to complete, by default True. Returns ------- MsgGenerator A Bluesky generator for setting the acquire time. """ drv = det.drv if isinstance(det, SingleTriggerDetector) else det.driver yield from abs_set(drv.acquire_time, acquire_time, wait=wait)