GCBM
peatlanddisturbance.h
Go to the documentation of this file.
1 #ifndef MOJA_MODULES_CBM_PEATLAND_DISTURBANCE_H_
2 #define MOJA_MODULES_CBM_PEATLAND_DISTURBANCE_H_
3 
4 #include "moja/modules/cbm/_modules.cbm_exports.h"
5 #include "moja/flint/modulebase.h"
7 
8 namespace moja {
9 namespace modules {
10 namespace cbm {
11 
12  /*
13  Response to the historical and last disturbance events in CBM spinup
14  */
15  class CBM_API PeatlandDisturbance : public moja::flint::ModuleBase {
16  public:
18  virtual ~PeatlandDisturbance(){};
19 
20  void configure(const DynamicObject& config) override;
21  void subscribe(NotificationCenter& notificationCenter) override;
22 
23  void onDisturbanceEvent(const flint::DisturbanceEventNotification::Ptr) override;
24  void onLocalDomainInit() override;
25  void onTimingInit() override;
26  private:
27  flint::IVariable* _spu;
28  int _spuId;
29 
30  std::unordered_map<std::pair<std::string, int>, int> _dmAssociations;
31  void fetchDMAssociations();
32  };
33 }}}
34 #endif
moja::modules::cbm::PeatlandDisturbance::_spu
flint::IVariable * _spu
Definition: peatlanddisturbance.h:27
moja::modules::cbm::PeatlandDisturbance::_spuId
int _spuId
Definition: peatlanddisturbance.h:28
moja::modules::cbm
Definition: ageclasshelper.cpp:12
moja::modules::cbm::PeatlandDisturbance::_dmAssociations
std::unordered_map< std::pair< std::string, int >, int > _dmAssociations
Definition: peatlanddisturbance.h:30
moja::modules::cbm::PeatlandDisturbance::PeatlandDisturbance
PeatlandDisturbance()
Definition: peatlanddisturbance.h:17
moja::modules::cbm::PeatlandDisturbance
Definition: peatlanddisturbance.h:15
cbmdisturbanceeventmodule.h
moja::modules::cbm::PeatlandDisturbance::~PeatlandDisturbance
virtual ~PeatlandDisturbance()
Definition: peatlanddisturbance.h:18
moja
Definition: ageclasshelper.cpp:10