11#ifndef SEIMS_BMP_AREALSOURCE_H
12#define SEIMS_BMP_AREALSOURCE_H
15#include "data_raster.hpp"
19using namespace data_raster;
39 void Dump(std::ostream* fs);
64 vector<int> m_cellsIndex;
87 void Dump(std::ostream* fs);
143 FLTPT m_sedimentConc;
173 const string& collection,
const string& location);
204 string GetArealSrcDistName() {
return m_arealSrcDistName; }
206 vector<int>& GetArealSrcMgtSeqs() {
return m_arealSrcMgtSeqs; }
208 map<int, ArealSourceMgtParams*>& GetArealSrcMgtMap() {
return m_arealSrcMgtMap; }
210 vector<int>& GetArealSrcIDs() {
return m_arealSrcIDs; }
212 bool GetLocationLoadStatus() {
return m_loadedMgtFieldIDs; }
214 void SetArealSrcLocsMap(
int n,
int* mgtField);
216 map<int, ArealSourceLocations*>& GetArealSrcLocsMap() {
return m_arealSrcLocsMap; }
222 string m_arealSrcMgtTab;
224 vector<int> m_arealSrcMgtSeqs;
229 map<int, ArealSourceMgtParams*> m_arealSrcMgtMap;
231 string m_arealSrcDistName;
235 string m_arealSrcDistTab;
237 vector<int> m_arealSrcIDs;
239 bool m_loadedMgtFieldIDs;
244 map<int, ArealSourceLocations*> m_arealSrcLocsMap;
Base namespace for implementation of BMP configuration.
#define OVERRIDE
A compatible reference to override or blank if not supported by the compiler.
Definition: basic.h:160
Base class of point BMP, mainly store location related parameters.
Definition: BMPArealSourceFactory.h:28
int GetArealSourceID()
Get point source ID.
Definition: BMPArealSourceFactory.h:42
ArealSourceLocations(const bson_t *&bsonTable, bson_iter_t &iter)
Constructor, read and calculate areal BMP locations related parameters from Raster.
FLTPT GetSize()
size
Definition: BMPArealSourceFactory.h:54
int GetValidCells()
Located subbasin ID.
Definition: BMPArealSourceFactory.h:51
void SetValidCells(int n, int *mgtFieldIDs)
load valid cells index
vector< int > & GetCellsIndex()
index of valid cells
Definition: BMPArealSourceFactory.h:48
void Dump(std::ostream *fs)
Output.
string GetArealSourceName()
name
Definition: BMPArealSourceFactory.h:45
Point source management parameters.
Definition: BMPArealSourceFactory.h:74
FLTPT GetTP()
Get TP concentration.
Definition: BMPArealSourceFactory.h:120
int GetSequence()
Get sequence number.
Definition: BMPArealSourceFactory.h:96
FLTPT GetNO3()
Get NO3 concentration.
Definition: BMPArealSourceFactory.h:111
FLTPT GetOrgN()
Get OrgN concentration.
Definition: BMPArealSourceFactory.h:117
time_t GetEndDate()
Get end date.
Definition: BMPArealSourceFactory.h:93
FLTPT GetWaterVolume()
Get water volume.
Definition: BMPArealSourceFactory.h:102
FLTPT GetOrgP()
Get OrgP concentration.
Definition: BMPArealSourceFactory.h:126
FLTPT GetTN()
Get sediment concentration.
Definition: BMPArealSourceFactory.h:108
ArealSourceMgtParams(const bson_t *&bsonTable, bson_iter_t &iter)
Constructor, parse areal source management parameters from bson object.
time_t GetStartDate()
Get start date of the current management operation.
Definition: BMPArealSourceFactory.h:90
FLTPT GetMinP()
Get MinP concentration.
Definition: BMPArealSourceFactory.h:123
FLTPT GetCOD()
Get COD concentration.
Definition: BMPArealSourceFactory.h:129
FLTPT GetNH4()
Get NH4 concentration.
Definition: BMPArealSourceFactory.h:114
void Dump(std::ostream *fs)
Destructor.
string GetSubScenarioName()
Get subScenario name.
Definition: BMPArealSourceFactory.h:99
FLTPT GetSedment()
Get sediment concentration.
Definition: BMPArealSourceFactory.h:105
Base class of areal source BMPs.
Definition: BMPArealSourceFactory.h:168
void ReadArealSourceManagements(MongoClient *conn, const string &bmpDBName)
Load areal BMP location related parameters from MongoDB.
int * GetRasterData() OVERRIDE
Get management fields data.
Definition: BMPArealSourceFactory.h:202
virtual ~BMPArealSrcFactory()
Destructor.
void loadBMP(MongoClient *conn, const string &bmpDBName) OVERRIDE
Load BMP parameters from MongoDB.
BMPArealSrcFactory(int scenarioId, int bmpId, int subScenario, int bmpType, int bmpPriority, vector< string > &distribution, const string &collection, const string &location)
Constructor.
void setRasterData(map< string, IntRaster * > &sceneRsMap) OVERRIDE
Set raster data if needed.
void ReadArealSourceLocations(MongoClient *conn, const string &bmpDBName)
Load areal BMP location related parameters from MongoDB.
void Dump(std::ostream *fs) OVERRIDE
Output.
Base class of all kind of BMPs Factory.
Definition: BMPFactory.h:33
int bmpType()
Get BMP type 1 - reach BMPs which are attached to specific reaches and will change the character of t...
int bmpPriority()
Get BMP priority.
Base type of all interfaces.
Definition: basic.h:407
A simple wrapper of the class of MongoDB Client mongoc_client_t.
Definition: db_mongoc.h:46
All BMPs scenario related data, classes, and functions.
Definition: BMPArealSourceFactory.h:22
Common Cross-platform Geographic Library (CCGL)