Source code for pyaml.bpm.bpm_model
from abc import ABCMeta, abstractmethod
[docs]
class BPMModel(metaclass=ABCMeta):
"""
Abstract class providing interface to accessing BPM positions, offsets,
tilts.
"""
[docs]
@abstractmethod
def get_pos_devices(self) -> list[str]:
"""
Get device handles used for position reading
Returns
-------
list[DeviceAccess]
h and v position devices
"""
pass
[docs]
@abstractmethod
def get_tilt_device(self) -> str | None:
"""
Get device handle used for tilt access
Returns
-------
list[DeviceAccess]
tilt device
"""
pass
[docs]
@abstractmethod
def get_offset_devices(self) -> list[str | None]:
"""
Get device handles used for offset access
Returns
-------
list[DeviceAccess]
h and v offset devices
"""
pass