system_assignation/city_model_structure/iot/sensor.py

74 lines
1.2 KiB
Python
Raw Normal View History

"""
Sensor module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca
"""
from helpers.location import Location
2021-06-01 19:03:55 -04:00
class Sensor:
"""
Sensor abstract class
"""
def __init__(self):
self._name = None
self._type = None
self._units = None
self._location = None
@property
def name(self):
"""
Get sensor name
:return: str
"""
return self._name
@name.setter
def name(self, value):
"""
Set sensor name
:param value: str
"""
2021-09-13 15:14:54 -04:00
self._name = str(value)
@property
def type(self):
"""
Get sensor type
:return: str
"""
return self._type
@property
def units(self):
"""
Get sensor units
:return: str
"""
return self._units
@property
def location(self) -> Location:
"""
Get sensor location
:return: Location
"""
return self._location
@location.setter
def location(self, value):
"""
Set sensor location
:param value: Location
"""
self._location = value
@property
def measures(self):
"""
2021-09-01 09:39:27 -04:00
Raises not implemented error
"""
raise NotImplementedError