11#ifndef LM_OUTPUT_SOILCHEMISTRY_DAILY_H_NEW_
12#define LM_OUTPUT_SOILCHEMISTRY_DAILY_H_NEW_
14#include "mbe_legacyoutputmodel.h"
15#include "state/mbe_state.h"
17#define LMOD_OUTPUT_MODULE_BASE MBE_LegacyOutputModel
18#define LMOD_OUTPUT_MODULE_NAME OutputSoilchemistryDaily
19#define LMOD_OUTPUT_MODULE_ID "output:soilchemistry:daily"
20#define LMOD_OUTPUT_MODULE_DESC "Soil Chemistry Daily Output"
22class substate_microclimate_t;
23class substate_physiology_t;
24class substate_watercycle_t;
25class LDNDC_API LMOD_OUTPUT_MODULE_NAME :
public LMOD_OUTPUT_MODULE_BASE
27 LMOD_EXPORT_MODULE_INFO(LMOD_OUTPUT_MODULE_NAME,LMOD_OUTPUT_MODULE_ID,LMOD_OUTPUT_MODULE_DESC);
29 LMOD_OUTPUT_MODULE_NAME(
32 timemode_e _timemode);
34 ~LMOD_OUTPUT_MODULE_NAME();
37 lerr_t configure( ldndc::config_file_t
const *);
45 lerr_t wake() {
return LDNDC_ERR_OK; }
46 lerr_t sleep() {
return LDNDC_ERR_OK; }
49 lerr_t dump_0( ldndc_flt64_t *);
52 cbm::io_kcomm_t * io_kcomm;
54 input_class_soillayers_t
const * soillayers_in;
56 substate_physiology_t
const * phys;
57 MoBiLE_PlantVegetation * vegetation;
58 substate_soilchemistry_t
const * soilchem;
61 ldndc::sink_handle_t m_sink;
63 struct output_soilchemistry_daily_acc_t
65 double nh4_throughfall;
66 double no3_throughfall;
75 double co2_emis_hetero;
87 double c_litter_above;
88 double n_litter_above;
90 double c_litter_below;
91 double n_litter_below;
100 double denitrify_n2o;
105 output_soilchemistry_daily_acc_t acc;
106 void pop_accumulated_outputs();
107 void push_accumulated_outputs();
112#undef LMOD_OUTPUT_MODULE_BASE
113#undef LMOD_OUTPUT_MODULE_NAME
114#undef LMOD_OUTPUT_MODULE_ID
115#undef LMOD_OUTPUT_MODULE_DESC
Spatially explicit groundwater model.
Definition: airchemistryput.h:15