secop_ophyd.SECoPSignal#

Module Contents#

Classes#

LocalBackend

Class for the ‘argument’ and ‘result’ Signal backends of a SECoP_CMD_Device. These Signals act as a local cache for storing the command argument and result.

SECoPXBackend

Signal backend for SignalX of a SECoP_CMD_Device, that handles command execution

SECoPParamBackend

Standard backend for a Signal that represents SECoP Parameter

PropertyBackend

Readonly backend for static SECoP Properties of Nodes/Modules

Functions#

secop_dtype_obj_from_json

describedict_to_datakey

Convert a DataKey to a SECoPDataKey

Data#

API#

secop_ophyd.SECoPSignal.atomic_dtypes = ()#
secop_ophyd.SECoPSignal.MAX_DEPTH = 1#
class secop_ophyd.SECoPSignal.LocalBackend(path: secop_ophyd.util.Path, secop_dtype_obj: frappy.datatypes.DataType, sig_datainfo: dict)[source]#

Bases: ophyd_async.core.SignalBackend

Class for the ‘argument’ and ‘result’ Signal backends of a SECoP_CMD_Device. These Signals act as a local cache for storing the command argument and result.

Initialization

Initialize SECoP_CMD_IO_Backend

Parameters:
  • path (Path) – Path to the command in the secclient module dict

  • SECoPdtype_obj – detailed SECoP datatype object for bidirectional

conversion between JSON to and numpy arrays :type SECoPdtype_obj: DataType :param sig_datainfo: SECoP datainfo string of the value represented by the signal :type sig_datainfo: dict

source(name: str, read: bool) str[source]#
async connect(timeout: float)[source]#
async put(value: Any | None, wait=True)[source]#
async get_datakey(source: str) bluesky.protocols.DataKey[source]#

Metadata like source, dtype, shape, precision, units

async get_reading() bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT][source]#
async get_value() ophyd_async.core.SignalDatatypeT[source]#
async get_setpoint() ophyd_async.core.SignalDatatypeT[source]#
set_callback(callback: ophyd_async.core.Callback[bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT]] | None) None[source]#
class secop_ophyd.SECoPSignal.SECoPXBackend(path: secop_ophyd.util.Path, secclient: secop_ophyd.AsyncFrappyClient.AsyncFrappyClient, argument: secop_ophyd.SECoPSignal.LocalBackend | None, result: secop_ophyd.SECoPSignal.LocalBackend | None)[source]#

Bases: ophyd_async.core.SignalBackend

Signal backend for SignalX of a SECoP_CMD_Device, that handles command execution

Initialization

Initializes SECoP_CMD_X_Backend

Parameters:
  • path (Path) – Path to the command in the secclient module dict

  • secclient (AsyncFrappyClient) – SECoP client providing communication to the SEC Node

  • argument (SECoP_CMD_IO_Backend | None) – Refence to Argument Signal

  • result (SECoP_CMD_IO_Backend | None) – Reference to Result Signal

source(name: str, read: bool) str[source]#
async connect(timeout: float)[source]#
async put(value: Any | None, wait=True)[source]#
async get_datakey(source: str) bluesky.protocols.DataKey[source]#

Metadata like source, dtype, shape, precision, units

async get_reading() bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT][source]#
async get_value() ophyd_async.core.SignalDatatypeT[source]#
set_callback(callback: ophyd_async.core.Callback[bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT]] | None) None[source]#
async get_setpoint() ophyd_async.core.SignalDatatypeT[source]#
class secop_ophyd.SECoPSignal.SECoPParamBackend(path: secop_ophyd.util.Path, secclient: secop_ophyd.AsyncFrappyClient.AsyncFrappyClient)[source]#

Bases: ophyd_async.core.SignalBackend

Standard backend for a Signal that represents SECoP Parameter

Initialization

_summary_

Parameters:
  • path (Path) – Path to the parameter in the secclient module dict

  • secclient (AsyncFrappyClient) – SECoP client providing communication to the SEC Node

source(name: str, read: bool) str[source]#
async connect(timeout: float)[source]#
async put(value: Any | None, wait=True)[source]#
async get_datakey(source: str) bluesky.protocols.DataKey[source]#

Metadata like source, dtype, shape, precision, units

async get_reading() bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT][source]#
async get_value() ophyd_async.core.SignalDatatypeT[source]#
async get_setpoint() ophyd_async.core.SignalDatatypeT[source]#
set_callback(callback: ophyd_async.core.Callback[bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT]] | None) None[source]#
get_param_path()[source]#
get_path_tuple()[source]#
get_unit()[source]#
is_number() bool[source]#
class secop_ophyd.SECoPSignal.PropertyBackend(prop_key: str, property_dict: Dict[str, Any], secclient: secop_ophyd.AsyncFrappyClient.AsyncFrappyClient)[source]#

Bases: ophyd_async.core.SignalBackend

Readonly backend for static SECoP Properties of Nodes/Modules

Initialization

Initializes PropertyBackend

Parameters:
  • prop_key (str) – Name of Property

  • propertyDict (Dict[str, T]) – Dicitonary containing all properties of Node/Module

  • secclient (AsyncFrappyClient) – SECoP client providing communication to the SEC Node

source(name: str, read: bool) str[source]#
async connect(timeout: float)[source]#

Connect to underlying hardware

async put(value: ophyd_async.core.SignalDatatypeT | None, wait=True)[source]#

Put a value to the PV, if wait then wait for completion for up to timeout

async get_datakey(source: str) bluesky.protocols.DataKey[source]#

Metadata like source, dtype, shape, precision, units

async get_reading() bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT][source]#
async get_value() ophyd_async.core.SignalDatatypeT[source]#
async get_setpoint() ophyd_async.core.SignalDatatypeT[source]#
set_callback(callback: ophyd_async.core.Callback[bluesky.protocols.Reading[ophyd_async.core.SignalDatatypeT]] | None) None[source]#
secop_ophyd.SECoPSignal.secop_dtype_obj_from_json(prop_val)[source]#
secop_ophyd.SECoPSignal.describedict_to_datakey(describe_dict: dict) secop_ophyd.util.SECoPDataKey[source]#

Convert a DataKey to a SECoPDataKey