ibex_bluesky_core.devices
ISIS-specific bluesky devices and device-related utilities.
The devices in this module are implemented using the ophyd_async library,
which in turn reads or writes to the underlying EPICS PVs to control equipment.
Submodules
bluesky devices and utilities for communicating with IBEX blocks. |
|
Low-level bluesky device interface to the DAE. |
|
Muon-specific bluesky devices and utilities. |
|
Specialised DAE interface for polarisation measurements. |
|
Reflectometry-specific bluesky devices and utilities. |
|
High-level bluesky device interface to the DAE for 'typical' measurements. |
Members
No-Yes enum for an mbbi/mbbo or bi/bo with capitalised "No"/"Yes" options. |
|
Compress the inputted string and encode it as hex. |
|
Decompresses the inputted string, assuming it is in hex encoding. |
|
Make a RW signal with ISIS' PV naming standard. |
- class ibex_bluesky_core.devices.NoYesChoice(*values)[source]
Bases:
StrictEnumNo-Yes enum for an mbbi/mbbo or bi/bo with capitalised “No”/”Yes” options.
- ibex_bluesky_core.devices.compress_and_hex(value: str) bytes[source]
Compress the inputted string and encode it as hex.
- Parameters:
value – The string to be compressed
- Returns:
A compressed and hexed version of the inputted string
- ibex_bluesky_core.devices.dehex_and_decompress(value: bytes) bytes[source]
Decompresses the inputted string, assuming it is in hex encoding.
- Parameters:
value – The string to be decompressed, encoded in hex
- Returns:
A decompressed version of the inputted string
- ibex_bluesky_core.devices.isis_epics_signal_rw(datatype: type[T], read_pv: str, name: str = '') SignalRW[T][source]
Make a RW signal with ISIS’ PV naming standard.
For a PV like
IN:INSTNAME:SOME_PARAMETER:The
read_pvwill be set toIN:INSTNAME:SOME_PARAMETERThe
write_pvwill be set toIN:INSTNAME:SOME_PARAMETER:SP