1 #ifndef MOJA_MODULES_CBM_RECORD_H_
2 #define MOJA_MODULES_CBM_RECORD_H_
4 #include "moja/modules/cbm/_modules.cbm_exports.h"
5 #include "moja/types.h"
6 #include "moja/flint/record.h"
8 #include <Poco/Tuple.h>
18 typedef Poco::Tuple<Int64, int, int, int, int, double, double>
DateRow;
19 typedef std::tuple<Int64, int, int, int, int, double, double>
StdDateRow;
22 DateRecord(
int step,
int year,
int month,
int day,
23 double fracOfStep,
double yearsInStep);
27 bool operator==(
const DateRecord& other)
const;
32 void setId(Int64
id) { _id = id; }
33 Int64
getId()
const {
return _id; }
36 mutable size_t _hash = -1;
54 Poco::Nullable<Int64> ageClassId,
double area);
63 void setId(Int64
id) { _id = id; }
64 Int64
getId()
const {
return _id; }
67 mutable size_t _hash = -1;
79 typedef Poco::Tuple<Int64, int, int, int, int, std::string>
ModuleInfoRow;
83 ModuleInfoRecord(
int libType,
int libInfoId,
int moduleType,
int moduleId, std::string moduleName);
91 void setId(Int64
id) { _id = id; }
92 Int64
getId()
const {
return _id; }
95 mutable size_t _hash = -1;
123 mutable size_t _hash = -1;
146 mutable size_t _hash = -1;
170 mutable size_t _hash = -1;
192 mutable size_t _hash = -1;
204 DisturbanceRecord(Int64 locationId, Int64 distRecId, Int64 previousLocationId,
double area);
216 mutable size_t _hash = -1;
227 typedef Poco::Tuple<Int64, Int64, Int64, Poco::Nullable<Int64>, Int64, Int64,
double>
FluxRow;
228 typedef std::tuple<Int64, Int64, Int64, std::optional<Int64>, Int64, Int64,
double>
StdFluxRow;
231 FluxRecord(Int64 locationId, Int64 moduleId, Poco::Nullable<Int64> distId,
232 Int64 srcPoolId, Int64 dstPoolId,
double flux);
236 bool operator==(
const FluxRecord& other)
const;
245 mutable size_t _hash = -1;
258 typedef Poco::Tuple<Int64, Int64, Int64, double>
PoolRow;
262 PoolRecord(Int64 locationId, Int64 poolId,
double value);
265 bool operator==(
const PoolRecord& other)
const;
274 mutable size_t _hash = -1;
284 typedef Poco::Tuple<Int64, std::string, std::string>
ErrorRow;
288 ErrorRecord(std::string module, std::string error);
300 mutable size_t _hash = -1;
325 mutable size_t _hash = -1;
350 mutable size_t _hash = -1;
375 mutable size_t _hash = -1;
382 #endif // MOJA_MODULES_CBM_RECORD_H_