WSL/SLF GitLab Repository

  1. 03 Nov, 2012 2 commits
    • Thomas Egger's avatar
      Every former plugin now adds a definition. This define can be checked in... · 2161ae7b
      Thomas Egger authored
      Every former plugin now adds a definition. This define can be checked in IOHandler. This is not the best solution, because turning a plugin on or off results in compilation of the whole meteoio.
      2161ae7b
    • Thomas Egger's avatar
      The plugins are no longer separately loadable libraries, but are fully... · 5fadda07
      Thomas Egger authored
      The plugins are no longer separately loadable libraries, but are fully incorporated into libmeteoio. All classes and facilities that provided capabilites for the dynamic loading were deleted (DynamicLibrary). IOPlugin now holds a function pointer to an instantiation function for children of IOInterface. In IOHandler::registerPlugins() all plugins need to be registered with the key name, the class name, a pointer to an instance of the class and a function pointer to the instantiation function for the class (child of IOInterface). IOInterface lost some complexity and thus the constructor of the base class does not have to be called in derived classes anymore.
      
      The CMakeLists.txt files had to be updated to no longer make separate dynamically loadable libraries for each plugin, but to simply add the classes the user selectes to the meteoio library. 
      
      As a side effect the io.ini key GENERAL::PLUGINPATH is no longer necessary.
      5fadda07
  2. 29 Oct, 2012 1 commit
  3. 24 May, 2012 1 commit
  4. 03 May, 2012 2 commits
  5. 07 Apr, 2012 1 commit
  6. 07 Mar, 2012 1 commit
  7. 24 Feb, 2012 1 commit
    • Mathias Bavay's avatar
      Some documentation fixes, new gradients (black to white, white to black and... · 3125e78d
      Mathias Bavay authored
      Some documentation fixes, new gradients (black to white, white to black and blue-white-red) defined and used for new variables in PNGIO (P, ALB and DW). A bug has been fixed for ILWR in GRIBIO as well as a bug when converting geographic coordinates to rotated ones.
      
      New options have been added to the undercatch filter, allowing to specify the temperature thresholds with the CST argument (to make it more similar to GeoTop).
      3125e78d
  8. 25 Jan, 2012 1 commit
    • Mathias Bavay's avatar
      A new plugin appears: GRIBIO, to read GRIB files (see issue 19). This is still... · bf5a2508
      Mathias Bavay authored
      A new plugin appears: GRIBIO, to read GRIB files (see issue 19). This is still extremely preliminary alpha code (enough warnings?!), but it should (hopefully) quickly evolve. A small naming inconsistency has been fixed in template.cc and all plugins now keep a reference to a Config object instead of a full copy (which means that the only full copy of a Config object should now be in IOManager and all other components should have a reference to it). 
      bf5a2508
  9. 17 Jan, 2012 1 commit
    • Mathias Bavay's avatar
      The IOManager was only keeping a reference to the Config object given in its... · 0921ea6c
      Mathias Bavay authored
      The IOManager was only keeping a reference to the Config object given in its constructor. Unfortunately, this means that if the original Config object would go out of scope, the reference would become invalid. Moreover, all internal objects (BufferedIOHandler, Meteo1DInterpolator, etc) were keeping the same reference to this external Config object. However, IOHandler was keeping a copy of the object. This has now been changed: IOManager keeps a copy of the Config object given to its constructor, and all other objects keep a reference to this copy. Therefore, the original Config object can be destroyed without any problem and the internal copy is kept at only one place (within IOManager).
      
      A division by zero (for min=max) has been found and fixed in PGMIO. Moreover, the min and max are written in the metadata (so that the file can be read again and properly rescaled).
      0921ea6c
  10. 16 Jan, 2012 1 commit
    • Mathias Bavay's avatar
      The IOManager can now return a copy of its internal Config object. This is... · 7dedf299
      Mathias Bavay authored
      The IOManager can now return a copy of its internal Config object. This is convenient for times when one wants to create extra outputs but using a different plugin. A missing const has been added to Config and creating an IOHandler by passing it a config file name is not possible anymore (this was deprecated when we introduced the IOManager). Therefore, the IOHandler now only keeps a reference to a Config object. This means that in the full structure held within IOManager, only one copy of Config is kept, the rest being references.
      7dedf299
  11. 22 Dec, 2011 1 commit
    • Mathias Bavay's avatar
      This addresses the 2D part of issue 168: the ability to specify which meteo... · 8ad5d61f
      Mathias Bavay authored
      This addresses the 2D part of issue 168: the ability to specify which meteo parameter and time step to read/write from/to a 2D grid. This should be the prefered reading method in the future, since it leaves to the plugin the task of building the file name, extension, database table, etc This also provides added metadata and more control over the writing process.
      8ad5d61f
  12. 20 Dec, 2011 1 commit
  13. 02 Nov, 2011 1 commit
    • Mathias Bavay's avatar
      A new method, getExtension() has been added to IOUtils in order to return the... · 7c5227cc
      Mathias Bavay authored
      A new method, getExtension() has been added to IOUtils in order to return the extension of a given filename. This is used by the SMETIO and SNIO plugins to automatically add the proper extension to input file names if they don't already have one.
      
      The Median Average Deviation filter has been ported (and validated) to the new filtering infrastructure.
      
      Several error messages have been improved.
      7c5227cc
  14. 31 Oct, 2011 1 commit
  15. 06 Oct, 2011 1 commit
  16. 03 Oct, 2011 1 commit
  17. 02 Oct, 2011 1 commit
    • Thomas Egger's avatar
      Enhancement: It is now possible to duplicate a certain meteo parameter when... · 5870f8e6
      Thomas Egger authored
      Enhancement: It is now possible to duplicate a certain meteo parameter when reading data with MeteoIO. This feature is especially useful when one parameter needs to be filtered in two different ways (e.g. a running average spanning 5 hours and one spanning 48 hours). The syntax to use in your io.ini:
      
      [Input]
      COPY::TA2 = TA
      
      This means that a new meteo parameter called TA2 will be added when reading meteo data from an IO source and that this new parameter will be initialized with the value of MeteoData::TA. Thus there is a copy of TA called TA2. This copy can be now used to set up a specific filter:
      
      [Filters]
      TA2::filter1 = mean_avg
      TA2::arg1 = right 5 3600
      
      5870f8e6
  18. 02 Sep, 2011 1 commit
  19. 24 Aug, 2011 1 commit
    • Mathias Bavay's avatar
      Some Visual C++ warnings have been turned off (namely, that it can not... · 5afb33bb
      Mathias Bavay authored
      Some Visual C++ warnings have been turned off (namely, that it can not generate a copy constructor) in MeteoIO.h, so each application using MeteoIO would benefit from it (and avoid being polluted by unecessary warnings). 
      
      Exception catching is now done by const reference, as recommended in our coding style.
      5afb33bb
  20. 22 Aug, 2011 1 commit
  21. 28 Jul, 2011 1 commit
    • Thomas Egger's avatar
      A new library for dealing with SMET files has been developed. The plugin... · cae1d4db
      Thomas Egger authored
      A new library for dealing with SMET files has been developed. The plugin SMETIO builds on top of this library now. It provides:
      - A SMETReader class, to read SMET files and parse the header info
      - A SMETWriter class to write SMET files and set the header info
      
      The SMET library (libsmet.h and libsmet.cc) are completely independent from the rest of MeteoIO. They have their own exception handling and helper functions, thus they can easily be distributed to other parties wishing to read and write SMET files with C/C++.
      cae1d4db
  22. 10 Jun, 2011 1 commit
    • Mathias Bavay's avatar
      The POPC parallel object version of MeteoIO has been removed: now the library... · f5e21d57
      Mathias Bavay authored
      The POPC parallel object version of MeteoIO has been removed: now the library can be compiled with popc so that all marshalling code is present, but it does NOT create a parallel object of its own. This means that the caller is 100% responsible for deciding what should go into its own parallel object.
      
      Some documentation has been updated as well as better error messages in smetio.
      
      The CMakeLists have been reworked according to some comments from the cmake mailing list.
      f5e21d57
  23. 17 May, 2011 1 commit
  24. 10 May, 2011 1 commit
  25. 04 May, 2011 1 commit
    • Mathias Bavay's avatar
      The POPC version has been heavily transformed. Since we would need IOManager... · 0394dcf3
      Mathias Bavay authored
      The POPC version has been heavily transformed. Since we would need IOManager has a popc object and this is quite hard (we need a backreference in Meteo2DInterpolator), all parclasses have been removed. Instead, the user will have the responsability to packaged IOManager in his own parclass if needed. This makes the code simpler and skips difficult issues...
      
      A new fill method has been added to the Array2D and Array3D templates that does the reverse of subset (ie: reassemble arrays).
      
      Better error messages have been put in SNIO.
      
      A new Date setter that takes a Date object has been created.
      
      This version does NOT correctly compile with the autotools (it leads to a segfault when running code using MeteoIO), but the cmake compiled library works fine.
      0394dcf3
  26. 20 Apr, 2011 1 commit
    • Mathias Bavay's avatar
      A bug has been found in the processing of the variance: we were using a naive... · 9b9ba4c3
      Mathias Bavay authored
      A bug has been found in the processing of the variance: we were using a naive formula that is ill-fitted to signals showing small variations around a large mean. This lead to catastrophic cancellation and negative values... This has been replaced by a (slower) compensated formula (that works in two passes). The standard deviation filter has been fixed. 
      
      The Tukey filter has been brought back into the new infrastructure and should now be usable. However it is not suitable to snow heights: in such a case, the standard deviation is too small (or even zero) and the signal might show some sudden variations (like in the case of a snow fall) that would therefore be falsely rejected. This filter seems much better suited to wind speeds that exhibit some constant background noise, thus a non-null standard deviation.
      
      The rate filter can now take 2 arguments: in such a case, the first one is the minimum rate and the second the maximum rate. This would allow to define a descent rate different from the climb rate.
      
      Several error messages have been improved in A3DIO and general plugin loading.
      
      Finally, two small tools for working with smet files have been contributed, one allowing transparent loading of smet files in xmgrace (smet2agr). And the example io.ini has been fixed (it had been broken and was not working with the examples anymore)
      9b9ba4c3
  27. 22 Mar, 2011 2 commits
  28. 10 Mar, 2011 1 commit
  29. 09 Feb, 2011 1 commit
    • Mathias Bavay's avatar
      The popc version has been updated. It is far from perfect (lots of popc... · 5c50e114
      Mathias Bavay authored
      The popc version has been updated. It is far from perfect (lots of popc specific hacks), it lacks an IOManager parclass, but this is the minimum that we need for Alpine3D...
      
      The ptr_to_function to ptr_to_object cast warning has been turned off (at least for gcc). This does not fix the core issue (that has to be dealt with by the future c++ standard), but at least we don't see it anymore...
      
      
      5c50e114
  30. 08 Feb, 2011 1 commit
    • Mathias Bavay's avatar
      Another commit related to timezones... The Unix date always being in UTC, this... · 3fdc84f5
      Mathias Bavay authored
      Another commit related to timezones... The Unix date always being in UTC, this has been fixed. The resampling was not using dates in a proper way, this has been fixed. The GSN plugin has also been fixed, it now rounds time to the closest minute (in order to be consistent with our advertised "1 minute time resolution"). A rounding method has been implemented for dates.
      
      The timezone parameter in io.ini is now named TIME_ZONE instead of TZ for clarity. 
      
      Undefined dates should now be fully handled (ie: also in arithmetic).
      3fdc84f5
  31. 31 Jan, 2011 1 commit
    • Mathias Bavay's avatar
      The (advanced) configuration of the BufferedIOHandler through io.ini (General... · be423136
      Mathias Bavay authored
      The (advanced) configuration of the BufferedIOHandler through io.ini (General section) has been added. It currently introduces two keywords (BUFF_CHUNKS_SIZE and BUFF_CHUNKS) to drive how much data to read at once and how much data to buffer. Currently, their product is directly used in the read, thus not reading anything by chunks smaller than a full buffer.
      
      Fixed some << outputs, two compilation warnings found on Hera as well as introduced.
      be423136
  32. 28 Jan, 2011 1 commit
  33. 19 Jan, 2011 1 commit
  34. 09 Dec, 2010 1 commit
    • Thomas Egger's avatar
      MeteoData now has an extra public member variable: StationData meta. It will... · 3f940ba5
      Thomas Egger authored
      MeteoData now has an extra public member variable: StationData meta. It will hold the meta information of the measurment instead of dragging along a second vector<StationData> alongside the vector<MeteoData> everywhere.
      
      This has huge implications: the IOInterface has been rewritten, subsequently changes need to be propagated into all plugins and all modules dealing with meta data.
      3f940ba5
  35. 24 Aug, 2010 1 commit
  36. 20 Aug, 2010 1 commit
  37. 19 Aug, 2010 1 commit
    • Mathias Bavay's avatar
      Several 1D statistical methods has been implemented while the existing ones... · 5b5cd758
      Mathias Bavay authored
      Several 1D statistical methods has been implemented while the existing ones have been made nodata safe.
      
      Added a redefinition of the << operator for IOPlugin and IOHandler. This should be convenient for debugging!
      
      Some small optimizations have been brought into the spatial interpolations following some tests with cachegrind. Nothing huge, but small improvements.
      
      
      5b5cd758