2022-03-08 19:19:52 -05:00
|
|
|
"""
|
|
|
|
HvacSystem module
|
|
|
|
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
2022-04-08 09:35:33 -04:00
|
|
|
Copyright © 2022 Concordia CERC group
|
|
|
|
Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca
|
2022-03-08 19:19:52 -05:00
|
|
|
"""
|
2022-11-09 16:19:56 -05:00
|
|
|
from typing import Union, List
|
|
|
|
from city_model_structure.building_demand.thermal_zone import ThermalZone
|
2022-03-08 19:19:52 -05:00
|
|
|
|
|
|
|
|
|
|
|
class HvacSystem:
|
|
|
|
"""
|
|
|
|
HvacSystem class
|
|
|
|
"""
|
|
|
|
def __init__(self):
|
|
|
|
self._type = None
|
2022-11-09 16:19:56 -05:00
|
|
|
self._thermal_zones = None
|
2022-03-08 19:19:52 -05:00
|
|
|
|
|
|
|
@property
|
|
|
|
def type(self) -> Union[None, str]:
|
|
|
|
"""
|
2022-11-09 16:19:56 -05:00
|
|
|
Get hvac system type
|
2022-03-08 19:19:52 -05:00
|
|
|
:return: None or str
|
|
|
|
"""
|
|
|
|
return self._type
|
|
|
|
|
|
|
|
@type.setter
|
|
|
|
def type(self, value):
|
|
|
|
"""
|
2022-11-09 16:19:56 -05:00
|
|
|
Set hvac system type
|
2022-03-08 19:19:52 -05:00
|
|
|
:param value: str
|
|
|
|
"""
|
|
|
|
if value is not None:
|
|
|
|
self._type = str(value)
|
|
|
|
|
2022-11-09 16:19:56 -05:00
|
|
|
@property
|
|
|
|
def thermal_zones(self) -> Union[None, List[ThermalZone]]:
|
|
|
|
"""
|
|
|
|
Get list of zones that this unit serves
|
|
|
|
:return: None or [ThermalZone]
|
|
|
|
"""
|
|
|
|
return self._thermal_zones
|
|
|
|
|
|
|
|
@thermal_zones.setter
|
|
|
|
def thermal_zones(self, value):
|
|
|
|
"""
|
|
|
|
Set list of zones that this unit serves
|
|
|
|
:param value: [ThermalZone]
|
|
|
|
"""
|
|
|
|
self._thermal_zones = value
|