""" Vegetation class SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca """ from typing import List from city_model_structure.greenery.soil import Soil from city_model_structure.greenery.plant import Plant class Vegetation: def __init__(self, name, soil, soil_thickness, plants): self._name = name self._management = None self._air_gap = None self._soil = soil self._soil_thickness = soil_thickness self._plants = plants @property def name(self): """ Get vegetation name :return: string """ return self._name @property def management(self): """ Get management :return: string """ return self._management @management.setter def management(self, value): """ Set management :param value: string """ self._management = value @property def air_gap(self): """ Get air gap in m :return: float """ return self._air_gap @air_gap.setter def air_gap(self, value): """ Set air gap in m :param value: float """ self._air_gap = value @property def soil(self) -> Soil: """ Get soil :return: Soil """ return self._soil @property def soil_thickness(self): """ Get soil thickness in m :return: float """ return self._soil_thickness @property def plants(self) -> List[Plant]: """ Get list plants in the vegetation :return: List[Plant] """ return self._plants