8#ifndef LM_OUTPUT_DSS_YEARLY_H_
9#define LM_OUTPUT_DSS_YEARLY_H_
11#include "mbe_legacyoutputmodel.h"
12#include "state/mbe_state.h"
14#define LMOD_OUTPUT_MODULE_BASE MBE_LegacyOutputModel
15#define LMOD_OUTPUT_MODULE_NAME OutputDSSYearly
16#define LMOD_OUTPUT_MODULE_ID "output:dss:yearly"
17#define LMOD_OUTPUT_MODULE_DESC "DSS Yearly Output"
20struct yearly_accumulated_outputs_t
23 double c_net_flux_old;
25 double c_fru_export_harvest_old;
26 double n_fru_export_harvest_old;
28 double c_total_export_harvest_old;
29 double n_total_export_harvest_old;
39 double water_percol_old;
40 double water_prec_old;
42 double annual_average_temperature;
46class LDNDC_API LMOD_OUTPUT_MODULE_NAME :
public LMOD_OUTPUT_MODULE_BASE
48 LMOD_EXPORT_MODULE_INFO(LMOD_OUTPUT_MODULE_NAME,LMOD_OUTPUT_MODULE_ID,LMOD_OUTPUT_MODULE_DESC);
50 LMOD_OUTPUT_MODULE_NAME(
53 timemode_e _timemode);
55 ~LMOD_OUTPUT_MODULE_NAME();
58 lerr_t configure( ldndc::config_file_t
const *);
66 lerr_t wake() {
return LDNDC_ERR_OK; }
67 lerr_t sleep() {
return LDNDC_ERR_OK; }
75 cbm::io_kcomm_t * io_kcomm;
77 input_class_soillayers_t
const & sl;
78 substate_physiology_t
const * phys;
79 substate_soilchemistry_t
const * soilchem;
80 substate_watercycle_t
const * water;
81 substate_microclimate_t
const * microclimate;
82 input_class_climate_t
const & climate_;
85 ldndc::sink_handle_t m_sink;
86 yearly_accumulated_outputs_t outputs;
88 void accumulate_outputs();
89 void update_outputs();
95#undef LMOD_OUTPUT_MODULE_BASE
96#undef LMOD_OUTPUT_MODULE_NAME
97#undef LMOD_OUTPUT_MODULE_ID
98#undef LMOD_OUTPUT_MODULE_DESC
Spatially explicit groundwater model.
Definition: airchemistryput.h:15