1#ifndef HYDROBRICKS_SETTING_BASIN_H
2#define HYDROBRICKS_SETTING_BASIN_H
34 vector<LandCoverSettings> landCovers;
35 vector<SurfaceComponentSettings> surfaceComponents;
36 vector<HydroUnitPropertyDouble> propertiesDouble;
37 vector<HydroUnitPropertyString> propertiesString;
43 int receiverHydroUnitId;
60 void AddHydroUnit(
int id,
double area,
double elevation = -9999);
69 void AddLandCover(
const string& name,
const string& type =
"",
double fraction = 1.0);
97 void AddLateralConnection(
int giverHydroUnitId,
int receiverHydroUnitId,
double fraction,
const string& type =
"");
117 bool Parse(
const string& path);
126 assert(_hydroUnits.size() > index);
127 return _hydroUnits[index];
137 assert(_selectedHydroUnit);
138 assert(_selectedHydroUnit->landCovers.size() > index);
139 return _selectedHydroUnit->landCovers[index];
149 assert(_selectedHydroUnit);
150 assert(_selectedHydroUnit->surfaceComponents.size() > index);
151 return _selectedHydroUnit->surfaceComponents[index];
160 return _lateralConnections;
169 return static_cast<int>(_hydroUnits.size());
178 assert(_selectedHydroUnit);
179 return static_cast<int>(_selectedHydroUnit->landCovers.size());
188 assert(_selectedHydroUnit);
189 return static_cast<int>(_selectedHydroUnit->surfaceComponents.size());
198 return static_cast<int>(_lateralConnections.size());
209 vector<HydroUnitSettings> _hydroUnits;
210 vector<LateralConnectionSettings> _lateralConnections;
Definition SettingsBasin.h:47
void AddHydroUnitPropertyString(const string &name, const string &value)
Definition SettingsBasin.cpp:40
void SelectUnit(int index)
Definition SettingsBasin.cpp:65
SurfaceComponentSettings GetSurfaceComponentSettings(int index) const
Definition SettingsBasin.h:148
void Clear()
Definition SettingsBasin.cpp:60
LandCoverSettings GetLandCoverSettings(int index) const
Definition SettingsBasin.h:136
void AddLateralConnection(int giverHydroUnitId, int receiverHydroUnitId, double fraction, const string &type="")
Definition SettingsBasin.cpp:49
double GetTotalArea() const
Definition SettingsBasin.cpp:155
int GetSurfaceComponentCount() const
Definition SettingsBasin.h:187
void AddHydroUnitPropertyDouble(const string &name, double value, const string &unit="")
Definition SettingsBasin.cpp:30
void AddLandCover(const string &name, const string &type="", double fraction=1.0)
Definition SettingsBasin.cpp:20
void AddHydroUnit(int id, double area, double elevation=-9999)
Definition SettingsBasin.cpp:11
HydroUnitSettings GetHydroUnitSettings(int index) const
Definition SettingsBasin.h:125
int GetLateralConnectionCount() const
Definition SettingsBasin.h:197
int GetHydroUnitCount() const
Definition SettingsBasin.h:168
vector< LateralConnectionSettings > GetLateralConnections() const
Definition SettingsBasin.h:159
int GetLandCoverCount() const
Definition SettingsBasin.h:177
bool Parse(const string &path)
Definition SettingsBasin.cpp:70
Definition SettingsBasin.h:19
Definition SettingsBasin.h:25
Definition SettingsBasin.h:30
Definition SettingsBasin.h:7
Definition SettingsBasin.h:40
Definition SettingsBasin.h:13