ophyd_async.core.set_and_wait_for_other_value#

async ophyd_async.core.set_and_wait_for_other_value(set_signal: SignalW[T], set_value: T, read_signal: SignalR[S], read_value: S, timeout: float = 10.0, set_timeout: float | None = None) AsyncStatus[source]#

Set a signal and monitor another signal until it has the specified value.

This function sets a set_signal to a specified set_value and waits for a read_signal to have the read_value.

Parameters:
  • signal – The signal to set

  • set_value – The value to set it to

  • read_signal – The signal to monitor

  • read_value – The value to wait for

  • timeout – How long to wait for the signal to have the value

  • set_timeout – How long to wait for the set to complete

Notes

Example usage:

set_and_wait_for_value(device.acquire, 1, device.acquire_rbv, 1)