feat(devices): added softpositioner

This commit is contained in:
wakonig_k 2024-07-05 14:23:09 +02:00
parent 139efdb873
commit e803829f6c
3 changed files with 26 additions and 0 deletions

View File

@ -20,6 +20,7 @@ from .sim.sim_signals import ReadOnlySignal
from .sim.sim_waveform import SimWaveform from .sim.sim_waveform import SimWaveform
SynSignalRO = ReadOnlySignal SynSignalRO = ReadOnlySignal
from .devices.softpositioner import SoftPositioner
from .utils.bec_device_base import BECDeviceBase from .utils.bec_device_base import BECDeviceBase
from .utils.dynamic_pseudo import ComputedSignal from .utils.dynamic_pseudo import ComputedSignal
from .utils.static_device_test import launch from .utils.static_device_test import launch

View File

@ -89,3 +89,12 @@ ring_current_sim:
- beamline - beamline
enabled: true enabled: true
readOnly: false readOnly: false
soft_pos:
readoutPriority: baseline
deviceClass: ophyd_devices.SoftPositioner
deviceConfig:
deviceTags:
- user motors
enabled: true
readOnly: false

View File

@ -0,0 +1,16 @@
from ophyd import SoftPositioner as _SoftPositioner
class SoftPositioner(_SoftPositioner):
"""
A patched version of ophyd's SoftPositioner that complies with
ophyd device protocol.
"""
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self._destroyed = False
def destroy(self):
self._destroyed = True
super().destroy()