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