30class TimeSeriesManager;
32class Meteo2DInterpolator;
36 IOManager(
const std::string& filename_in);
82 size_t getMeteoData(
const Date& dateStart,
const Date& dateEnd, std::vector< METEO_SET >& vecVecMeteo);
119 const std::vector< METEO_SET >& vecMeteo) {tsm1.
push_meteo_data(level, date_start, date_end, vecMeteo);}
158 const std::vector<Coords>& in_coords, std::vector<double>& result);
161 const std::vector<Coords>& in_coords, std::vector<double>& result, std::string& info_string);
164 const std::vector<StationData>& in_stations, std::vector<double>& result, std::string& info_string);
243 void initVirtualStations();
244 std::vector<METEO_SET> getVirtualStationsData(
const DEMObject& dem,
const Date& dateStart,
const Date& dateEnd);
245 void initIOManager();
254 std::vector<size_t> v_params, grids_params;
255 std::vector<StationData> v_stations, v_gridstations;
256 unsigned int vstations_refresh_rate, vstations_refresh_offset;
257 bool write_resampled_grids =
false;
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 represent DEMs and automatically compute some properties. This class stores elevation grid...
Definition: DEMObject.h:40
A class to handle timestamps. This class handles conversion between different time display formats (I...
Definition: Date.h:87
A class to represent 2D Grids. Typical application as DEM or Landuse Model.
Definition: Grid2DObject.h:42
A class to represent 3D Grids. Typical application: wind field.
Definition: Grid3DObject.h:39
Definition: GridsManager.h:33
void readAssimilationData(const Date &date_in, Grid2DObject &da_out)
Definition: GridsManager.cc:139
void read3DGrid(Grid3DObject &grid_out, const std::string &i_filename="")
Definition: GridsManager.h:42
void read2DGrid(Grid2DObject &grid_out, const std::string &option="")
Read the requested grid, according to the configured processing level.
Definition: GridsManager.cc:70
void readGlacier(Grid2DObject &landuse_out)
Definition: GridsManager.cc:126
void write3DGrid(const Grid3DObject &grid_out, const std::string &options="")
Definition: GridsManager.h:52
void write2DGrid(const Grid2DObject &grid_in, const std::string &options="")
Definition: GridsManager.h:50
void readDEM(DEMObject &dem_out)
Definition: GridsManager.cc:96
void readLanduse(Grid2DObject &landuse_out)
Definition: GridsManager.cc:113
This class is the class to use for raw I/O operations. It is responsible for transparently loading th...
Definition: IOHandler.h:37
virtual bool list2DGrids(const Date &start, const Date &end, std::map< Date, std::set< size_t > > &list)
Return the list of grids within a given time period that could be read by the plugin,...
Definition: IOHandler.cc:425
virtual void readPOI(std::vector< Coords > &pts)
Read a list of points by their grid coordinates This allows for example to get a list of points where...
Definition: IOHandler.cc:538
Definition: IOManager.h:34
void write3DGrid(const Grid3DObject &grid_in, const std::string &options="")
Definition: IOManager.h:51
void write3DGrid(const Grid3DObject &grid_in, const MeteoGrids::Parameters ¶meter, const Date &date)
Definition: IOManager.h:52
double getAvgSamplingRate() const
Returns the average sampling rate in the data. This computes the average sampling rate of the data th...
Definition: IOManager.cc:605
void interpolate(const Date &date, const DEMObject &dem, const MeteoData::Parameters &meteoparam, const std::vector< Coords > &in_coords, std::vector< double > &result)
Definition: IOManager.cc:585
bool list2DGrids(const Date &start, const Date &end, std::map< Date, std::set< size_t > > &list)
Definition: IOManager.h:53
void add_to_points_cache(const Date &i_date, const METEO_SET &vecMeteo)
Add a METEO_SET for a specific instance to the point cache. This is a way to manipulate MeteoData var...
Definition: IOManager.cc:610
void setProcessingLevel(const unsigned int &i_level)
Set the desired ProcessingLevel of the IOManager instance The processing level affects the way meteo ...
Definition: IOManager.cc:302
void read2DGrid(Grid2DObject &grid_out, const MeteoGrids::Parameters ¶meter, const Date &date)
Definition: IOManager.h:41
void read2DGrid(Grid2DObject &grid_out, const std::string &options="")
Definition: IOManager.h:40
void readDEM(DEMObject &dem_out)
Definition: IOManager.h:44
void readLanduse(Grid2DObject &landuse_out)
Definition: IOManager.h:46
void setOfstreamDefault(const Config &i_cfg)
Definition: IOManager.cc:315
void readAssimilationData(const Date &date_in, Grid2DObject &da_out)
Definition: IOManager.h:45
IOManager(const std::string &filename_in)
Definition: IOManager.cc:229
void write2DGrid(const Grid2DObject &grid_in, const MeteoGrids::Parameters ¶meter, const Date &date)
Definition: IOManager.h:50
size_t getStationData(const Date &date, STATIONS_SET &vecStation)
Definition: IOManager.cc:321
const Config getConfig() const
Returns a copy of the internal Config object. This is convenient to clone an iomanager.
Definition: IOManager.h:208
void readPOI(std::vector< Coords > &pts)
Definition: IOManager.h:48
void clear_cache()
Clear the all cache. All raw, filtered and resampled values are dismissed, will need to be re-read an...
Definition: IOManager.cc:308
const std::string toString() const
Definition: IOManager.cc:658
size_t getMeteoData(const Date &dateStart, const Date &dateEnd, std::vector< METEO_SET > &vecVecMeteo)
Fill vecMeteo with a time series of objects corresponding to the interval indicated by dateStart and ...
Definition: IOManager.cc:384
void setMinBufferRequirements(const double &buffer_size, const double &buff_before)
Set buffer window properties requirements as known to the application itself. This will compare these...
Definition: IOManager.h:188
void write2DGrid(const Grid2DObject &grid_in, const std::string &options="")
Definition: IOManager.h:49
void writeMeteoData(const std::vector< METEO_SET > &vecMeteo, const std::string &option="")
Definition: IOManager.h:201
void read3DGrid(Grid3DObject &grid_out, const std::string &options="")
Definition: IOManager.h:42
void read3DGrid(Grid3DObject &grid_out, const MeteoGrids::Parameters ¶meter, const Date &date)
Definition: IOManager.h:43
void push_meteo_data(const IOUtils::ProcessingLevel &level, const Date &date_start, const Date &date_end, const std::vector< METEO_SET > &vecMeteo)
Push a vector of time series of MeteoData objects into the IOManager. This overwrites any internal bu...
Definition: IOManager.h:118
void readGlacier(Grid2DObject &glacier_out)
Definition: IOManager.h:47
A class to spatially interpolate meteo parameters. For more, see Spatial interpolations.
Definition: Meteo2DInterpolator.h:97
Parameters
this enum provides indexed access to meteorological fields
Definition: MeteoData.h:145
Parameters
this enum provides names for possible meteogrids (from an ARPS file, etc)
Definition: MeteoData.h:46
Definition: TimeSeriesManager.h:31
void setBufferProperties(const double &buffer_size, const double &buff_before)
Set buffer window properties requirements as known to the application itself.
Definition: TimeSeriesManager.cc:75
void writeMeteoData(const std::vector< METEO_SET > &vecMeteo, const std::string &name="")
Definition: TimeSeriesManager.cc:343
void push_meteo_data(const IOUtils::ProcessingLevel &level, const Date &date_start, const Date &date_end, const std::vector< MeteoData > &vecMeteo, const bool &invalidate_cache=true)
Push a vector of time series of MeteoData objects into the TimeSeriesManager. This overwrites any int...
Definition: TimeSeriesManager.cc:196
OperationMode
Keywords for mode of operation. Please keep all the GRID_xxx last!
Definition: IOUtils.h:63
ProcessingLevel
Definition: IOUtils.h:54
std::vector< MeteoData > METEO_SET
Definition: MeteoData.h:32
std::vector< StationData > STATIONS_SET
Definition: StationData.h:145