2018-07-13 12:31:06 +02:00
|
|
|
/*
|
|
|
|
MDAL - Mesh Data Abstraction Library (MIT License)
|
|
|
|
Copyright (C) 2018 Peter Petrik (zilolv at gmail dot com)
|
|
|
|
*/
|
|
|
|
|
2018-10-04 12:41:00 +02:00
|
|
|
#ifndef MDAL_GDAL_GRIB_HPP
|
|
|
|
#define MDAL_GDAL_GRIB_HPP
|
2018-07-13 12:31:06 +02:00
|
|
|
|
|
|
|
#include "mdal_gdal.hpp"
|
2018-07-18 09:00:34 +02:00
|
|
|
#include "mdal_data_model.hpp"
|
2018-07-13 12:31:06 +02:00
|
|
|
#include "mdal.h"
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
namespace MDAL
|
|
|
|
{
|
|
|
|
|
2018-10-04 12:41:00 +02:00
|
|
|
class LoaderGdalGrib: public LoaderGdal
|
2018-07-13 12:31:06 +02:00
|
|
|
{
|
|
|
|
public:
|
2018-10-04 12:41:00 +02:00
|
|
|
LoaderGdalGrib( const std::string &gribFile );
|
2018-07-13 12:31:06 +02:00
|
|
|
private:
|
|
|
|
bool parseBandInfo( const MDAL::GdalDataset *cfGDALDataset,
|
|
|
|
const metadata_hash &metadata, std::string &band_name,
|
|
|
|
double *time, bool *is_vector, bool *is_x
|
|
|
|
) override;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* ref time (UTC sec)
|
|
|
|
*
|
|
|
|
* parsed only once, because
|
|
|
|
* some GRIB files do not use FORECAST_SEC, but VALID_TIME
|
|
|
|
* metadata, so ref time varies with dataset-to-dataset
|
|
|
|
*/
|
|
|
|
double mRefTime;
|
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace MDAL
|
2018-10-04 12:41:00 +02:00
|
|
|
#endif // MDAL_GDAL_GRIB_HPP
|