SimulationModule.h 文件参考

Parent class for all modules in SEIMS 更多...

#include "basic.h"
#include "utils_time.h"
#include "Scenario.h"
#include "clsReach.h"
#include "clsSubbasin.h"
#include <string>
#include <ctime>

浏览源代码.

class  SimulationModule
 Base module for all simulation modules in SEIMS 更多...
 

宏定义

#define CHECK_DATA(moduleID, expression, desc)
 Macros for CheckInputData function BE REMEMBER OF SEMICOLON! 更多...
 
#define CHECK_POINTER(moduleID, param)
 CHECK_POINTER is used for 1D or 2D raster and other pointer of data
 
#define CHECK_POSITIVE(moduleID, param)
 CHECK_POSITIVE is used for single value that must be positive
 
#define CHECK_NONNEGATIVE(moduleID, param)
 CHECK_NONNEGATIVE is used for single value that must be greater or equal than zero
 
#define CHECK_NEGATIVE(moduleID, param)
 CHECK_NEGATIVE is used for single value that must be negative
 
#define CHECK_ZERO(moduleID, param)
 CHECK_ZERO is used for single value that must not be ZERO
 
#define CHECK_NODATA(moduleID, param)
 CHECK_NODATA is used for single value that must not be NODATA_VALUE
 

枚举

enum  TimeStepType {
  TIMESTEP_HILLSLOPE ,
  TIMESTEP_CHANNEL ,
  TIMESTEP_SIMULATION
}
 Time step types. 更多...
 

详细描述

Parent class for all modules in SEIMS

Changelog:

  • 1. 2010-07-31 - jz - Initial implementation.
  • 2. 2016-06-14 - lj - Add SetScenario etc. functions.
  • 3. 2018-03-03 - lj - Add CHECK_XXX series macros for data checking.
  • 4. 2020-09-18 - lj - Using Easyloggingpp
  • 5. 2021-10-29 - ss,lj - Add InitialIntermediates to initialize intermediate params.
作者
Junzhi Liu, Liangjun Zhu

宏定义说明

◆ CHECK_DATA

#define CHECK_DATA (   moduleID,
  expression,
  desc 
)
值:
if ((expression)) \
throw ModelException(moduleID, "CheckInputData", string(desc))
Print the exception message
Definition: basic.h:416

Macros for CheckInputData function BE REMEMBER OF SEMICOLON!

CHECK_DATA is used for the unforeseen situation