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);
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;
143 TimeShift(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
145 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec);
148 std::vector<offset_spec> dst_changes;
166 TimeSort(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
168 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec);
199 TimeLoop(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
201 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec);
205 Date req_start, req_end;
206 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:197
TimeLoop(const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
Definition: TimeFilters.cc:351
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec)
Definition: TimeFilters.cc:393
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(const Config &i_cfg)
Definition: TimeFilters.cc:436
~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:517
void process(std::vector< std::vector< MeteoData > > &ivec)
Definition: TimeFilters.cc:489
TimeProcStack & operator=(const TimeProcStack &source)
Definition: TimeFilters.cc:462
Time corrections.
Definition: TimeFilters.h:141
TimeShift(const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
Definition: TimeFilters.cc:253
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec)
Definition: TimeFilters.cc:276
Sort out of order timesteps.
Definition: TimeFilters.h:164
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec)
Definition: TimeFilters.cc:338
TimeSort(const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
Definition: TimeFilters.cc:327
Timesteps suppression filter.
Definition: TimeFilters.h:87
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec)
Definition: TimeFilters.cc:88
TimeSuppr(const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
Definition: TimeFilters.cc:37