37 ~TimeProcStack() {
for (
size_t ii=0; ii<filter_stack.size(); ii++)
delete filter_stack[ii];}
39 void process(std::vector< std::vector<MeteoData> >& ivec);
47 std::vector<ProcessingBlock*> filter_stack;
48 bool enable_time_filtering;
89 TimeSuppr(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
91 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec)
override;
95 typedef enum SUPPR_MODE {
102 void supprByDates(std::vector<MeteoData>& ovec)
const;
103 void supprFrac(std::vector<MeteoData>& ovec)
const;
104 void supprInvalid(std::vector<MeteoData>& ovec)
const;
106 std::map< std::string, std::vector<DateRange> > suppr_dates;
150 TimeShift(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
152 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec)
override;
155 void process_corrections(std::vector<MeteoData>& ovec)
const;
156 void process_offset(std::vector<MeteoData>& ovec)
const;
157 std::vector<offset_spec> dst_changes;
177 TimeSort(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
179 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec)
override;
210 TimeLoop(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
212 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec)
override;
216 Date req_start, req_end;
217 Date match_date, ref_start, ref_end;
A class that reads a key/value file. These files (typically named *.ini) follow the INI file format s...
Definition Config.h:79
A class to handle timestamps. This class handles conversion between different time display formats (I...
Definition Date.h:87
The base class for all filters that provides the interface and a few helper methods.
Definition ProcessingBlock.h:67
Loops over a specific time period.
Definition TimeFilters.h:208
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec) override
Definition TimeFilters.cc:419
Since the time filters are quite specific to TIME (and need to be applied before),...
Definition TimeFilters.h:33
static const std::string timeParamName
Definition TimeFilters.h:44
~TimeProcStack()
Definition TimeFilters.h:37
static void checkUniqueTimestamps(std::vector< METEO_SET > &vecVecMeteo)
check that timestamps are unique and in increasing order
Definition TimeFilters.cc:540
void process(std::vector< std::vector< MeteoData > > &ivec)
Definition TimeFilters.cc:512
TimeProcStack & operator=(const TimeProcStack &source)
Definition TimeFilters.cc:488
Time corrections.
Definition TimeFilters.h:148
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec) override
Definition TimeFilters.cc:286
Sort out of order timesteps.
Definition TimeFilters.h:175
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec) override
Definition TimeFilters.cc:364
Timesteps suppression filter.
Definition TimeFilters.h:87
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec) override
Definition TimeFilters.cc:88