LandscapeDNDC 1.37.0
Loading...
Searching...
No Matches
output-event-report-forest.h
1
10
11#ifndef LM_OUTPUT_EVENTREPORTFOREST_H_
12#define LM_OUTPUT_EVENTREPORTFOREST_H_
13
14#include "mbe_legacyoutputmodel.h"
15#include "state/mbe_state.h"
16#include "ld_eventqueue.h"
17
18
19#define LMOD_OUTPUT_MODULE_BASE MBE_LegacyOutputModel
20#define LMOD_OUTPUT_MODULE_NAME OutputEventReportForest
21#define LMOD_OUTPUT_MODULE_ID "output:report:forest"
22#define LMOD_OUTPUT_MODULE_DESC "Output Forest Event Summary (Harvest, Thin and Regrow)"
23namespace ldndc {
24class LDNDC_API LMOD_OUTPUT_MODULE_NAME : public LMOD_OUTPUT_MODULE_BASE
25{
26 LMOD_EXPORT_MODULE_INFO(LMOD_OUTPUT_MODULE_NAME,LMOD_OUTPUT_MODULE_ID,LMOD_OUTPUT_MODULE_DESC);
27 public:
28 LMOD_OUTPUT_MODULE_NAME( MoBiLE_State *,
29 cbm::io_kcomm_t *, timemode_e);
30 ~LMOD_OUTPUT_MODULE_NAME();
31
32 lerr_t configure( ldndc::config_file_t const *);
33 lerr_t register_ports( cbm::io_kcomm_t *);
34 lerr_t initialize();
35
36 lerr_t solve();
37 lerr_t unregister_ports( cbm::io_kcomm_t *);
38 lerr_t finalize();
39
40 lerr_t wake() { return LDNDC_ERR_OK; }
41 lerr_t sleep() { return LDNDC_ERR_OK; }
42
43 private:
44 cbm::io_kcomm_t * io_kcomm;
45
46 lerr_t dump_events_( EventQueue *, char const * /*event type*/, ldndc_flt64_t *);
47 ldndc::sink_handle_t m_sink;
48
49 EventQueue m_HarvestEvents;
50 CBM_Handle m_HarvestHandle;
51 EventQueue m_ThinEvents;
52 CBM_Handle m_ThinHandle;
53 EventQueue m_RegrowEvents;
54 CBM_Handle m_RegrowHandle;
55};
56} /*namespace ldndc*/
57
58
59#undef LMOD_OUTPUT_MODULE_BASE
60#undef LMOD_OUTPUT_MODULE_NAME
61#undef LMOD_OUTPUT_MODULE_ID
62#undef LMOD_OUTPUT_MODULE_DESC
63
64
65#endif /* !LM_OUTPUT_EVENTREPORTFOREST_H_ */
66
Spatially explicit groundwater model.
Definition airchemistryput.h:15