MeteoIODoc  2.10.0
mio Namespace Reference

Namespaces

 Color
 
 Cst
 
 FileUtils
 
 IOUtils
 
 Optim
 

Classes

class  Config
 A class that reads a key/value file. These files (typically named *.ini) follow the INI file format standard (see http://en.wikipedia.org/wiki/INI_file) and have the following structure: More...
 
class  ConfigProxy
 
class  ConfigParser
 
class  DataEditing
 
class  EditingBlock
 Base class for DataEditing algorithms. More...
 
class  EditingSwap
 SWAP input editing command. More...
 
class  EditingRename
 RENAME input editing command. More...
 
class  EditingExclude
 EXCLUDE input editing command. More...
 
class  EditingKeep
 KEEP input editing command. More...
 
class  EditingMerge
 MERGE input editing command. More...
 
class  EditingAutoMerge
 AUTOMERGE input editing command. More...
 
class  EditingCopy
 COPY input editing command. More...
 
class  EditingCreate
 CREATE input editing command. More...
 
class  EditingMetadata
 METADATA input editing command. More...
 
class  EditingBlockFactory
 
class  DataGenerator
 A class to generate meteo data from user-selected models or parametrizations. This class sits in between the actual implementation of the various methods and the IOManager in order to offer some high level interface. It basically reads the arguments and creates the objects for the various data generators in its constructor and loop through the parameters and stations when called to fill the data. More...
 
class  Legend
 This creates a legend as pixels in a Grid2DObject. This should be used with/by a plugin that would then convert this Grid2DObject into a true graphic file (png, etc). More...
 
class  Gradient_model
 
class  Gradient
 This converts numeric values into rgb values. The object is initialized with the range that the gradient should cover and the gradient type. Then each numeric value that is given will be converted into rgb values from the selected gradient. Data out of range are converted to either the minimum or the maximum of the gradient. Special pixels should return a=true to indicate transparency (however, pure white is the transparency color, so do not use it in your gradients!). More...
 
class  gr_heat
 
class  gr_blue_pink
 
class  gr_freeze
 
class  gr_bluewhitered
 
class  gr_whitetoblk
 
class  gr_blktowhite
 
class  gr_blue
 
class  gr_bg_isomorphic
 
class  gr_terrain
 
class  gr_slope
 
class  gr_azi
 
class  gr_pastel
 
class  Grid1DInterpolator
 A class to temporally resample grid objects. More...
 
class  GridProcessor
 This class is handled by a GridManager and performs grid filtering and temporal resampling. More...
 
class  GridsManager
 
class  IOException
 The basic exception class adjusted for the needs of SLF software. More...
 
class  NotFoundException
 thrown when a there is an unsuccessful attempt to locate a file/server/... More...
 
class  AccessException
 thrown when a there are insufficient rights to access a file/server/... in a certain way (e.g. read, write) More...
 
class  InvalidNameException
 thrown when a given filename/servername/... is not valid (e.g. "..", "." or empty) More...
 
class  InvalidFormatException
 thrown when parsed data does not reflect an expected format (e.g. premature end of a line, file) More...
 
class  IndexOutOfBoundsException
 thrown when an index is out of bounds More...
 
class  ConversionFailedException
 thrown when an unsuccessful attempt to convert data types/classes is made (e.g. attempt to convert a literal into a number) More...
 
class  InvalidArgumentException
 thrown when encountered an unexpected function's argument (e.g. bad index, bad or missing parameter name, etc.) More...
 
class  UnknownValueException
 thrown when encountered an unexpected value (e.g. unknown name or key) More...
 
class  NoDataException
 thrown when no data is available More...
 
class  TimeOutException
 thrown when an operation does not complete in the foreseen time More...
 
class  IOHandler
 This class is the class to use for raw I/O operations. It is responsible for transparently loading the plugins and it follows the interface defined by the IOInterface class with the addition of a few convenience methods. More...
 
class  LinesRange
 A class to represent and handle ranges of lines. They can be sorted, checked for uniqueness and a line number can be compared to the range (is it before or after?). More...
 
class  IOInterface
 A class representing the IO Layer of the software Alpine3D. For each type of IO (File, DB, Webservice, etc) a derived class is to be created that holds the specific implementation of the appropriate virtual methods. The IOHandler class is a wrapper class that is able to deal with all above implementations of the IOInterface abstract base class. More...
 
class  IOManager
 
class  Meteo1DInterpolator
 A class that can resample MeteoData objects. More...
 
class  Meteo2DInterpolator
 A class to spatially interpolate meteo parameters. For more, see Spatial interpolations. More...
 
class  MeteoProcessor
 A facade class that invokes the processing of the filters and the resampling. More...
 
class  RestrictionsIdx
 Convenience class for processing data with time restriction periods. More...
 
class  Timer
 Time code execution with at least 1 us resolution. The time resolution can be stored up to .1 ns resolution, but is measured to the following accuracy: More...
 
class  UsageTimer
 Process usage timer for Posix This is based on getrusage and thus returns detailed timing information about how the time was spend (userland, system time). More...
 
class  WatchDog
 A software watchdog, killing the current process after the given number of seconds. More...
 
class  TimeSeriesManager
 
class  Array1D
 The template class Array1D is a 1D array (vector) able to hold any type of object as datatype. If the compilation flag NOSAFECHECKS is used, bounds check is turned off (leading to increased performances). More...
 
class  Array2D
 The template class Array2D is a 2D Array (Matrix) able to hold any type of object as datatype. It relies on the Array2DProxy class to provide the [][] operator (slower than the (i,j) call). If the compilation flag NOSAFECHECKS is used, bounds check is turned off (leading to increased performances). More...
 
class  Array2DProxy
 The template class Array2DProxy is a helper class for the template class Array2D with the purpose of adding the [][] operator to Array2D.
 
class  Array3D
 The template class Array3D is a 3D Array (Tensor) able to hold any type of object as datatype. It relies on the Array3DProxy2 class to provide the [][][] operator (slower than the (i,j,k) call). If the compilation flag NOSAFECHECKS is used, bounds check is turned off (leading to increased performances). More...
 
class  Array3DProxy2
 The template class Array3DProxy2 is a helper class for the template class Array3D with the purpose of adding the [][][] operator to Array3D.
 
class  Array3DProxy
 The template class Array3DProxy is a helper class for the template class Array3D with the purpose of adding the [][] operator to Array3D.
 
class  Array4D
 The template class Array4D is a 4D Array (Tensor) able to hold any type of object as datatype. More...
 
class  MeteoBuffer
 A class to buffer meteorological data. This class buffers MeteoData objects. It is currently NOT a proper ring buffer, this should come in a later implementation. More...
 
class  GridBuffer
 A class to buffer gridded data. This class buffers Grid2D objects. It implements a proper ring buffer, thus removing old buffered grids when necessary. More...
 
class  Coords
 A class to handle geographic coordinate systems. This class offers an easy way to transparently convert between various coordinate systems. For any given object, as soon as a latitude/longitude can be computed/read, it will be used as a reference. This means that every subsequent change of projection system or read will be the conversion of this reference lat/lon position (until a new "set" is called). See Coords::setProj for the supported coordinate systems. More...
 
class  CoordsAlgorithms
 A static class to handle geographic algorithms. This class offers methods to handle lat/lon coordinates, to transform lat/lon coordinates, to compute distances on a sphere or to convert between coordinate systems. More...
 
class  Date
 A class to handle timestamps. This class handles conversion between different time display formats (ISO, numeric) as well as different time representation (julian date, modified julian date, etc). It also handles time zones as well as very basic Daylight Saving Time (DST). Since the activation dates of DST are political and not technical, it can not be automatically calculated. Therefore, it has to be provided by the caller: when the dst flag is set, the dst time shift is automatically applied. When the dst flag ceases to be set, the dst time shift is no longer applied. This is very crude, but please keep in mind that using DST for monitoring data is usually a bad idea... Finally, we assume that dates are positive. If this would not be the case, this class has to be recompiled with the proper define. More...
 
class  DateRange
 A class to represent and handle date ranges. They can be sorted, checked for uniqueness and a date can be compared to the range (is it before or after?). More...
 
struct  sort_horizons
 
class  DEMAlgorithms
 A static class to compute various DEM-related parameters (such as shading, view factors, etc) More...
 
class  DEMObject
 A class to represent DEMs and automatically compute some properties. This class stores elevation grids and their georeferencing, expressed as the lower-left coordinates, the cellsize (cells are assumed to be square) and a nodata code for potentially empty cells (The nodata parameter is supposed to be IOUtils::nodata). This class also automatically computes local slope, azimuth, curvature, normals and minimal/maximal for normalization. Various algorithms are available to compute these properties (see mio::DEMObject::slope_type) and it is possible to toggle between automatic refresh or not. Several other DEM related values can be computed, such as the horizon, displacements within the DEM, etc. More...
 
class  Grid2DObject
 A class to represent 2D Grids. Typical application as DEM or Landuse Model. More...
 
class  Grid3DObject
 A class to represent 3D Grids. Typical application: wind field. More...
 
class  Matrix
 This class implements the basic operations on matrices. Elements are access in matrix notation: that is A(1,2) represents the second element of the first line. Index go from 1 to nrows/ncols. More...
 
class  MeteoGrids
 A class to represent the meteorological parameters that could be contained in a grid. This should be very close to MeteoData with a few additions (like the wind u,v,w) More...
 
class  MeteoData
 A class to represent a singular measurement received from one station at a certain time (represented by the Date object) More...
 
class  StationData
 A class to represent meteo stations with attributes like longitude, latitude, etc. More...
 
class  AllSkyLWGenerator
 ILWR all sky parametrization. More...
 
class  AllSkySWGenerator
 ISWR all sky parametrization. More...
 
class  ClearSkyLWGenerator
 ILWR clear sky parametrization. More...
 
class  ClearSkySWGenerator
 ISWR clear sky parametrization. More...
 
class  ConstGenerator
 Constant value generator. More...
 
class  ESOLIPGenerator
 Generate precipitation from changes in snow height. More...
 
class  GeneratorAlgorithm
 Interface class for the generator models. More...
 
class  GeneratorAlgorithmFactory
 
class  HumidityGenerator
 (Relative/Specifc) Humidity or Dew Point temperature generator. More...
 
class  IswrAlbedoGenerator
 Incoming or reflected short wave generator. More...
 
class  MeteoIndex
 Mteorological indices data generator. More...
 
class  PrecSplitting
 Generate precipitation phase or splitting according to the selected method. More...
 
class  RadiationComponents
 Compute the global radiation (ISWR) from the direct and diffuse components. More...
 
class  SinGenerator
 Sinusoid generator. More...
 
class  StandardPressureGenerator
 Standard atmospheric pressure generator. More...
 
class  TauCLDGenerator
 Atmospheric transmissivity generator. More...
 
class  TsGenerator
 Surface temperature generator. More...
 
class  WindComponents
 Compute VW and/or DW from the U, V wind components. More...
 
class  A3DIO
 
class  ALPUG
 This plugin reads data as they come out of ALPUG stations, in ASCII. More...
 
class  ARCIO
 This class enables the access to 2D grids stored in ESRI ASCII (ARCGIS) format. More...
 
class  ArgosStation
 
class  ArgosIO
 This plugin deals with data that has been transmitted through the ARGOS satellites. In order to reduce data transfers, no headers are provided with the data and therefore all the metadata will have to be provided to the plugin. More...
 
class  ARPSIO
 This class enables the access to 2D grids stored in ARPS format. More...
 
class  CosmoXMLIO
 Reading of FieldExtra XML meteorological data. This is the plugin for reading the XML data generated by FieldExtra, the post-processor of the MeteoSwiss COSMO meteorological model. More...
 
class  CsvIO
 Reads meteo data from a comma separated file. More...
 
class  CsvDateTime
 class to contain date and time parsing information More...
 
class  CsvParameters
 
class  DBO
 This class enables the access to the DBO RESTful web service. More...
 
class  GeotopIO
 This class enables the access meteo data in legacy Geotop format. More...
 
class  GoesStation
 
class  GoesIO
 This plugin deals with data that has been transmitted through the GOES satellites (see also https://www.goes-r.gov/resources/docs.html and https://www.rtl-sdr.com/tag/goes/). In order to reduce data transfers, no headers are provided with the data and therefore all the metadata will have to be provided to the plugin. More...
 
class  GrassIO
 This class enables the access to 2D grids stored in GRASS ASCII (e.g. JGrass) format. More...
 
class  GRIBIO
 This plugin reads GRIB 1 or 2 data files. More...
 
class  AnetzData
 
class  ImisIO
 The class with-in the data from the database are treated. The MeteoData and the StationData will be set in. This class also herited to IOInterface class which is abstract. More...
 
class  JsonWrapper
 This is a wrapper class around picoJson and Curl. More...
 
class  ACDD
 This class contains and handles NetCDF Attribute Conventions Dataset Discovery attributes (see ACDD). More...
 
class  MeteoBlue
 This class enables the access to the MeteoBlue RESTful web service. More...
 
class  MYSQLIO
 
class  ncFiles
 
class  NetCDFIO
 This plug-in allows reading and writing of NetCDF files for gridded data. More...
 
class  OshdIO
 This plugin reads Matlab binary files, relying on the MatIO library. More...
 
class  PGMIO
 This class writes 2D grids as Portable Grey Map file format. More...
 
class  PmodIO
 This class reads radiation data in raw file format from PMOD/WRC Institute. More...
 
class  PNGIO
 This plugin write 2D grids as PNG images. More...
 
class  PSQLIO
 This plugin connects to a generic PostgreSQL server to retrieve its meteorological data. More...
 
class  SASEIO
 This is the plugin required to get meteorological data from the SASE database. More...
 
class  SMETIO
 Reads meteo data in the SMET ASCII or binary format. More...
 
class  SNIO
 This class enables the access to meteo data stored in SNOWPACK format. More...
 
class  Synthesizer
 Generator to produce synthetic data for the SynthIO plugin. More...
 
class  SynthFactory
 
class  SynthIO
 This plugin generate synthetic data. More...
 
class  CST_Synth
 
class  STEP_Synth
 
class  RECT_Synth
 
class  STDPRESS_Synth
 
class  ZRXPIO
 Outputs meteo data in a text format readable by a WISKI database. More...
 
class  Atmosphere
 A class to calculate the atmosphere's parameters. More...
 
class  SunObject
 A class to calculate Solar radiation characteristics This is largely based on M. Iqbal, "An introduction to solar radiation", 1983, Academic Press, ISBN: 0-12-373750-8. The Sun's position is provided by the SunTrajectory class (currently the only implemented algorithm is Meeus). All units are SI. See http://www.meteoexploration.com/products/solarcalc.php for a validation calculator. More...
 
class  SunTrajectory
 A class to calculate the Sun's position This class is purely virtual. More...
 
class  SunMeeus
 Calculate the Sun's position based on the Meeus algorithm. See J. Meeus, "Astronomical Algorithms", 1998, 2nd ed, Willmann-Bell, Inc., Richmond, VA, USA, ISBN 0-943396-61-1. A useful reference is also NOAA's spreadsheet at http://www.esrl.noaa.gov/gmd/grad/solcalc/calcdetails.html or http://energyworksus.com/solar_installation_position.html for comparing positional data. The technical report I. Reda, A. Andreas, "Solar Position Algorithm for Solar Radiation Applications", 2008, NREL/TP-560-34302 also contains an alternative algorithm and very detailed validation data sets. More...
 
class  FilterDeGrass
 This filter is used to distinguish if snow (HS) is on the ground or not. More...
 
class  FilterDespikingPS
 Despiking filter using phase space. More...
 
class  FilterKalman
 A statistical filter for state likelihood estimation: the Kalman filter. More...
 
class  FilterMAD
 Median Absolute Deviation. More...
 
class  FilterMaths
 A filter that evaluates formulas dependent on conditions. More...
 
class  FilterMax
 Max range filter. More...
 
class  FilterMin
 Min range filter. More...
 
class  FilterMinMax
 Min/Max range filter. More...
 
class  FilterMinMaxConditional
 Applies a min/max filter if a second parameter matches a comparison. More...
 
class  FilterNoChange
 This filter removes periods showing insufficient changes. More...
 
class  FilterParticle
 A Monte Carlo sampling method: the particle filter. More...
 
class  FilterPotentialSW
 Checks for physically realistic incoming short wave radiation (ISWR) values. More...
 
class  FilterRate
 Rate of change filter. More...
 
class  FilterStdDev
 Standard deviation filter. More...
 
class  FilterSuppr
 Suppression filter. More...
 
class  FilterTimeconsistency
 Check that the time evolution of a given parameter is consistent with its past evolution. More...
 
class  FilterTukey
 Tukey 53H method. More...
 
class  FilterUnheatedPSUM
 Filters out snow melting in an unheated rain gauge. More...
 
class  ProcAdd
 Add an offset to the values. More...
 
class  ProcAggregate
 Data aggregation. More...
 
class  ProcDeAccumulate
 Convert accumulated values back to instantaneous values. More...
 
class  ProcessingProperties
 
class  ProcessingBlock
 The base class for all filters that provides the interface and a few helper methods. More...
 
class  BlockFactory
 
class  ProcessingStack
 This builds and runs through a filter stack for filtering a given parameter. More...
 
class  ProcExpSmoothing
 Exponential smoothing. More...
 
class  ProcIIR
 Infinite Impulse Response (IIR) filter. More...
 
class  ProcMult
 Multiply values. More...
 
class  ProcPSUMDistribute
 Distributes precipitation on the preceeding timesteps in a physically plausible way. More...
 
class  ProcQuantileMapping
 Quantile Mapping correction. More...
 
class  ProcReducePressure
 Convert local pressure to sea level pressure. More...
 
class  ProcRHWaterToIce
 Correct relative humidity over water to over ice in case temperature is below freezing. More...
 
class  ProcShade
 Apply a shading mask to the Incoming or Reflected Short Wave Radiation. More...
 
class  ProcShift
 Time shifting filter for the selected meteo parameter. More...
 
class  ProcTransformWindVector
 This filter reprojects wind direction, and/or wind speed components, between PROJ supported coordinate systems. More...
 
class  ProcUndercatch_Forland
 Correct precipitation for undercatch in winter conditions. More...
 
class  ProcUndercatch_Hamon
 Correct precipitation for undercatch in winter conditions. More...
 
class  ProcUndercatch_WMO
 Correct precipitation for undercatch in winter conditions. More...
 
class  ProcUnventilatedT
 Filters and corrects temperatures from unventilated sensor. More...
 
class  ProcWMASmoothing
 Weighted moving average smoothing. More...
 
class  TimeProcStack
 Since the time filters are quite specific to TIME (and need to be applied before), they have their own ProcessingStack. More...
 
class  TimeSuppr
 Timesteps suppression filter. More...
 
class  TimeShift
 Time corrections. More...
 
class  TimeSort
 Sort out of order timesteps. More...
 
class  TimeLoop
 Loops over a specific time period. More...
 
class  WindowedFilter
 
class  Accumulate
 Accumulation over a user given period. More...
 
class  DailyAverage
 Generate daily variations around a single daily average. More...
 
class  Daily_solar
 Generate solar radiation out of daily sums. More...
 
class  LinearResampling
 Linear data resampling. More...
 
class  NearestNeighbour
 Nearest Neighbour data resampling. More...
 
class  NoResampling
 No resampling: do not resample parameter but keep original sampling rate. More...
 
class  ResamplingAlgorithms
 Interface class for the temporal resampling algorithms. More...
 
class  ResamplingAlgorithmsFactory
 
class  Solar
 Interpolate solar radiation. More...
 
class  ALS_Interpolation
 Scale and distribute the precipitation according to Airborn Laser Scans (ALS) grids. More...
 
class  AvgAlgorithm
 Average filling interpolation algorithm. More...
 
class  AvgLapseRateAlgorithm
 Average filling with elevation lapse rate interpolation algorithm. More...
 
class  ConstAlgorithm
 Constant filling interpolation algorithm. More...
 
class  IDWAlgorithm
 Inverse Distance Weighting interpolation algorithm. More...
 
class  IDWLapseAlgorithm
 Inverse Distance Weighting interpolation algorithm with elevation detrending/reprojection. More...
 
class  LocalIDWLapseAlgorithm
 Inverse Distance Weighting interpolation algorithm with elevation detrending/reprojection. More...
 
class  IDWSlopesAlgorithm
 Inverse Distance Weighting interpolation with splitted N/E/S/W slopes and flats. More...
 
class  ILWREpsAlgorithm
 Incoming Long Wave Radiation interpolation algorithm. More...
 
class  Trend
 
class  InterpolationAlgorithm
 A class to perform 2D spatial interpolations. For more, see Spatial interpolations. More...
 
class  AlgorithmFactory
 
class  ListonWindAlgorithm
 Curvature/slope influenced wind interpolation algorithm. More...
 
class  NearestNeighbourAlgorithm
 Fill each pixel with the measured data of its closests station. More...
 
class  NoneAlgorithm
 Returns a nodata filled grid. More...
 
class  OrdinaryKrigingAlgorithm
 Ordinary kriging. More...
 
class  LapseOrdinaryKrigingAlgorithm
 Ordinary kriging with detrending. More...
 
class  PPHASEInterpolation
 Precipitation phase splitting generation. More...
 
class  RHListonAlgorithm
 Relative humidity interpolation algorithm. More...
 
class  RyanAlgorithm
 DEM-based wind direction interpolation algorithm. More...
 
class  SnowlineAlgorithm
 Assimilation of snowline elevation information into snow maps. More...
 
class  SnowPSUMInterpolation
 Precipitation distribution according to the local slope and curvature. More...
 
class  StandardPressureAlgorithm
 Standard atmospheric pressure interpolation algorithm. More...
 
class  SWRadInterpolation
 Solar radiation interpolation with optional terrain shading. More...
 
class  USERInterpolation
 Reads user provided gridded data on the disk. More...
 
class  WinstralAlgorithm
 DEM-based wind-exposure interpolation algorithm. More...
 
class  WinstralListonAlgorithm
 DEM-based wind-exposure interpolation algorithm, for a spatially explicit varying DW field. More...
 
class  GridLinearResampling
 Point-wise linear interpolation between grids. More...
 
class  GridResamplingAlgorithm
 Interface class for grid resampling algorithms. More...
 
class  GridResamplingAlgorithmsFactory
 Object factory for temporal grid resampling algorithms. More...
 
class  GridTimeseriesResampling
 This grid resampling class builds time series at all grid positions and sends them to meteo 1d resampling algorithms to perform the interpolations. More...
 
class  Zero
 
class  SimpleLinear
 
class  NoisyLinear
 
class  SphericVario
 
class  LinVario
 
class  ExpVario
 
class  RatQuadVario
 
class  LinearLS
 
class  Quadratic
 
class  PolynomialRegression
 A class to perform 1D polynomial regression. More...
 
class  Fit1D
 A class to perform 1D regressions. More...
 
class  FitLinClosedForm
 A class to perform multiple linear regressions relying on the closed form solution. More...
 
class  FitModel
 
class  FitLeastSquare
 A class to perform non-linear least square fitting. It works on a time serie and uses matrix arithmetic to perform an arbitrary fit (see http://mathworld.wolfram.com/NonlinearLeastSquaresFitting.html). More...
 
class  Interpol1D
 A class to perform basic 1D statistics. Each method is static. More...
 
class  Interpol2D
 A class to perform 2D spatial interpolations. Each parameter to be interpolated declares which interpolation method to use. Then the class computes the interpolation for each 2D grid point, combining the inputs provided by the available data sources. More...
 
class  LibResampling2D
 Spatial resampling algorithms. More...
 
class  RngCore
 
class  RandomNumberGenerator
 
class  RngXor
 
class  RngPcg
 
class  RngMtw
 
class  RngFactory
 

Typedefs

typedef Date Duration
 
typedef std::vector< MeteoDataMETEO_SET
 
typedef std::vector< StationDataSTATIONS_SET
 

Functions

std::ostream & operator<< (std::ostream &os, const Config &cfg)
 
std::istream & operator>> (std::istream &is, Config &cfg)
 
static bool IsUndef (const MeteoData &md)
 
std::string getLibVersion (const bool &short_version=false)
 Return the library version. More...
 
static void signal_handler (int signal_num)
 
static void signals_catching (const int &SIG)
 
template<class P >
std::ostream & operator<< (std::ostream &os, const Array1D< P > &array)
 
template<class P >
std::istream & operator>> (std::istream &is, Array1D< P > &array)
 
template<class P >
std::ostream & operator<< (std::ostream &os, const Array2D< P > &array)
 
template<class P >
std::istream & operator>> (std::istream &is, Array2D< P > &array)
 
template<class P >
std::ostream & operator<< (std::ostream &os, const Array3D< P > &array)
 
template<class P >
std::istream & operator>> (std::istream &is, Array3D< P > &array)
 
template<class P >
std::ostream & operator<< (std::ostream &os, const Array4D< P > &array)
 
template<class P >
std::istream & operator>> (std::istream &is, Array4D< P > &array)
 
std::ostream & operator<< (std::ostream &os, const Coords &coord)
 
std::istream & operator>> (std::istream &is, Coords &coord)
 
std::ostream & operator<< (std::ostream &os, const Date &date)
 
std::istream & operator>> (std::istream &is, Date &date)
 
std::ostream & operator<< (std::ostream &os, const DEMObject &dem)
 
std::istream & operator>> (std::istream &is, DEMObject &dem)
 
std::ostream & operator<< (std::ostream &os, const Grid2DObject &grid)
 
std::istream & operator>> (std::istream &is, Grid2DObject &grid)
 
std::ostream & operator<< (std::ostream &os, const Grid3DObject &grid)
 
std::istream & operator>> (std::istream &is, Grid3DObject &grid)
 
std::ostream & operator<< (std::ostream &os, const MeteoData &data)
 
std::istream & operator>> (std::istream &is, MeteoData &data)
 
std::ostream & operator<< (std::ostream &os, const StationData &station)
 
std::istream & operator>> (std::istream &is, StationData &station)
 
bool sort_dateKeys (const std::pair< size_t, size_t > &left, const std::pair< size_t, size_t > &right)
 
bool parseTsPoint (const picojson::value &v, Date &datum, double &value)
 
double transformTime (const double &julian, const double &offset, const double &scale, const double &precision)
 
static bool IsUndef (const MeteoData &md)
 

Variables

static const char * defaultSection = "GENERAL"
 
static const char NUM [] = "0123456789"
 
static const double dbo_tz = 0.
 
static const size_t dataStartPos = 37
 
const std::string WWCS_metaDataQuery = "SELECT stationName, latitude, longitude, altitude, slope, azimuth FROM sites WHERE StationID=?"
 
const std::vector< SQL_FIELDWWCS_metaDataFields { SQL_FIELD("STATNAME", MYSQL_TYPE_STRING), SQL_FIELD("LAT", MYSQL_TYPE_DOUBLE), SQL_FIELD("LON", MYSQL_TYPE_DOUBLE), SQL_FIELD("ALT", MYSQL_TYPE_DOUBLE), SQL_FIELD("SLOPE", MYSQL_TYPE_DOUBLE), SQL_FIELD("AZI", MYSQL_TYPE_DOUBLE) }
 
const std::string WWCS_meteoDataQuery = "SELECT timestamp, ta, rh, p, logger_ta, logger_rh FROM v_meteoseries WHERE stationID=? and timestamp>=? AND timestamp<=? ORDER BY timestamp ASC"
 
const std::vector< SQL_FIELDWWCS_meteoDataFields { SQL_FIELD("DATETIME", MYSQL_TYPE_DATETIME), SQL_FIELD("TA", MYSQL_TYPE_DOUBLE, SQL_FIELD::C_TO_K), SQL_FIELD("RH", MYSQL_TYPE_DOUBLE, SQL_FIELD::NORMALIZE_PC), SQL_FIELD("P", MYSQL_TYPE_DOUBLE, SQL_FIELD::HPA_TO_PA), SQL_FIELD("LOGGER_TA", MYSQL_TYPE_DOUBLE, SQL_FIELD::C_TO_K), SQL_FIELD("LOGGER_RH", MYSQL_TYPE_DOUBLE, SQL_FIELD::NORMALIZE_PC) }
 
std::string metaDataQuery
 
std::string meteoDataQuery
 
std::vector< SQL_FIELDmetaDataFields
 
std::vector< SQL_FIELDmeteoDataFields
 

Typedef Documentation

◆ Duration

◆ METEO_SET

typedef std::vector<MeteoData> mio::METEO_SET

◆ STATIONS_SET

typedef std::vector<StationData> mio::STATIONS_SET

Function Documentation

◆ getLibVersion()

std::string mio::getLibVersion ( const bool &  short_version = false)

Return the library version.

Parameters
[in]short_versiononly return the version number (ie skip the compilation date)
Returns
library version string

◆ IsUndef() [1/2]

static bool mio::IsUndef ( const MeteoData md)
inlinestatic

◆ IsUndef() [2/2]

static bool mio::IsUndef ( const MeteoData md)
inlinestatic

◆ operator<<() [1/12]

template<class P >
std::ostream& mio::operator<< ( std::ostream &  os,
const Array1D< P > &  array 
)

◆ operator<<() [2/12]

template<class P >
std::ostream& mio::operator<< ( std::ostream &  os,
const Array2D< P > &  array 
)

◆ operator<<() [3/12]

template<class P >
std::ostream& mio::operator<< ( std::ostream &  os,
const Array3D< P > &  array 
)

◆ operator<<() [4/12]

template<class P >
std::ostream& mio::operator<< ( std::ostream &  os,
const Array4D< P > &  array 
)

◆ operator<<() [5/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const Config cfg 
)

◆ operator<<() [6/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const Coords coord 
)

◆ operator<<() [7/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const Date date 
)

◆ operator<<() [8/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const DEMObject dem 
)

◆ operator<<() [9/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const Grid2DObject grid 
)

◆ operator<<() [10/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const Grid3DObject grid 
)

◆ operator<<() [11/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const MeteoData data 
)

◆ operator<<() [12/12]

std::ostream& mio::operator<< ( std::ostream &  os,
const StationData station 
)

◆ operator>>() [1/12]

template<class P >
std::istream& mio::operator>> ( std::istream &  is,
Array1D< P > &  array 
)

◆ operator>>() [2/12]

template<class P >
std::istream& mio::operator>> ( std::istream &  is,
Array2D< P > &  array 
)

◆ operator>>() [3/12]

template<class P >
std::istream& mio::operator>> ( std::istream &  is,
Array3D< P > &  array 
)

◆ operator>>() [4/12]

template<class P >
std::istream& mio::operator>> ( std::istream &  is,
Array4D< P > &  array 
)

◆ operator>>() [5/12]

std::istream& mio::operator>> ( std::istream &  is,
Config cfg 
)

◆ operator>>() [6/12]

std::istream& mio::operator>> ( std::istream &  is,
Coords coord 
)

◆ operator>>() [7/12]

std::istream& mio::operator>> ( std::istream &  is,
Date date 
)

◆ operator>>() [8/12]

std::istream& mio::operator>> ( std::istream &  is,
DEMObject dem 
)

◆ operator>>() [9/12]

std::istream& mio::operator>> ( std::istream &  is,
Grid2DObject grid 
)

◆ operator>>() [10/12]

std::istream& mio::operator>> ( std::istream &  is,
Grid3DObject grid 
)

◆ operator>>() [11/12]

std::istream& mio::operator>> ( std::istream &  is,
MeteoData data 
)

◆ operator>>() [12/12]

std::istream& mio::operator>> ( std::istream &  is,
StationData station 
)

◆ parseTsPoint()

bool mio::parseTsPoint ( const picojson::value &  v,
Date datum,
double &  value 
)
inline

◆ signal_handler()

static void mio::signal_handler ( int  signal_num)
static

◆ signals_catching()

static void mio::signals_catching ( const int &  SIG)
static

◆ sort_dateKeys()

bool mio::sort_dateKeys ( const std::pair< size_t, size_t > &  left,
const std::pair< size_t, size_t > &  right 
)
inline

◆ transformTime()

double mio::transformTime ( const double &  julian,
const double &  offset,
const double &  scale,
const double &  precision 
)
inline

Variable Documentation

◆ dataStartPos

const size_t mio::dataStartPos = 37
static

◆ dbo_tz

const double mio::dbo_tz = 0.
static

◆ defaultSection

const char* mio::defaultSection = "GENERAL"
static

◆ metaDataFields

std::vector<SQL_FIELD> mio::metaDataFields

◆ metaDataQuery

std::string mio::metaDataQuery

◆ meteoDataFields

std::vector<SQL_FIELD> mio::meteoDataFields

◆ meteoDataQuery

std::string mio::meteoDataQuery

◆ NUM

const char mio::NUM[] = "0123456789"
static

◆ WWCS_metaDataFields

const std::vector<SQL_FIELD> mio::WWCS_metaDataFields { SQL_FIELD("STATNAME", MYSQL_TYPE_STRING), SQL_FIELD("LAT", MYSQL_TYPE_DOUBLE), SQL_FIELD("LON", MYSQL_TYPE_DOUBLE), SQL_FIELD("ALT", MYSQL_TYPE_DOUBLE), SQL_FIELD("SLOPE", MYSQL_TYPE_DOUBLE), SQL_FIELD("AZI", MYSQL_TYPE_DOUBLE) }

◆ WWCS_metaDataQuery

const std::string mio::WWCS_metaDataQuery = "SELECT stationName, latitude, longitude, altitude, slope, azimuth FROM sites WHERE StationID=?"

◆ WWCS_meteoDataFields

const std::vector<SQL_FIELD> mio::WWCS_meteoDataFields { SQL_FIELD("DATETIME", MYSQL_TYPE_DATETIME), SQL_FIELD("TA", MYSQL_TYPE_DOUBLE, SQL_FIELD::C_TO_K), SQL_FIELD("RH", MYSQL_TYPE_DOUBLE, SQL_FIELD::NORMALIZE_PC), SQL_FIELD("P", MYSQL_TYPE_DOUBLE, SQL_FIELD::HPA_TO_PA), SQL_FIELD("LOGGER_TA", MYSQL_TYPE_DOUBLE, SQL_FIELD::C_TO_K), SQL_FIELD("LOGGER_RH", MYSQL_TYPE_DOUBLE, SQL_FIELD::NORMALIZE_PC) }

◆ WWCS_meteoDataQuery

const std::string mio::WWCS_meteoDataQuery = "SELECT timestamp, ta, rh, p, logger_ta, logger_rh FROM v_meteoseries WHERE stationID=? and timestamp>=? AND timestamp<=? ORDER BY timestamp ASC"