diff --git a/api/__init__.py b/api/__init__.py index 408e40e..611c91b 100644 --- a/api/__init__.py +++ b/api/__init__.py @@ -20,4 +20,13 @@ from .s1_title import set_title, get_title from .s2_junctions import add_junction, delete_junction from .s2_junctions import get_junction_elevation, get_junction_demand, get_junction_pattern, get_junction_coord -from .s2_junctions import set_junction_elevation, set_junction_demand, set_junction_pattern, set_junction_coord \ No newline at end of file +from .s2_junctions import set_junction_elevation, set_junction_demand, set_junction_pattern, set_junction_coord + +from .s3_reservoirs import add_reservoir, delete_reservoir +from .s3_reservoirs import get_reservoir_head, get_reservoir_pattern, get_reservoir_coord +from .s3_reservoirs import set_reservoir_head, set_reservoir_pattern, set_reservoir_coord + +from .s4_tanks import OVERFLOW_YES, OVERFLOW_NO +from .s4_tanks import add_tank, delete_tank +from .s4_tanks import get_tank_elevation, get_tank_init_level, get_tank_min_level, get_tank_max_level, get_tank_diameter, get_tank_min_vol, get_tank_vol_curve, get_tank_overflow, get_tank_coord +from .s4_tanks import set_tank_elevation, set_tank_init_level, set_tank_min_level, set_tank_max_level, set_tank_diameter, set_tank_min_vol, set_tank_vol_curve, set_tank_overflow, set_tank_coord \ No newline at end of file diff --git a/tjnetwork.py b/tjnetwork.py index 9e24106..fa7be2c 100644 --- a/tjnetwork.py +++ b/tjnetwork.py @@ -19,6 +19,9 @@ PIPE = api.PIPE PUMP = api.PUMP VALVE = api.VALVE +OVERFLOW_YES = api.OVERFLOW_YES +OVERFLOW_NO = api.OVERFLOW_NO + ############################################################ # project @@ -169,3 +172,97 @@ def set_junction_pattern(name: str, junction_id: str, pattern: str) -> ChangeSet def set_junction_coord(name: str, junction_id: str, x: float, y: float) -> ChangeSet: return api.set_junction_coord(name, junction_id, x, y) + + +############################################################ +# reservoir 3.[RESERVOIRS] +############################################################ + +def add_reservoir(name: str, reservoir_id: str, x: float, y: float, elevation: float) -> ChangeSet: + return api.add_reservoir(name, reservoir_id, x, y, elevation) + +def delete_reservoir(name: str, reservoir_id: str) -> ChangeSet: + return api.delete_reservoir(name, reservoir_id) + +def get_reservoir_head(name: str, reservoir_id: str) -> float | None: + return api.get_reservoir_head(name, reservoir_id) + +def get_reservoir_pattern(name: str, reservoir_id: str) -> str | None: + return api.get_reservoir_pattern(name, reservoir_id) + +def get_reservoir_coord(name: str, reservoir_id: str) -> dict[str, float] | None: + return api.get_reservoir_coord(name, reservoir_id) + +def set_reservoir_head(name: str, reservoir_id: str, elevation: float) -> ChangeSet: + return api.set_reservoir_head(name, reservoir_id, elevation) + +def set_reservoir_pattern(name: str, reservoir_id: str, pattern: str) -> ChangeSet: + return api.set_reservoir_pattern(name, reservoir_id, pattern) + +def set_reservoir_coord(name: str, reservoir_id: str, x: float, y: float) -> ChangeSet: + return api.set_reservoir_coord(name, reservoir_id, x, y) + + +############################################################ +# tank 4.[TANKS] +############################################################ + +def add_tank(name: str, tank_id: str, x: float, y: float, elevation: float) -> ChangeSet: + return api.add_tank(name, tank_id, x, y, elevation) + +def delete_tank(name: str, tank_id: str) -> ChangeSet: + return api.delete_tank(name, tank_id) + +def get_tank_elevation(name: str, tank_id: str) -> float | None: + return api.get_tank_elevation(name, tank_id) + +def get_tank_init_level(name: str, tank_id: str) -> float | None: + return api.get_tank_init_level(name, tank_id) + +def get_tank_min_level(name: str, tank_id: str) -> float | None: + return api.get_tank_min_level(name, tank_id) + +def get_tank_max_level(name: str, tank_id: str) -> float | None: + return api.get_tank_max_level(name, tank_id) + +def get_tank_diameter(name: str, tank_id: str) -> float | None: + return api.get_tank_diameter(name, tank_id) + +def get_tank_min_vol(name: str, tank_id: str) -> float | None: + return api.get_tank_min_vol(name, tank_id) + +def get_tank_vol_curve(name: str, tank_id: str) -> str | None: + return api.get_tank_vol_curve(name, tank_id) + +def get_tank_overflow(name: str, tank_id: str) -> str | None: + return api.get_tank_overflow(name, tank_id) + +def get_tank_coord(name: str, tank_id: str) -> dict[str, float] | None: + return api.get_tank_coord(name, tank_id) + +def set_tank_elevation(name: str, tank_id: str, elevation: float) -> ChangeSet: + return api.set_tank_elevation(name, tank_id, elevation) + +def set_tank_init_level(name: str, tank_id: str, init_level: float) -> ChangeSet: + return api.set_tank_init_level(name, tank_id, init_level) + +def set_tank_min_level(name: str, tank_id: str, min_level: float) -> ChangeSet: + return api.set_tank_min_level(name, tank_id, min_level) + +def set_tank_max_level(name: str, tank_id: str, max_level: float) -> ChangeSet: + return api.set_tank_max_level(name, tank_id, max_level) + +def set_tank_diameter(name: str, tank_id: str, diameter: float) -> ChangeSet: + return api.set_tank_diameter(name, tank_id, diameter) + +def set_tank_min_vol(name: str, tank_id: str, min_vol: float) -> ChangeSet: + return api.set_tank_min_vol(name, tank_id, min_vol) + +def set_tank_vol_curve(name: str, tank_id: str, vol_curve: str) -> ChangeSet: + return api.set_tank_vol_curve(name, tank_id, vol_curve) + +def set_tank_overflow(name: str, tank_id: str, overflow: str) -> ChangeSet: + return api.set_tank_overflow(name, tank_id, overflow) + +def set_tank_coord(name: str, tank_id: str, x: float, y: float) -> ChangeSet: + return api.set_tank_coord(name, tank_id, x, y)