2#ifndef LMOD_EVENTHANDLER_FLOOD_H_
3#define LMOD_EVENTHANDLER_FLOOD_H_
5#include "mbe_legacymodel.h"
6#include "state/mbe_state.h"
7#include "ld_eventqueue.h"
12class LDNDC_API EventHandlerFlood :
public MBE_LegacyModel
14 LMOD_EXPORT_MODULE_INFO(EventHandlerFlood,
"eventhandler:flood",
"EventHandler Flood");
17 EventHandlerFlood( MoBiLE_State *,
18 cbm::io_kcomm_t *, timemode_e);
21 lerr_t configure( ldndc::config_file_t
const *) {
return LDNDC_ERR_OK; }
22 lerr_t register_ports( cbm::io_kcomm_t *);
23 lerr_t initialize() {
return LDNDC_ERR_OK; }
26 lerr_t unregister_ports( cbm::io_kcomm_t *);
27 lerr_t finalize() {
return LDNDC_ERR_OK; }
29 lerr_t wake() {
return LDNDC_ERR_OK; }
30 lerr_t sleep() {
return LDNDC_ERR_OK; }
33 double get_bund_height()
const {
return cbm::bound_min( get_water_table(), bund_height); };
35 double get_irrigation_amount()
const {
return irrigation_amount; };
37 double get_irrigation_height()
const {
return irrigation_height; };
39 double get_maximum_percolation()
const {
return maximum_percolation; };
41 double get_water_table()
const {
return water_table; };
43 bool have_unlimited_water()
const {
return unlimited_water; };
45 double get_saturation_level()
const {
return saturation_level; };
47 double get_soil_depth()
const {
return soil_depth; };
50 substate_soilchemistry_t
const & sc_;
51 input_class_soillayers_t
const & sl_;
53 EventQueue m_FloodEvents;
54 CBM_Handle m_FloodHandle;
57 double irrigation_amount;
58 double irrigation_height;
59 double maximum_percolation;
62 double saturation_level;
66 virtual lerr_t flood();
Spatially explicit groundwater model.
Definition airchemistryput.h:15