Base class of all kind of BMPs Factory. More...
#include <BMPFactory.h>
Public Member Functions | |
BMPFactory (int scenario_id, int bmp_id, int sub_scenario, int bmp_type, int bmp_priority, vector< string > &distribution, const string &collection, const string &location, bool effectivenessChangeable=false, time_t changeFrequency=-1, int variableTimes=-1) | |
Constructor. | |
~BMPFactory () | |
Destructor. | |
virtual void | loadBMP (MongoClient *conn, const string &bmpDBName)=0 |
Load BMP parameters from MongoDB. | |
virtual void | setRasterData (map< string, IntRaster * > &sceneRsMap) |
Set raster data if needed This function is not required for each BMP, so DO NOT define as pure virtual function. More... | |
virtual int * | GetRasterData () |
Get raster data if needed This function is not required for each BMP, so DO NOT define as pure virtual function. | |
int | bmpType () |
Get BMP type 1 - reach BMPs which are attached to specific reaches and will change the character of the reach. More... | |
int | bmpPriority () |
Get BMP priority. | |
int | GetSubScenarioId () |
Get subScenario ID. | |
virtual void | Dump (std::ostream *fs)=0 |
Output. | |
Protected Attributes | |
const int | m_scenarioId |
Scenario ID. | |
const int | m_bmpId |
BMP ID. | |
const int | m_subScenarioId |
SubScenario ID within one BMP iD. | |
const int | m_bmpType |
BMP Type. | |
const int | m_bmpPriority |
BMP Priority. | |
vector< string > | m_distribution |
Distribution vector of BMP Origin format is [distribution data type]|[distribution parameter name]|Collection name|... | |
const string | m_bmpCollection |
Collection name. | |
const string | m_location |
Define where the BMP will be applied. | |
Base class of all kind of BMPs Factory.
Read from BMP_SCENARIOS collection of MongoDB
int bmps::BMPFactory::bmpType | ( | ) |
Get BMP type 1 - reach BMPs which are attached to specific reaches and will change the character of the reach.
2 - areal structural BMPs which are corresponding to a specific structure in the watershed and will change the character of subbasins/cells. 3 - areal non-structure BMPs which are NOT corresponding to a specific structure in the watershed and will change the character of subbasins/cells. 4 - point structural BMPs
|
virtual |
Set raster data if needed This function is not required for each BMP, so DO NOT define as pure virtual function.
i.e., DO NOT CHANGE THE DEFINITION!!!
Reimplemented in bmps::BMPArealSrcFactory, bmps::BMPArealStructFactory, and bmps::BMPPlantMgtFactory.