Reference#
Device Classes#
- class SECoPNodeDevice(sec_node_uri: str = '', name: str = '', loglevel=logging.INFO, logdir: str | None = None)#
Bases:
secop_ophyd.SECoPDevices.SECoPDevice- async connect(mock=False, timeout=DEFAULT_TIMEOUT, force_reconnect=False)#
- descriptiveDataChange(module, description)#
- nodeStateChange(online, state)#
called when the state of the connection changes
‘online’ is True when connected or reconnecting, False when disconnected or connecting ‘state’ is the connection state as a string
- class SECoPCommunicatorDevice(sri: str = '', name: str = '', connector: secop_ophyd.SECoPDevices.SECoPDeviceConnector | None = None, loglevel=logging.INFO, logdir: str | None = None)#
- class SECoPReadableDevice(sri: str = '', name: str = '', connector: secop_ophyd.SECoPDevices.SECoPDeviceConnector | None = None, loglevel=logging.INFO, logdir: str | None = None)#
Bases:
secop_ophyd.SECoPDevices.SECoPDevice,bluesky.protocols.Triggerable,bluesky.protocols.SubscribableStandard readable SECoP device, corresponding to a SECoP module with the interface class “Readable”
Initialization
Initializes the SECoPReadableDevice
- Parameters:
secclient (AsyncFrappyClient) – SECoP client providing communication to the SEC Node
module_name (str) – Name of the SEC Node module that is represented by this device
- async connect(mock=False, timeout=DEFAULT_TIMEOUT, force_reconnect=False)#
- async wait_for_idle()#
asynchronously waits until module is IDLE again. this is helpful, for running commands that are not done immediately
- trigger() ophyd_async.core.AsyncStatus#
- subscribe(function: ophyd_async.core._utils.Callback[dict[str, bluesky.protocols.Reading]]) None#
Subscribe to updates in the reading
- class SECoPTriggerableDevice(sri: str = '', name: str = '', connector: secop_ophyd.SECoPDevices.SECoPDeviceConnector | None = None, loglevel=logging.INFO, logdir: str | None = None)#
Bases:
secop_ophyd.SECoPDevices.SECoPReadableDevice,bluesky.protocols.StoppableStandard triggerable SECoP device, corresponding to a SECoP module with the0s interface class “Triggerable”
Initialization
Initialize SECoPTriggerableDevice
- Parameters:
secclient (AsyncFrappyClient) – SECoP client providing communication to the SEC Node
module_name (str) – ame of the SEC Node module that is represented by this device
- go: ophyd_async.core.TriggerableCommand = None#
- class SECoPWritableDevice(sri: str = '', name: str = '', connector: secop_ophyd.SECoPDevices.SECoPDeviceConnector | None = None, loglevel=logging.INFO, logdir: str | None = None)#
- class SECoPMoveableDevice(sri: str = '', name: str = '', connector: secop_ophyd.SECoPDevices.SECoPDeviceConnector | None = None, loglevel=logging.INFO, logdir: str | None = None)#
Bases:
secop_ophyd.SECoPDevices.SECoPReadableDevice,ophyd_async.core.StandardMovable[typing.Any]Standard movable SECoP device, corresponding to a SECoP module with the interface class “Drivable”
Initialization
Initialize SECoPMovableDevice
- Parameters:
secclient (AsyncFrappyClient) – SECoP client providing communication to the SEC Node
module_name (str) – ame of the SEC Node module that is represented by this device
- async connect(mock=False, timeout=DEFAULT_TIMEOUT, force_reconnect=False)#
- movable_logic() ophyd_async.core.MovableLogic#