GCBM
turnoverrates.h
Go to the documentation of this file.
1 #ifndef MOJA_MODULES_CBM_TURNOVERRATES_H_
2 #define MOJA_MODULES_CBM_TURNOVERRATES_H_
3 
4 #include "moja/modules/cbm/_modules.cbm_exports.h"
5 #include "moja/flint/modulebase.h"
6 #include "moja/flint/flintexceptions.h"
7 #include "moja/exception.h"
8 
9 namespace moja {
10 namespace modules {
11 namespace cbm {
12 
13  class CBM_API TurnoverRates {
14  public:
15  TurnoverRates(DynamicObject data) {
16  _swFoliageTurnover = data["sw_foliage_turnover"];
17  _swStemTurnover = data["sw_stem_turnover"];
18  _swBranchTurnover = data["sw_branch_turnover"];
19  _swStemSnagTurnover = data["sw_stem_snag_turnover"];
20  _swBranchSnagTurnover = data["sw_branch_snag_turnover"];
21  _swCoarseRootTurnover = data["sw_coarse_root_turnover"];
22  _swFineRootTurnover = data["sw_fine_root_turnover"];
23  _swBranchSnagSplit = data["sw_other_to_branch_snag_split"];
24  _swCoarseRootSplit = data["sw_coarse_root_split"];
25  _swFineRootSplit = data["sw_fine_root_ag_split"];
26  _hwFoliageTurnover = data["hw_foliage_turnover"];
27  _hwStemTurnover = data["hw_stem_turnover"];
28  _hwBranchTurnover = data["hw_branch_turnover"];
29  _hwStemSnagTurnover = data["hw_stem_snag_turnover"];
30  _hwBranchSnagTurnover = data["hw_branch_snag_turnover"];
31  _hwCoarseRootTurnover = data["hw_coarse_root_turnover"];
32  _hwFineRootTurnover = data["hw_fine_root_turnover"];
33  _hwBranchSnagSplit = data["hw_other_to_branch_snag_split"];
34  _hwCoarseRootSplit = data["hw_coarse_root_split"];
35  _hwFineRootSplit = data["hw_fine_root_ag_split"];
36  }
37 
38  double swFoliageTurnover() const { return _swFoliageTurnover; }
39  double swStemTurnover() const { return _swStemTurnover; }
40  double swBranchTurnover() const { return _swBranchTurnover; }
41  double swStemSnagTurnover() const { return _swStemSnagTurnover; }
42  double swBranchSnagTurnover() const { return _swBranchSnagTurnover; }
43  double swCoarseRootTurnover() const { return _swCoarseRootTurnover; }
44  double swFineRootTurnover() const { return _swFineRootTurnover; }
45  double swBranchSnagSplit() const { return _swBranchSnagSplit; }
46  double swCoarseRootSplit() const { return _swCoarseRootSplit; }
47  double swFineRootSplit() const { return _swFineRootSplit; }
48  double hwFoliageTurnover() const { return _hwFoliageTurnover; }
49  double hwStemTurnover() const { return _hwStemTurnover; }
50  double hwBranchTurnover() const { return _hwBranchTurnover; }
51  double hwStemSnagTurnover() const { return _hwStemSnagTurnover; }
52  double hwBranchSnagTurnover() const { return _hwBranchSnagTurnover; }
53  double hwCoarseRootTurnover() const { return _hwCoarseRootTurnover; }
54  double hwFineRootTurnover() const { return _hwFineRootTurnover; }
55  double hwBranchSnagSplit() const { return _hwBranchSnagSplit; }
56  double hwCoarseRootSplit() const { return _hwCoarseRootSplit; }
57  double hwFineRootSplit() const { return _hwFineRootSplit; }
58 
59  private:
60  double _swFoliageTurnover = 0;
61  double _swStemTurnover = 0;
62  double _swBranchTurnover = 0;
63  double _swStemSnagTurnover = 0;
64  double _swBranchSnagTurnover = 0;
65  double _swCoarseRootTurnover = 0;
66  double _swFineRootTurnover = 0;
67  double _swBranchSnagSplit = 0;
68  double _swCoarseRootSplit = 0;
69  double _swFineRootSplit = 0;
70  double _hwFoliageTurnover = 0;
71  double _hwStemTurnover = 0;
72  double _hwBranchTurnover = 0;
73  double _hwStemSnagTurnover = 0;
74  double _hwBranchSnagTurnover = 0;
75  double _hwCoarseRootTurnover = 0;
76  double _hwFineRootTurnover = 0;
77  double _hwBranchSnagSplit = 0;
78  double _hwCoarseRootSplit = 0;
79  double _hwFineRootSplit = 0;
80  };
81 
82 }}}
83 #endif
moja::modules::cbm::TurnoverRates::TurnoverRates
TurnoverRates(DynamicObject data)
Definition: turnoverrates.h:15
moja::modules::cbm
Definition: ageclasshelper.cpp:12
moja::modules::cbm::TurnoverRates::swBranchSnagSplit
double swBranchSnagSplit() const
Definition: turnoverrates.h:45
moja::modules::cbm::TurnoverRates
Definition: turnoverrates.h:13
moja::modules::cbm::TurnoverRates::swFoliageTurnover
double swFoliageTurnover() const
Definition: turnoverrates.h:38
moja::modules::cbm::TurnoverRates::hwBranchSnagSplit
double hwBranchSnagSplit() const
Definition: turnoverrates.h:55
moja::modules::cbm::TurnoverRates::hwStemSnagTurnover
double hwStemSnagTurnover() const
Definition: turnoverrates.h:51
moja::modules::cbm::TurnoverRates::hwFoliageTurnover
double hwFoliageTurnover() const
Definition: turnoverrates.h:48
moja::modules::cbm::TurnoverRates::hwFineRootTurnover
double hwFineRootTurnover() const
Definition: turnoverrates.h:54
moja::modules::cbm::TurnoverRates::swBranchSnagTurnover
double swBranchSnagTurnover() const
Definition: turnoverrates.h:42
moja::modules::cbm::TurnoverRates::hwBranchSnagTurnover
double hwBranchSnagTurnover() const
Definition: turnoverrates.h:52
moja::modules::cbm::TurnoverRates::swFineRootSplit
double swFineRootSplit() const
Definition: turnoverrates.h:47
moja::modules::cbm::TurnoverRates::hwFineRootSplit
double hwFineRootSplit() const
Definition: turnoverrates.h:57
moja::modules::cbm::TurnoverRates::swCoarseRootSplit
double swCoarseRootSplit() const
Definition: turnoverrates.h:46
moja::modules::cbm::TurnoverRates::swFineRootTurnover
double swFineRootTurnover() const
Definition: turnoverrates.h:44
moja::modules::cbm::TurnoverRates::hwCoarseRootTurnover
double hwCoarseRootTurnover() const
Definition: turnoverrates.h:53
moja::modules::cbm::TurnoverRates::hwBranchTurnover
double hwBranchTurnover() const
Definition: turnoverrates.h:50
moja::modules::cbm::TurnoverRates::swCoarseRootTurnover
double swCoarseRootTurnover() const
Definition: turnoverrates.h:43
moja::modules::cbm::TurnoverRates::swBranchTurnover
double swBranchTurnover() const
Definition: turnoverrates.h:40
moja::modules::cbm::TurnoverRates::swStemSnagTurnover
double swStemSnagTurnover() const
Definition: turnoverrates.h:41
moja::modules::cbm::TurnoverRates::hwStemTurnover
double hwStemTurnover() const
Definition: turnoverrates.h:49
moja::modules::cbm::TurnoverRates::hwCoarseRootSplit
double hwCoarseRootSplit() const
Definition: turnoverrates.h:56
moja
Definition: ageclasshelper.cpp:10
moja::modules::cbm::TurnoverRates::swStemTurnover
double swStemTurnover() const
Definition: turnoverrates.h:39