Utility classes and functions#

Msg#

Msg

Namedtuple sub-class to encapsulate a message from the plan to the RE.

Persistent metadata#

To maintain a peristent set of meta-data between Python sessions we include a dictionary duck-type based on zict.Func.

PersistentDict

A MutableMapping which syncs it contents to disk.

PersistentDict.directory

Internal exceptions#

We define a number of Exception sub-classes for internal signaling.

RunEngineControlException

Exception for signaling within the RunEngine.

RequestAbort

Request that the current run be aborted.

RequestStop

Request that the current run be stopped and marked successful.

RunEngineInterrupted

NoReplayAllowed

IllegalMessageSequence

FailedPause

FailedStatus

Exception to be raised if a SatusBase object reports done but failed

InvalidCommand

PlanHalt

RampFail

Progress bars#

These are used by the RunEngine to display progress bars and are the clients of the watch API

ProgressBar.update

This method is registered with Status.watch() to receive updates.

ProgressBar.draw

Clear the display

ProgressBar.clear

During tasks#

These objects encapsulate what the RunEngine should do on its thread while waiting for the plan to complete in the background thread

DuringTask

This class waits on the event (which fully blocks the thread).

DuringTask.block

Wait plan to finish.

DefaultDuringTask

This class run the Qt main loop while waiting for the plan to finish.