Note

Ophyd.v2 is included on a provisional basis until the v2.0 release and may change API on minor release numbers before then

ophyd.v2.core.SignalRW#

class ophyd.v2.core.SignalRW(*args, **kwargs)#

Bases: SignalR[T], SignalW[T]

Signal that can be both read and set

Methods

clear_sub

Remove a subscription.

connect

Connect self and all child Devices.

describe

Return a single item dict with the descriptor in it

get_value

The current value

read

Return a single item dict with the reading in it

set

Set the value and return a status saying when it's done

set_name

Set self.name=name and each self.child.name=name+"-child".

stage

Start caching this signal

subscribe

Subscribe to updates in the reading

subscribe_value

Subscribe to updates in value of a device

unstage

Stop caching this signal

Attributes

name

Return the name of the Device

parent

The parent Device if it exists

source

Like ca://PV_PREFIX:SIGNAL, or "" if not set

abstract clear_sub(function: Callable[[T], None]) None#

Remove a subscription.

abstract async connect(prefix: str = '', sim=False)#

Connect self and all child Devices.

Parameters:
prefix:

Device specific prefix that can be used to nest Devices one within another. For example a PV prefix.

sim:

If True then connect in simulation mode.

abstract async describe() Dict[str, Descriptor]#

Return a single item dict with the descriptor in it

abstract async get_value(cached: Optional[bool] = None) T#

The current value

property name: str#

Return the name of the Device

parent: Optional[Device] = None#

The parent Device if it exists

abstract async read(cached: Optional[bool] = None) Dict[str, Reading]#

Return a single item dict with the reading in it

abstract set(value: T, wait=True) AsyncStatus#

Set the value and return a status saying when it’s done

set_name(name: str = '')#

Set self.name=name and each self.child.name=name+"-child".

Parameters:
name:

New name to set, do nothing if blank or name is all set

abstract property source: str#

Like ca://PV_PREFIX:SIGNAL, or “” if not set

abstract stage() List[Any]#

Start caching this signal

abstract subscribe(function: Callable[[Dict[str, Reading]], None]) None#

Subscribe to updates in the reading

abstract subscribe_value(function: Callable[[T], None])#

Subscribe to updates in value of a device

abstract unstage() List[Any]#

Stop caching this signal