You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Movable protocol is used to describe motors, which in 99% of the use cases also need a read method.
Possible Solution
Have Movable inherit from Readable and use this in the plans/plan_stubs
Make a new Settable protocol which has set but not read
Use Settable in the RunEngine code
Context
Adding type hints in #1712 highlighted the fact that the definition of Movable does not include a read method, which is required by some plans which may be used on motors, eg. bps.trigger_and_read as used in bps.one_1d_step
Small side note: in #1712 code showing this behaviour has been temporarily marked with #type: ignore to get the CI tests to pass.
The text was updated successfully, but these errors were encountered:
Current Behavior
The
Movable
protocol is used to describe motors, which in 99% of the use cases also need aread
method.Possible Solution
Movable
inherit fromReadable
and use this in the plans/plan_stubsSettable
protocol which hasset
but notread
Settable
in the RunEngine codeContext
Adding type hints in #1712 highlighted the fact that the definition of
Movable
does not include aread
method, which is required by some plans which may be used on motors, eg.bps.trigger_and_read
as used inbps.one_1d_step
Small side note: in #1712 code showing this behaviour has been temporarily marked with
#type: ignore
to get the CI tests to pass.The text was updated successfully, but these errors were encountered: