10#ifndef LDNDC_DATASYNTH_REMOTESENSING_H_
11#define LDNDC_DATASYNTH_REMOTESENSING_H_
13#include "synthesizers/synth-base-streamdata.h"
14#include "remotesensing/remotesensingtypes.h"
15#include "time/cbm_date.h"
18#define SYNTH_REMOTESENSING_REC_SIZE SYNTH_REC_SIZE_(remotesensing)
20#define SYNTH_REMOTESENSING_REC_S_DECL_GET(__reg__,__item__) SYNTH_REC_DECL_GET_(remotesensing,__reg__,s,__item__)
21#define SYNTH_REMOTESENSING_REC_D_DECL_GET(__reg__,__item__) SYNTH_REC_DECL_GET_(remotesensing,__reg__,d,__item__)
23#define SYNTH_REMOTESENSING_REC_S_DECL_GET_AND_CHK_VALID(__reg__,__item__) SYNTH_REC_DECL_GET_AND_CHK_VALID_(remotesensing,__reg__,s,__item__)
24#define SYNTH_REMOTESENSING_REC_D_DECL_GET_AND_CHK_VALID(__reg__,__item__) SYNTH_REC_DECL_GET_AND_CHK_VALID_(remotesensing,__reg__,d,__item__)
26#define SYNTH_REMOTESENSING_INVALIDATE_BUFFER(__buf__) SYNTH_INVALIDATE_BUFFER_(remotesensing,__buf__)
28#define SYNTH_REMOTESENSING_CHK_MATCHING(__item__) SYNTH_CHK_MATCHING_(remotesensing,__item__)
30#define SYNTH_REMOTESENSING_CALL_LOOP_TEST_AND_SET(__item__) SYNTH_CALL_LOOP_TEST_AND_SET_(remotesensing,__item__)
31#define SYNTH_REMOTESENSING_RETURN_SUCCESS(__item__) SYNTH_RETURN_SUCCESS_(remotesensing,__item__)
34template <
typename,
unsigned int >
37namespace ldndc{
namespace remotesensing{
namespace synth
39typedef record::item_type record_item_t;
40struct scratch_t :
public ldndc::synth::streamdata_scratch_base_t< streamdata_info_t >
43 remotesensing_info_t
const * ,
48 remotesensing_info_t
const * ,
53struct CBM_API item_base_t :
public ldndc::synth::streamdata_item_base_t< streamdata_info_t, scratch_t >
58class CBM_API lsynth_remotesensing_t :
public ldndc::synth::streamdata_synth_base_t< streamdata_info_t >
61 lsynth_remotesensing_t();
62 lsynth_remotesensing_t(
63 remotesensing_info_t
const * ,
67 virtual ~lsynth_remotesensing_t();
75 unsigned int = ldndc::invalid_t< unsigned int >::value );
81 lerr_t synthesize_record(
82 record_item_t
const * , record_item_t * ,
83 record_item_t
const * , record_item_t * ,
87 lvector_t< unsigned int, 1 > * = NULL );
97 record_item_t
const * ,
98 record_item_t
const * )
const;
101 unsigned int subday()
104 return this->scratch_.subday;
108 unsigned int time_resolution_inout()
111 return this->scratch_.t_res_inout;
115 remotesensing_info_t info_;
118extern item_base_t
const * remotesensing_synthesizers[record::RECORD_SIZE];
Spatially explicit groundwater model.
Definition airchemistryput.h:15