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;
148 TimeShift(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
150 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec);
153 void process_corrections(std::vector<MeteoData>& ovec)
const;
154 void process_offset(std::vector<MeteoData>& ovec)
const;
155 std::vector<offset_spec> dst_changes;
175 TimeSort(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
177 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec);
208 TimeLoop(
const std::vector< std::pair<std::string, std::string> >& vecArgs,
const std::string& name,
const Config& cfg);
210 void process(
const unsigned int& param,
const std::vector<MeteoData>& ivec, std::vector<MeteoData>& ovec);
214 Date req_start, req_end;
215 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:206
TimeLoop(const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
Definition: TimeFilters.cc:377
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec)
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(const Config &i_cfg)
Definition: TimeFilters.cc:462
~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:146
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:286
Sort out of order timesteps.
Definition: TimeFilters.h:173
void process(const unsigned int ¶m, const std::vector< MeteoData > &ivec, std::vector< MeteoData > &ovec)
Definition: TimeFilters.cc:364
TimeSort(const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
Definition: TimeFilters.cc:353
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