GCBM
cbmdisturbanceeventmodule.h
Go to the documentation of this file.
1 #ifndef MOJA_MODULES_CBM_CBMDISTURBANCEEVENTMODULE_H_
2 #define MOJA_MODULES_CBM_CBMDISTURBANCEEVENTMODULE_H_
3 
6 #include "moja/hash.h"
7 
8 #include <unordered_map>
9 #include <unordered_set>
10 
11 namespace moja {
12  namespace modules {
13  namespace cbm {
14 
16  public:
18  virtual ~CBMDisturbanceEventModule() = default;
19 
20  void subscribe(NotificationCenter& notificationCenter) override;
21 
22  flint::ModuleTypes moduleType() { return flint::ModuleTypes::DisturbanceEvent; };
23 
24  virtual void doDisturbanceEvent(DynamicVar) override;
25  virtual void doLocalDomainInit() override;
26 
27  private:
28  flint::IVariable* _age;
29 
30  const flint::IPool* _softwoodMerch;
31  const flint::IPool* _softwoodOther;
32  const flint::IPool* _softwoodFoliage;
33  const flint::IPool* _softwoodCoarseRoots;
34  const flint::IPool* _softwoodFineRoots;
35 
36  const flint::IPool* _hardwoodMerch;
37  const flint::IPool* _hardwoodOther;
38  const flint::IPool* _hardwoodFoliage;
39  const flint::IPool* _hardwoodCoarseRoots;
40  const flint::IPool* _hardwoodFineRoots;
41 
42  const flint::IPool* _woodyFoliageLive;
43  const flint::IPool* _woodyStemsBranchesLive;
44  const flint::IPool* _woodyRootsLive;
45 
46  const flint::IPool* _softwoodStem;
47  const flint::IPool* _hardwoodStem;
48 
49  flint::IVariable* _smalltreeAge;
50  flint::IVariable* _shrubAge;
51  };
52 
53  }
54  }
55 } // namespace moja::modules::cbm
56 #endif // MOJA_MODULES_CBM_CBMDISTURBANCEEVENTMODULE_H_
moja::modules::cbm::CBMDisturbanceEventModule::_woodyRootsLive
const flint::IPool * _woodyRootsLive
Definition: cbmdisturbanceeventmodule.h:44
moja::modules::cbm::CBMDisturbanceEventModule::_softwoodOther
const flint::IPool * _softwoodOther
Definition: cbmdisturbanceeventmodule.h:31
moja::modules::cbm::CBMDisturbanceEventModule::_hardwoodOther
const flint::IPool * _hardwoodOther
Definition: cbmdisturbanceeventmodule.h:37
moja::modules::cbm::CBMDisturbanceEventModule::doDisturbanceEvent
virtual void doDisturbanceEvent(DynamicVar) override
Definition: cbmdisturbanceeventmodule.cpp:97
moja::modules::cbm
Definition: ageclasshelper.cpp:12
cbmdisturbancelistener.h
moja::modules::cbm::CBMDisturbanceEventModule::_softwoodCoarseRoots
const flint::IPool * _softwoodCoarseRoots
Definition: cbmdisturbanceeventmodule.h:33
moja::modules::cbm::CBMDisturbanceEventModule::subscribe
void subscribe(NotificationCenter &notificationCenter) override
Definition: cbmdisturbanceeventmodule.cpp:33
moja::modules::cbm::CBMDisturbanceEventModule::doLocalDomainInit
virtual void doLocalDomainInit() override
Definition: cbmdisturbanceeventmodule.cpp:52
moja::modules::cbm::CBMDisturbanceEventModule::_smalltreeAge
flint::IVariable * _smalltreeAge
Definition: cbmdisturbanceeventmodule.h:49
moja::modules::cbm::CBMModuleBase
Definition: cbmmodulebase.h:22
moja::modules::cbm::CBMDisturbanceEventModule::_softwoodMerch
const flint::IPool * _softwoodMerch
Definition: cbmdisturbanceeventmodule.h:30
moja::modules::cbm::CBMDisturbanceEventModule::~CBMDisturbanceEventModule
virtual ~CBMDisturbanceEventModule()=default
moja::modules::cbm::CBMDisturbanceEventModule::_age
flint::IVariable * _age
Definition: cbmdisturbanceeventmodule.h:28
moja::modules::cbm::CBMDisturbanceEventModule
Definition: cbmdisturbanceeventmodule.h:15
moja::modules::cbm::CBMDisturbanceEventModule::_softwoodStem
const flint::IPool * _softwoodStem
Definition: cbmdisturbanceeventmodule.h:46
moja::modules::cbm::CBMDisturbanceEventModule::_woodyFoliageLive
const flint::IPool * _woodyFoliageLive
Definition: cbmdisturbanceeventmodule.h:42
moja::modules::cbm::CBMDisturbanceEventModule::_softwoodFoliage
const flint::IPool * _softwoodFoliage
Definition: cbmdisturbanceeventmodule.h:32
moja::modules::cbm::CBMDisturbanceEventModule::_shrubAge
flint::IVariable * _shrubAge
Definition: cbmdisturbanceeventmodule.h:50
moja::modules::cbm::CBMDisturbanceEventModule::CBMDisturbanceEventModule
CBMDisturbanceEventModule()
Definition: cbmdisturbanceeventmodule.h:17
moja::modules::cbm::CBMDisturbanceEventModule::moduleType
flint::ModuleTypes moduleType()
Definition: cbmdisturbanceeventmodule.h:22
moja::modules::cbm::CBMDisturbanceEventModule::_hardwoodMerch
const flint::IPool * _hardwoodMerch
Definition: cbmdisturbanceeventmodule.h:36
moja::modules::cbm::CBMDisturbanceEventModule::_hardwoodCoarseRoots
const flint::IPool * _hardwoodCoarseRoots
Definition: cbmdisturbanceeventmodule.h:39
moja::modules::cbm::CBMDisturbanceEventModule::_hardwoodFoliage
const flint::IPool * _hardwoodFoliage
Definition: cbmdisturbanceeventmodule.h:38
moja::modules::cbm::CBMDisturbanceEventModule::_hardwoodStem
const flint::IPool * _hardwoodStem
Definition: cbmdisturbanceeventmodule.h:47
moja::modules::cbm::CBMDisturbanceEventModule::_woodyStemsBranchesLive
const flint::IPool * _woodyStemsBranchesLive
Definition: cbmdisturbanceeventmodule.h:43
moja
Definition: ageclasshelper.cpp:10
moja::modules::cbm::CBMDisturbanceEventModule::_hardwoodFineRoots
const flint::IPool * _hardwoodFineRoots
Definition: cbmdisturbanceeventmodule.h:40
cbmmodulebase.h
moja::modules::cbm::CBMDisturbanceEventModule::_softwoodFineRoots
const flint::IPool * _softwoodFineRoots
Definition: cbmdisturbanceeventmodule.h:34