ibex_bluesky_core.devices.simpledae.controllers

DAE control strategies.

Members

PeriodPerPointController

Controller for a SimpleDae which counts using a period per point.

RunPerPointController

Controller for a SimpleDae which counts using a DAE run per point.

class ibex_bluesky_core.devices.simpledae.controllers.PeriodPerPointController(save_run: bool)[source]

Bases: Controller

Controller for a SimpleDae which counts using a period per point.

A single run is opened during stage(), and then each new point will count into a new DAE period (starting from 1). The run will be either ended or aborted in unstage, depending on the value of the save_run parameter.

Period-per-point DAE controller.

Parameters:

save_run – True to terminate runs using end(), saving the data. False to terminate runs using abort(), discarding the data.

additional_readable_signals(dae: SimpleDae) list[Device][source]

period_num is always an interesting signal if using this controller.

async setup(dae: SimpleDae) None[source]

Pre-scan setup (begin a new run in paused mode).

async start_counting(dae: SimpleDae) None[source]

Start counting a scan point.

Increments the period by 1, then unpauses the run.

async stop_counting(dae: SimpleDae) None[source]

Stop counting a scan point, by pausing the run.

async teardown(dae: SimpleDae) None[source]

Finish taking data, ending or aborting the run.

class ibex_bluesky_core.devices.simpledae.controllers.RunPerPointController(save_run: bool)[source]

Bases: Controller, StandardReadable

Controller for a SimpleDae which counts using a DAE run per point.

The runs can be either ended or aborted once counting is finished.

Init.

Parameters:

save_run – whether to end the run (True) or abort the run (False) on completion.

additional_readable_signals(dae: SimpleDae) list[Device][source]

Run number is an interesting signal only if saving runs.

async start_counting(dae: SimpleDae) None[source]

Start counting a scan point, by starting a DAE run.

async stop_counting(dae: SimpleDae) None[source]

Stop counting a scan point, by ending or aborting the run.