""" EnergySystem module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2020 Project Author Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca Contributor Peter Yefi peteryefi@gmail.com """ from city_model_structure.city_object import CityObject from city_model_structure.energy_systems.heat_pump import HeatPump class EnergySystem(CityObject): """ EnergySystem(CityObject) class """ def __init__(self, name, lod, surfaces, city_lower_corner): super().__init__(name, lod, surfaces, city_lower_corner) self._heat_pump = None self._type = 'energy_system' @property def heat_pump(self) -> HeatPump: """ Heat pump energy system :return: """ return self._heat_pump @heat_pump.setter def heat_pump(self, value): """ Set heat pumm for energy system :param value: HeatPump """ if self._heat_pump is None: self._heat_pump = value @property def type(self) -> str: """ Type of city object :return: str """ return self._type