Core#

Status objects (Futures)#

In addition to ophyd.status.StatusBase ophyd provides specialized subclasses that know more about the object they are tied to.

Inheritance diagram of ophyd.status.StatusBase, ophyd.status.MoveStatus, ophyd.status.DeviceStatus, ophyd.status.Status, ophyd.status.SubscriptionStatus

ophyd.status.StatusBase(*[, timeout, ...])

Track the status of a potentially-lengthy action like moving or triggering.

ophyd.status.Status([obj, timeout, ...])

Track the status of a potentially-lengthy action like moving or triggering.

ophyd.status.DeviceStatus(device, **kwargs)

Track the status of a potentially-lengthy action like moving or triggering.

ophyd.status.MoveStatus(positioner, target, *)

Track the state of a movement from some initial to final "position".

ophyd.status.SubscriptionStatus(device, callback)

Status updated via ophyd events

ophyd.areadetector.trigger_mixins.ADTriggerStatus(...)

A Status for AreaDetector triggers

ophyd.status.wait(status[, timeout, poll_rate])

(Blocking) wait for the status object to complete

Callbacks#

The base class of Device and Signal objects in Ophyd is OphydObject, a callback registry.

OphydObject

The base class for all objects in Ophyd

OphydObject.event_types

Events that can be subscribed to via obj.subscribe

OphydObject.subscribe

Subscribe to events this event_type generates.

OphydObject.unsubscribe

Remove a subscription

OphydObject.clear_sub

Remove a subscription, given the original callback function

OphydObject._run_subs

Run a set of subscription callbacks

OphydObject._reset_sub

Remove all subscriptions in an event type

This registry is used to connect to the underlying events from the control system and propagate them up to bluesky, either via StatusBase objects or via direct subscription from the RunEngine.