LandscapeDNDC 1.37.0
Loading...
Searching...
No Matches
ld_stores.h
1
6
7#ifndef LDNDC_KERNEL_FARMSYSTEM_STORES_H_
8#define LDNDC_KERNEL_FARMSYSTEM_STORES_H_
9
10#include "ld_kernel.h"
11#include "ld_eventqueue.h"
12#include <containers/lvector.h>
13#include <json/cbm_json.h>
14#include "farmsystem/ld_farmsystem_output.h"
15#include "ld_shared.h"
16
17namespace ldndc {
18
19class Store
20{
21
22public:
23
24 struct straw_t
25 {
26 straw_t(): c_amount( 0.0), n_amount( 0.0){}
27 double c_amount;
28 double n_amount;
29 void
30 clear(){ c_amount = 0.0; n_amount = 0.0; }
31 };
32
33public:
34
35 Store();
36 Store( int,
37 cbm::string_t,
38 cbm::string_t);
39 ~Store();
40
41 Store(const Store& other);
42 //Store& operator=(Store other);
43 Store& operator=(const Store& other);
44
45 lerr_t initialize( cbm::io_kcomm_t *_io);
46
47 lerr_t handle_store( cbm::RunLevelArgs *,
48 FarmSystemOutput *);
49
50 inline int
51 get_id(){ return store_id; };
52
53 lerr_t
54 clear_out( double &, double &);
55
56public:
57
58 int store_id;
59
60 long long int seconds_at_latest_storage;
61
62 straw_t straw_storage;
63
64 cbm::string_t processing;
65};
66
67
68} /* namespace ldndc */
69
70#endif /* !LDNDC_KERNEL_FARMSYSTEM_STORES_H_ */
Spatially explicit groundwater model.
Definition airchemistryput.h:15