from numpy.typing import ArrayLike from typing import List, AnyStr from spatz.transforms.noise import GaussianNoise from spatz.dataset import Dataset from spatz.sensors import TemperatureSensor from spatz.transforms import Transform class MS5611Temperature(TemperatureSensor): def __init__(self, dataset: Dataset, transforms: List[Transform] = []): super().__init__(dataset, transforms) self.__noise = GaussianNoise(0, 0.5) def _get_name(self) -> AnyStr: return 'MS5611' def _sensor_specific_effects(self, x: ArrayLike | float) -> ArrayLike | float: t = self._dataset.get_time() noisy = self.__noise(t, x) self._log('temperature', noisy) return noisy