MeteoIODoc 2.11.0
mio::EditingKeep Class Reference

Detailed Description

KEEP input editing command.

It is possible to exclude ALL parameters except the ones declared with the "keep" command (it is the exact opposite of the EditingExclude command). If such a command has been used for the wildcard station ID '*', it will be applied first so it is not possible to "keep" some parameters that have already been excluded with the wildcard station ID. Here below an example relying on wildcards:

[InputEditing]
*::edit1 = KEEP ;all stations will keep TA, RH and HS and reject the other parameters
*::arg1::params = TA RH HS
WFJ2::edit1 = KEEP ;WFJ2 will only keep HS since ISWR has been removed by the '*' station above
WFJ2::arg1::params = HS ISWR

#include <DataEditingAlgorithms.h>

Public Member Functions

 EditingKeep (const std::string &i_stationID, const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
 
virtual void editTimeSeries (std::vector< METEO_SET > &vecMeteo)
 Apply this editing block. More...
 
- Public Member Functions inherited from mio::EditingBlock
 EditingBlock (const std::string &i_stationID, const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &name, const Config &cfg)
 
virtual ~EditingBlock ()
 
virtual void editTimeSeries (std::vector< METEO_SET > &vecMeteo)
 Apply this editing block. More...
 
virtual void editTimeSeries (STATIONS_SET &vecStation)
 Apply this editing block to the StationData. More...
 
virtual std::set< std::string > requiredIDs () const
 Get the station IDs this editing block depends on for this station. More...
 
virtual std::set< std::string > providedIDs () const
 Get the station IDs this editing block provides based on this station. More...
 
virtual std::set< std::string > purgeIDs () const
 Get the station IDs to purge after using them for this station ID. More...
 
const std::string toString () const
 

Static Public Member Functions

static void processStation (METEO_SET &vecMeteo, const size_t &startIdx, const size_t &endIdx, const std::set< std::string > &params)
 

Additional Inherited Members

- Protected Member Functions inherited from mio::EditingBlock
std::string getName () const
 
bool skipStation (const std::vector< MeteoData > &vecMeteo) const
 Return true if this station ID should be skipped. More...
 
METEO_SET timeFilterFromStation (const METEO_SET &vecMeteo) const
 Prepare a station that will be merged in case of time restrictions. More...
 
- Static Protected Member Functions inherited from mio::EditingBlock
static std::set< std::string > initStationSet (const std::vector< std::pair< std::string, std::string > > &vecArgs, const std::string &keyword)
 
- Protected Attributes inherited from mio::EditingBlock
const std::set< std::string > excluded_stations
 
const std::set< std::string > kept_stations
 
const std::vector< DateRangetime_restrictions
 
const std::string stationID
 
const std::string block_name
 

Constructor & Destructor Documentation

◆ EditingKeep()

mio::EditingKeep::EditingKeep ( const std::string &  i_stationID,
const std::vector< std::pair< std::string, std::string > > &  vecArgs,
const std::string &  name,
const Config cfg 
)

Member Function Documentation

◆ editTimeSeries()

void mio::EditingKeep::editTimeSeries ( std::vector< METEO_SET > &  vecMeteo)
virtual

Apply this editing block.

This applies the editing block for its station that has been declared in the constructor on the provided MeteoData timeseries.

Parameters
vecMeteoMeteoData timeseries for all stations

Reimplemented from mio::EditingBlock.

◆ processStation()

void mio::EditingKeep::processStation ( METEO_SET vecMeteo,
const size_t &  startIdx,
const size_t &  endIdx,
const std::set< std::string > &  params 
)
static

The documentation for this class was generated from the following files: