9#ifndef LM_OUTPUT_SURROGATE_YEARLY_H_NEW_
10#define LM_OUTPUT_SURROGATE_YEARLY_H_NEW_
12#include "mbe_legacyoutputmodel.h"
13#include "state/mbe_state.h"
15#define LMOD_OUTPUT_MODULE_BASE MBE_LegacyOutputModel
16#define LMOD_OUTPUT_MODULE_NAME OutputSurrogateYearly
17#define LMOD_OUTPUT_MODULE_ID "output:surrogate:yearly"
18#define LMOD_OUTPUT_MODULE_DESC "SURROGATE Yearly Output"
20class substate_physiology_t;
21class substate_watercycle_t;
22class LDNDC_API LMOD_OUTPUT_MODULE_NAME :
public LMOD_OUTPUT_MODULE_BASE
24 LMOD_EXPORT_MODULE_INFO(LMOD_OUTPUT_MODULE_NAME,LMOD_OUTPUT_MODULE_ID,LMOD_OUTPUT_MODULE_DESC);
26 LMOD_OUTPUT_MODULE_NAME(
29 timemode_e _timemode);
31 ~LMOD_OUTPUT_MODULE_NAME();
34 lerr_t configure( ldndc::config_file_t
const *);
42 lerr_t wake() {
return LDNDC_ERR_OK; }
43 lerr_t sleep() {
return LDNDC_ERR_OK; }
50 cbm::io_kcomm_t * io_kcomm;
52 input_class_soillayers_t
const * soillayers_in;
54 substate_physiology_t
const * phys;
55 substate_soilchemistry_t
const * soilchem;
56 substate_watercycle_t
const * water;
57 MoBiLE_PlantVegetation * m_veg;
60 ldndc::sink_handle_t m_sink;
63 struct output_surrogate_yearly_acc_t
70 output_surrogate_yearly_acc_t acc;
71 void pop_accumulated_outputs();
72 void push_accumulated_outputs();
73 void accumulate_daily_outputs();
74 void update_daily_outputs();
80#undef LMOD_OUTPUT_MODULE_BASE
81#undef LMOD_OUTPUT_MODULE_NAME
82#undef LMOD_OUTPUT_MODULE_ID
83#undef LMOD_OUTPUT_MODULE_DESC
Spatially explicit groundwater model.
Definition: airchemistryput.h:15