# TODO: add docs
from abc import ABCMeta, abstractmethod
[docs]class HardwareInterface:
"""[summary]
"""
__metaclass__ = ABCMeta
[docs] def __init__(self, name):
"""[summary]
"""
self.__name = name
self.__interface_type = type(self)
self.__status = 'disabled'
[docs] @abstractmethod
def get_param(self, param_name):
"""[summary]
"""
[docs] @abstractmethod
def start(self):
"""[summary]
"""
[docs] @abstractmethod
def stop(self):
"""[summary]
"""
@property
def name(self):
"""[summary]
Returns:
[type]: [description]
"""
return self.__name
@property
def status(self):
"""[summary]
Returns:
[type]: [description]
"""
return self.__status
@status.setter
def status(self, status):
"""[summary]
Returns:
[type]: [description]
"""
self.__status = status
@property
def interface_type(self):
"""[summary]
Returns:
[type]: [description]
"""
return self.__interface_type