Source code for pyaml.common.abstract_aggregator
from abc import ABCMeta, abstractmethod
import numpy as np
import numpy.typing as npt
[docs]
class ScalarAggregator(metaclass=ABCMeta):
"""
Abstract class providing access to a list of scalar variables
"""
[docs]
@abstractmethod
def set(self, value: npt.NDArray[np.float64]):
"""Write a list of variable"""
pass
[docs]
@abstractmethod
def set_and_wait(self, value: npt.NDArray[np.float64]):
"""Write a list of variable and wait that setpoint are reached"""
pass
[docs]
@abstractmethod
def get(self) -> npt.NDArray[np.float64]:
"""Return a list variables"""
pass
[docs]
@abstractmethod
def readback(self) -> np.array:
"""Return a list variables (measurements)"""
pass
[docs]
@abstractmethod
def unit(self) -> str:
"""Return the variables unit"""
pass