WSL/SLF GitLab Repository

Commit dd895aa0 authored by Mathias Bavay's avatar Mathias Bavay
Browse files

New warnings have been tried to detect variable shadowing (one variable...

New warnings have been tried to detect variable shadowing (one variable declared with the same name as another one), alignement issues, etc. This produces very verbose output (not all warnings are legitimate) but allowed to fix lots of cases of misalignement and shadowing issues. These options have been left in the CMakeLists but NOT enabled (since these warnings are not so easy to interpret).
parent 0ae0e008
......@@ -37,6 +37,7 @@ ELSE(MSVC)
#we consider that all other compilers support "-" options and silently ignore what they don't know
SET(WARNINGS "-Wall")
SET(PROFILING "-pg -fprofile-arcs")
SET(DEEP_WARNINGS "-Wunused-value -Wshadow -Wpointer-arith -Wconversion -Wpadded -Winline -Wdisabled-optimization") #-Wfloat-equal
SET(EXTRA_WARNINGS "-Wextra -pedantic")
IF(CMAKE_COMPILER_IS_GNUCXX)
SET(EXTRA_WARNINGS "${EXTRA_WARNINGS} -ansi")
......
......@@ -90,7 +90,7 @@ template<class T> class Array2D {
* @param i_nrows number of rows of the new array
*/
Array2D(const Array2D<T>& i_array2D, const unsigned int& i_nx, const unsigned int& i_ny,
const unsigned int& i_ncols, const unsigned int& i_nrows);
const unsigned int& i_ncols, const unsigned int& i_nrows);
/**
* @brief A method that can be used to cut out a subplane of an existing Array2D object
......
......@@ -167,15 +167,15 @@ void Coords::moveByXY(const double& x_displacement, const double& y_displacement
}
///< move the point by the specified bearing and distance (in m)
void Coords::moveByBearing(const double& bearing, const double& distance) {
void Coords::moveByBearing(const double& i_bearing, const double& i_distance) {
double new_lat, new_lon;
switch(distance_algo) {
case GEO_COSINE:
cosineInverse(latitude, longitude, distance, bearing, new_lat, new_lon);
cosineInverse(latitude, longitude, i_distance, i_bearing, new_lat, new_lon);
break;
case GEO_VINCENTY:
VincentyInverse(latitude, longitude, distance, bearing, new_lat, new_lon);
VincentyInverse(latitude, longitude, i_distance, i_bearing, new_lat, new_lon);
break;
default:
throw InvalidArgumentException("Unrecognized geodesic distance algorithm selected", AT);
......@@ -738,35 +738,35 @@ void Coords::setEPSG(const int epsg) {
/////////////////////////////////////////////////////private methods
/**
* @brief Method converting towards WGS84
* @param[in] easting easting of the coordinate to convert
* @param[in] northing northing of the coordinate to convert
* @param[out] latitude converted latitude
* @param[out] longitude converted longitude
* @param[in] i_easting easting of the coordinate to convert
* @param[in] i_northing northing of the coordinate to convert
* @param[out] o_latitude converted latitude
* @param[out] o_longitude converted longitude
*/
void Coords::convert_to_WGS84(double easting, double northing, double& latitude, double& longitude) const
void Coords::convert_to_WGS84(double i_easting, double i_northing, double& o_latitude, double& o_longitude) const
{
if((easting!=IOUtils::nodata) && (northing!=IOUtils::nodata)) {
(this->*convToWGS84)(easting, northing, latitude, longitude);
if((i_easting!=IOUtils::nodata) && (i_northing!=IOUtils::nodata)) {
(this->*convToWGS84)(i_easting, i_northing, o_latitude, o_longitude);
} else {
latitude = IOUtils::nodata;
longitude = IOUtils::nodata;
o_latitude = IOUtils::nodata;
o_longitude = IOUtils::nodata;
}
}
/**
* @brief Method converting towards WGS84
* @param[in] latitude latitude of the coordinate to convert
* @param[in] longitude longitude of the coordinate to convert
* @param[out] easting converted easting
* @param[out] northing converted northing
* @param[in] i_latitude latitude of the coordinate to convert
* @param[in] i_longitude longitude of the coordinate to convert
* @param[out] o_easting converted easting
* @param[out] o_northing converted northing
*/
void Coords::convert_from_WGS84(double latitude, double longitude, double& easting, double& northing) const
void Coords::convert_from_WGS84(double i_latitude, double i_longitude, double& o_easting, double& o_northing) const
{
if((latitude!=IOUtils::nodata) && (longitude!=IOUtils::nodata)) {
(this->*convFromWGS84)(latitude, longitude, easting, northing);
if((i_latitude!=IOUtils::nodata) && (i_longitude!=IOUtils::nodata)) {
(this->*convFromWGS84)(i_latitude, i_longitude, o_easting, o_northing);
} else {
easting = IOUtils::nodata;
northing = IOUtils::nodata;
o_easting = IOUtils::nodata;
o_northing = IOUtils::nodata;
}
}
......@@ -1320,20 +1320,20 @@ void Coords::PROJ4_to_WGS84(double east_in, double north_in, double& lat_out, do
#endif
}
void Coords::distance(const Coords& destination, double& distance, double& bearing) const {
void Coords::distance(const Coords& destination, double& o_distance, double& o_bearing) const {
//HACK: this is the 2D distance, it does not work in 3D!!
if(isSameProj(destination)) {
//we can use simple cartesian grid arithmetic
distance = sqrt( Optim::pow2(easting - destination.getEasting()) + Optim::pow2(northing - destination.getNorthing()) );
bearing = atan2( northing - destination.getNorthing() , easting - destination.getEasting() );
bearing = fmod( bearing*Cst::to_deg+360. , 360. );
o_distance = sqrt( Optim::pow2(easting - destination.getEasting()) + Optim::pow2(northing - destination.getNorthing()) );
o_bearing = atan2( northing - destination.getNorthing() , easting - destination.getEasting() );
o_bearing = fmod( o_bearing*Cst::to_deg+360. , 360. );
} else {
switch(distance_algo) {
case GEO_COSINE:
distance = cosineDistance(latitude, longitude, destination.getLat(), destination.getLon(), bearing);
o_distance = cosineDistance(latitude, longitude, destination.getLat(), destination.getLon(), o_bearing);
break;
case GEO_VINCENTY:
distance = VincentyDistance(latitude, longitude, destination.getLat(), destination.getLon(), bearing);
o_distance = VincentyDistance(latitude, longitude, destination.getLat(), destination.getLon(), o_bearing);
break;
default:
throw InvalidArgumentException("Unrecognized geodesic distance algorithm selected", AT);
......@@ -1351,7 +1351,7 @@ void Coords::distance(const Coords& destination, double& distance, double& beari
void Coords::WGS84_to_local(double lat_in, double long_in, double& east_out, double& north_out) const
{
double alpha;
double distance;
double dist;
if((ref_latitude==IOUtils::nodata) || (ref_longitude==IOUtils::nodata)) {
east_out = IOUtils::nodata;
......@@ -1360,17 +1360,17 @@ void Coords::WGS84_to_local(double lat_in, double long_in, double& east_out, dou
} else {
switch(distance_algo) {
case GEO_COSINE:
distance = cosineDistance(ref_latitude, ref_longitude, lat_in, long_in, alpha);
dist = cosineDistance(ref_latitude, ref_longitude, lat_in, long_in, alpha);
break;
case GEO_VINCENTY:
distance = VincentyDistance(ref_latitude, ref_longitude, lat_in, long_in, alpha);
dist = VincentyDistance(ref_latitude, ref_longitude, lat_in, long_in, alpha);
break;
default:
throw InvalidArgumentException("Unrecognized geodesic distance algorithm selected", AT);
}
east_out = distance*sin(alpha*Cst::to_rad);
north_out = distance*cos(alpha*Cst::to_rad);
east_out = dist*sin(alpha*Cst::to_rad);
north_out = dist*cos(alpha*Cst::to_rad);
}
}
......@@ -1384,7 +1384,7 @@ void Coords::WGS84_to_local(double lat_in, double long_in, double& east_out, dou
*/
void Coords::local_to_WGS84(double east_in, double north_in, double& lat_out, double& long_out) const
{
const double distance = sqrt( Optim::pow2(east_in) + Optim::pow2(north_in) );
const double dist = sqrt( Optim::pow2(east_in) + Optim::pow2(north_in) );
const double bearing = fmod( atan2(east_in, north_in)*Cst::to_deg+360. , 360.);
if((ref_latitude==IOUtils::nodata) || (ref_longitude==IOUtils::nodata)) {
......@@ -1394,10 +1394,10 @@ void Coords::local_to_WGS84(double east_in, double north_in, double& lat_out, do
} else {
switch(distance_algo) {
case GEO_COSINE:
cosineInverse(ref_latitude, ref_longitude, distance, bearing, lat_out, long_out);
cosineInverse(ref_latitude, ref_longitude, dist, bearing, lat_out, long_out);
break;
case GEO_VINCENTY:
VincentyInverse(ref_latitude, ref_longitude, distance, bearing, lat_out, long_out);
VincentyInverse(ref_latitude, ref_longitude, dist, bearing, lat_out, long_out);
break;
default:
throw InvalidArgumentException("Unrecognized geodesic distance algorithm selected", AT);
......
......@@ -69,7 +69,7 @@ class Coords {
bool operator!=(const Coords&) const; ///<Operator that tests for inequality
bool isNodata() const;
void moveByXY(const double& x_displacement, const double& y_displacement);
void moveByBearing(const double& bearing, const double& distance);
void moveByBearing(const double& i_bearing, const double& i_distance);
static Coords merge(const Coords& coord1, const Coords& coord2);
void merge(const Coords& coord2);
......@@ -124,8 +124,8 @@ class Coords {
private:
//Coordinates conversions
void convert_to_WGS84(double easting, double northing, double& latitude, double& longitude) const;
void convert_from_WGS84(double latitude, double longitude, double& easting, double& northing) const;
void convert_to_WGS84(double i_easting, double i_northing, double& o_latitude, double& o_longitude) const;
void convert_from_WGS84(double i_latitude, double i_longitude, double& o_easting, double& o_northing) const;
void WGS84_to_CH1903(double lat_in, double long_in, double& east_out, double& north_out) const;
void CH1903_to_WGS84(double east_in, double north_in, double& lat_out, double& long_out) const;
......@@ -141,7 +141,7 @@ class Coords {
void parseUTMZone(const std::string& zone_info, char& zoneLetter, short int& zoneNumber) const;
//Distances calculations
void distance(const Coords& destination, double& distance, double& bearing) const;
void distance(const Coords& destination, double& o_distance, double& o_bearing) const;
private:
void clearCoordinates();
......
......@@ -172,12 +172,12 @@ class Date {
bool isLeapYear(const int&) const;
void plausibilityCheck(const int& in_year, const int& in_month, const int& in_day, const int& in_hour, const int& in_minute) const;
static const double epsilon;
double timezone;
double gmt_julian;
int gmt_year, gmt_month, gmt_day, gmt_hour, gmt_minute;
bool dst;
bool undef;
static const double epsilon;
};
typedef Date Duration; //so that later, we can implement a true Interval/Duration class
......
......@@ -457,14 +457,14 @@ void Gradient::getPalette(std::vector<unsigned char> &palette, size_t &nr_colors
}
//we assume that the vectors are sorted by X
double Gradient_model::getInterpol(const double& val, const std::vector<double>& X, const std::vector<double>& Y) const
double Gradient_model::getInterpol(const double& val, const std::vector<double>& i_X, const std::vector<double>& i_Y) const
{
const size_t nr = X.size();
const size_t nr = i_X.size();
#ifndef NOSAFECHECKS
if(Y.size()!=nr) {
if(i_Y.size()!=nr) {
std::stringstream ss;
ss << "For color gradients interpolations, both X and Y vectors must have the same size! ";
ss << "There are " << X.size() << " abscissa for " << Y.size() << " ordinates.";
ss << "There are " << i_X.size() << " abscissa for " << i_Y.size() << " ordinates.";
throw IOException(ss.str(), AT);
}
if(nr==0) {
......@@ -473,13 +473,13 @@ double Gradient_model::getInterpol(const double& val, const std::vector<double>&
#endif
size_t i=0;
while(i<nr && X[i]<val) i++; //find index of first element greater than val
while(i<nr && i_X[i]<val) i++; //find index of first element greater than val
if(i==0) return Y[0];
if(i>=nr) return Y[ nr-1 ];
if(X[i]==val) return Y[i];
if(i==0) return i_Y[0];
if(i>=nr) return i_Y[ nr-1 ];
if(i_X[i]==val) return i_Y[i];
const double y = Y[i-1] + (val-X[i-1])/(X[i]-X[i-1]) * (Y[i]-Y[i-1]);
const double y = i_Y[i-1] + (val-i_X[i-1])/(i_X[i]-i_X[i-1]) * (i_Y[i]-i_Y[i-1]);
return y;
}
......
......@@ -141,7 +141,7 @@ class Gradient_model {
//val MUST be between 0 and 1
virtual void getColor(const double &val, double &r, double &g, double &b) const;
protected:
double getInterpol(const double& val, const std::vector<double>& X, const std::vector<double>& Y) const;
double getInterpol(const double& val, const std::vector<double>& i_X, const std::vector<double>& i_Y) const;
void HSV2RGB(const double& h, const double& s, const double& v, unsigned char &r, unsigned char &g, unsigned char &b) const;
std::vector<double> X, v_h,v_s,v_v; ///<control points: vector of X and associated hues, saturations and values. They must be in X ascending order
......@@ -267,11 +267,11 @@ class Gradient {
static const unsigned char channel_max_color; ///< nr of colors per channel of the generated gradients
private:
double min, max, delta;
bool autoscale;
Gradient_model *model;
unsigned char nr_unique_cols; ///< number of unique colors to generate for indexed images
static const unsigned char reserved_idx; ///< for indexed gradients, number of reserved indexes
static const unsigned char reserved_cols; ///< for non-indexed gradients, number of reserved colors
Gradient_model *model;
bool autoscale;
};
class gr_heat : public Gradient_model {
......
......@@ -281,12 +281,12 @@ bool Grid3DObject::isSameGeolocalization(const Grid3DObject& target)
}
}
void Grid3DObject::extractLayer(const unsigned int& z, Grid2DObject& layer)
void Grid3DObject::extractLayer(const unsigned int& i_z, Grid2DObject& layer)
{
layer.set(ncols, nrows, cellsize, llcorner);
for(unsigned int jj=0; jj<nrows; jj++) {
for(unsigned int ii=0; ii<ncols; ii++) {
layer.grid2D(ii,jj) = grid3D(ii,jj,z);
layer.grid2D(ii,jj) = grid3D(ii,jj,i_z);
}
}
}
......
......@@ -153,16 +153,16 @@ class Grid3DObject{
/**
* @brief Extract a 2D grid for a given height
* @param z layer to extract
* @param i_z layer to extract
* @param layer extracted 2D grid
*/
void extractLayer(const unsigned int& z, Grid2DObject& layer);
void extractLayer(const unsigned int& i_z, Grid2DObject& layer);
Array3D<double> grid3D;
double cellsize;
Coords llcorner;
unsigned int ncols, nrows, ndepths;
double cellsize;
std::vector<double> z; ///> Vector of depths
unsigned int ncols, nrows, ndepths;
bool z_is_absolute; ///> Are z coordinates absolute or relative to a DEM?
protected:
......
......@@ -104,8 +104,8 @@ class IOHandler : public IOInterface {
const Config& cfg;
std::map<std::string, IOPlugin> mapPlugins;
bool enable_copying;
std::vector<std::string> copy_parameter, copy_name;
bool enable_copying;
};
} //namespace
......
......@@ -56,7 +56,7 @@ bool AlgorithmFactory::initStaticData()
//HACK: do not build a new object at every time step!!
InterpolationAlgorithm* AlgorithmFactory::getAlgorithm(const std::string& i_algoname,
Meteo2DInterpolator& i_mi, const Date& date,
Meteo2DInterpolator& i_mi, const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs, IOManager& iom)
{
......@@ -68,29 +68,29 @@ InterpolationAlgorithm* AlgorithmFactory::getAlgorithm(const std::string& i_algo
throw UnknownValueException("The interpolation algorithm '"+algoname+"' does not exist" , AT);
if (algoname == "CST"){
return new ConstAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new ConstAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "STD_PRESS"){
return new StandardPressureAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new StandardPressureAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "CST_LAPSE"){
return new ConstLapseRateAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new ConstLapseRateAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "IDW"){
return new IDWAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new IDWAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "IDW_LAPSE"){
return new IDWLapseAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new IDWLapseAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "LIDW_LAPSE"){
return new LocalIDWLapseAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new LocalIDWLapseAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "RH"){
return new RHAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new RHAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "ILWR"){
return new ILWRAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new ILWRAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "WIND_CURV"){
return new SimpleWindInterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new SimpleWindInterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "ODKRIG"){
return new OrdinaryKrigingAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new OrdinaryKrigingAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "USER"){
return new USERInterpolation(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new USERInterpolation(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else if (algoname == "HNW_SNOW"){
return new SnowHNWInterpolation(i_mi, date, i_dem, i_vecArgs, i_algoname, iom);
return new SnowHNWInterpolation(i_mi, i_date, i_dem, i_vecArgs, i_algoname, iom);
} else {
throw IOException("The interpolation algorithm '"+algoname+"' is not implemented" , AT);
}
......@@ -108,44 +108,44 @@ InterpolationAlgorithm::InterpolationAlgorithm(Meteo2DInterpolator& i_mi,
iomanager.getMeteoData(date, vecMeteo);
}
size_t InterpolationAlgorithm::getData(const MeteoData::Parameters& param,
std::vector<double>& vecData) const
size_t InterpolationAlgorithm::getData(const MeteoData::Parameters& i_param,
std::vector<double>& o_vecData) const
{
vector<StationData> vecMeta;
return getData(param, vecData, vecMeta);
vector<StationData> tmp_vecMeta;
return getData(i_param, o_vecData, tmp_vecMeta);
}
size_t InterpolationAlgorithm::getData(const MeteoData::Parameters& param,
std::vector<double>& vecData, std::vector<StationData>& vecMeta) const
size_t InterpolationAlgorithm::getData(const MeteoData::Parameters& i_param,
std::vector<double>& o_vecData, std::vector<StationData>& o_vecMeta) const
{
if (vecData.size() > 0)
vecData.clear();
if (o_vecData.size() > 0)
o_vecData.clear();
if (vecMeta.size() > 0)
vecMeta.clear();
if (o_vecMeta.size() > 0)
o_vecMeta.clear();
for (size_t ii=0; ii<vecMeteo.size(); ii++){
const double& val = vecMeteo[ii](param);
const double& val = vecMeteo[ii](i_param);
if (val != IOUtils::nodata){
vecData.push_back(val);
vecMeta.push_back(vecMeteo[ii].meta);
o_vecData.push_back(val);
o_vecMeta.push_back(vecMeteo[ii].meta);
}
}
return vecData.size();
return o_vecData.size();
}
size_t InterpolationAlgorithm::getStationAltitudes(const std::vector<StationData>& vecMeta,
std::vector<double>& vecData) const
size_t InterpolationAlgorithm::getStationAltitudes(const std::vector<StationData>& i_vecMeta,
std::vector<double>& o_vecData) const
{
for (size_t ii=0; ii<vecMeta.size(); ii++){
const double& val = vecMeta[ii].position.getAltitude();
for (size_t ii=0; ii<i_vecMeta.size(); ii++){
const double& val = i_vecMeta[ii].position.getAltitude();
if (val != IOUtils::nodata)
vecData.push_back(val);
o_vecData.push_back(val);
}
return vecData.size();
return o_vecData.size();
}
/**
......
......@@ -135,7 +135,7 @@ class InterpolationAlgorithm {
public:
InterpolationAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom);
......@@ -154,22 +154,22 @@ class InterpolationAlgorithm {
MeteoData::Parameters param; ///<the parameter that we will interpolate
size_t nrOfMeasurments; ///<the available number of measurements
std::vector<MeteoData> vecMeteo;
std::vector<double> vecData; ///<store the measurement for the given parameter
std::vector<StationData> vecMeta; ///<store the station data for the given parameter
std::stringstream info; ///<to store some extra information about the interoplation process
size_t nrOfMeasurments; ///<the available number of measurements
size_t getData(const MeteoData::Parameters& param, std::vector<double>& vecData) const;
size_t getData(const MeteoData::Parameters& param,
std::vector<double>& vecData, std::vector<StationData>& vecMeta) const;
size_t getStationAltitudes(const std::vector<StationData>& vecMeta, std::vector<double>& vecData) const;
size_t getData(const MeteoData::Parameters& i_param, std::vector<double>& o_vecData) const;
size_t getData(const MeteoData::Parameters& i_param,
std::vector<double>& o_vecData, std::vector<StationData>& o_vecMeta) const;
size_t getStationAltitudes(const std::vector<StationData>& i_vecMeta, std::vector<double>& o_vecData) const;
};
class AlgorithmFactory {
public:
static InterpolationAlgorithm* getAlgorithm(const std::string& i_algoname,
Meteo2DInterpolator& i_mi, const Date& date,
Meteo2DInterpolator& i_mi, const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs, IOManager& iom);
......@@ -186,11 +186,11 @@ class AlgorithmFactory {
class ConstAlgorithm : public InterpolationAlgorithm {
public:
ConstAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}
: InterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algo, iom) {}
virtual void initialize(const MeteoData::Parameters& in_param);
virtual double getQualityRating();
virtual void calculate(Grid2DObject& grid);
......@@ -204,11 +204,11 @@ class ConstAlgorithm : public InterpolationAlgorithm {
class StandardPressureAlgorithm : public InterpolationAlgorithm {
public:
StandardPressureAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}
: InterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algo, iom) {}
virtual void initialize(const MeteoData::Parameters& in_param);
virtual double getQualityRating();
virtual void calculate(Grid2DObject& grid);
......@@ -229,11 +229,11 @@ class StandardPressureAlgorithm : public InterpolationAlgorithm {
class ConstLapseRateAlgorithm : public InterpolationAlgorithm {
public:
ConstLapseRateAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}
: InterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algo, iom) {}
virtual void initialize(const MeteoData::Parameters& in_param);
virtual double getQualityRating();
virtual void calculate(Grid2DObject& grid);
......@@ -249,11 +249,11 @@ class ConstLapseRateAlgorithm : public InterpolationAlgorithm {
class IDWAlgorithm : public InterpolationAlgorithm {
public:
IDWAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}
: InterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algo, iom) {}
virtual void initialize(const MeteoData::Parameters& in_param);
virtual double getQualityRating();
virtual void calculate(Grid2DObject& grid);
......@@ -276,11 +276,11 @@ class IDWAlgorithm : public InterpolationAlgorithm {
class IDWLapseAlgorithm : public InterpolationAlgorithm {
public:
IDWLapseAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}
: InterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algo, iom) {}
virtual void initialize(const MeteoData::Parameters& in_param);
virtual double getQualityRating();
virtual void calculate(Grid2DObject& grid);
......@@ -298,11 +298,11 @@ class IDWLapseAlgorithm : public InterpolationAlgorithm {
class LocalIDWLapseAlgorithm : public InterpolationAlgorithm {
public:
LocalIDWLapseAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}
: InterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algo, iom) {}
virtual void initialize(const MeteoData::Parameters& in_param);
virtual double getQualityRating();
virtual void calculate(Grid2DObject& grid);
......@@ -321,11 +321,11 @@ class LocalIDWLapseAlgorithm : public InterpolationAlgorithm {
class RHAlgorithm : public InterpolationAlgorithm {
public:
RHAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}
: InterpolationAlgorithm(i_mi, i_date, i_dem, i_vecArgs, i_algo, iom) {}
virtual void initialize(const MeteoData::Parameters& in_param);
virtual double getQualityRating();
virtual void calculate(Grid2DObject& grid);
......@@ -345,11 +345,11 @@ class RHAlgorithm : public InterpolationAlgorithm {
class ILWRAlgorithm : public InterpolationAlgorithm {
public:
ILWRAlgorithm(Meteo2DInterpolator& i_mi,
const Date& date,
const Date& i_date,
const DEMObject& i_dem,
const std::vector<std::string>& i_vecArgs,
const std::string& i_algo, IOManager& iom)
: InterpolationAlgorithm(i_mi, date, i_dem, i_vecArgs, i_algo, iom) {}