Source code for ingenialink.poller

from abc import ABC, abstractmethod


[docs]class Poller(ABC): """Register poller. Args: servo (Servo): Servo. num_channels (int): Number of channels. Raises: ILCreationError: If the poller could not be created. """ def __init__(self, servo, num_channels): self.__servo = servo self.__num_channels = num_channels @abstractmethod def start(self): raise NotImplementedError @abstractmethod def stop(self): raise NotImplementedError @abstractmethod def configure(self, t_s, sz): raise NotImplementedError @abstractmethod def ch_configure(self, ch, reg): raise NotImplementedError @abstractmethod def ch_disable(self, ch): raise NotImplementedError @abstractmethod def ch_disable_all(self): raise NotImplementedError @property def data(self): raise NotImplementedError @property def servo(self): """Servo: Servo instance to be used.""" return self.__servo @servo.setter def servo(self, value): self.__servo = value @property def num_channels(self): """int: Number of channels in the poller.""" return self.__num_channels @num_channels.setter def num_channels(self, value): self.__num_channels = value