SEIMS_ModuleSetting.h
Go to the documentation of this file.
1/*!
2 * \file SEIMS_ModuleSetting.h
3 * \brief User-defined module information in config.fig
4 * \author Junzhi Liu, Liang-Jun Zhu
5 * \date June 2015
6 */
7#ifndef SEIMS_MODULE_SETTING_H
8#define SEIMS_MODULE_SETTING_H
9
10#include <vector>
11
12#include "basic.h"
13
14using namespace ccgl;
15using std::vector;
16
17/*!
18 * \ingroup module_setting
19 * \class SEIMSModuleSetting
20 * \brief
21 */
22class SEIMSModuleSetting: Interface {
23public:
24 SEIMSModuleSetting(string& module_id, string& setting);
25
26 ///< data type
27 int dataType();
28
29 ///< climate data type for TSD and ITP
30 string dataTypeString() { return dataType2String(dataType()); }
31
32 ///< vertical interpolation information for ITP
33 bool needDoVerticalInterpolation();
34
35 static int dataTypeString2Int(const string& data_type);
36
37 static string dataType2String(int data_type);
38
39private:
40 string m_moduleId; ///< module's ID
41 string m_settingString; ///< PROCESS NAME with suffix, e.g., Interpolation_P_0 and TimeSeries_M
42 vector<string> m_settings; ///< module settings
43};
44
45#endif /* SEIMS_MODULE_SETTING_H */
Basic definitions.
Base type of all interfaces.
Definition: basic.h:407
Common Cross-platform Geographic Library (CCGL)