2016-07-11 10:37:33 +00:00
/*! \mainpage ecCodes
\section overview Overview
2016-07-13 12:42:06 +00:00
\b %ecCodes is a package developed by ECMWF which provides an application programming interface and a
2016-07-11 10:37:33 +00:00
set of tools for decoding and encoding messages in the following formats:
- WMO FM-92 GRIB edition 1 and edition 2 (<a href="http://www.wmo.int/pages/prog/www/WMOCodes/Guides/GRIB/Introduction_GRIB1-GRIB2.pdf">See WMO document</a>)
- WMO FM-94 BUFR edition 3 and edition 4 (<a href="http://www.wmo.int/pages/prog/www/WMOCodes/Guides/BUFRCREX/Layer1-2-English.pdf">See WMO document</a>)
- WMO GTS <a href="http://www.wmo.int/pages/prog/www/WIS/Publications/WMO_386/WMO_386_Vol_I_en.pdf">abbreviated header</a> (only decoding in this release).
A useful set of <a href="https://software.ecmwf.int/wiki/display/ECC/Command+line+tools">command line tools</a>
2016-07-13 12:42:06 +00:00
provide quick access to the messages. C, Fortran 90 and Python interfaces provide access to the main %ecCodes functionality.
2016-07-11 10:37:33 +00:00
2020-07-17 14:04:05 +00:00
%ecCodes is an evolution of GRIB-API. It is designed to provide the user with a simple set of
2016-07-13 12:42:06 +00:00
functions to access data from several formats with a key/value approach.
2016-07-11 10:37:33 +00:00
2016-07-13 12:42:06 +00:00
For GRIB encoding and decoding, the GRIB-API functionality is provided fully in %ecCodes with the same user interface and behaviour.
Interfaces for C, Fortran 90 and Python are all maintained as in GRIB-API. However, the GRIB-API Fortran 77 interface is no longer available.
2016-07-11 10:37:33 +00:00
2016-07-13 12:42:06 +00:00
In addition, a new set of functions with the prefix "codes_" is provided to operate on all the supported message formats.
These functions have the same interface and behaviour as the "grib_" functions.
2016-07-11 10:37:33 +00:00
2016-07-13 12:42:06 +00:00
A selection of GRIB-API tools has been included in %ecCodes (<a href="https://software.ecmwf.int/wiki/display/ECC/GRIB+tools">ecCodes GRIB tools</a>),
2016-07-12 15:15:03 +00:00
while new tools are available for the BUFR (<a href="https://software.ecmwf.int/wiki/display/ECC/BUFR+tools">ecCodes BUFR tools</a>) and GTS formats.
2016-07-13 12:42:06 +00:00
The new tools have been developed to be as similar as possible to the existing GRIB-API tools maintaining, where possible, the same options and behaviour.
A significant difference compared with GRIB-API tools is that bufr_dump produces output
in <a href="https://en.wikipedia.org/wiki/JSON">JSON</a> format which can be used in many web based applications.
2016-07-11 10:37:33 +00:00
2016-07-13 12:42:06 +00:00
Migration from GRIB-API to %ecCodes is expected to be transparent for current GRIB-API users. The GRIB-API library is fully available in the %ecCodes library.
Users are encouraged to test their GRIB-API applications by linking with the %ecCodes library and to provide feedback of any problems encountered.
2016-09-27 13:36:41 +00:00
For further details see <a href="https://software.ecmwf.int/wiki/display/ECC/GRIB-API+migration">here</a>.
2016-07-11 10:37:33 +00:00
2016-07-13 12:42:06 +00:00
\warning Name clashes prevent a simultaneous use of the GRIB-API and %ecCodes libraries. For this reason, and to simplify the software maintenance,
it is planned to replace GRIB-API by %ecCodes.\n The functions with the "grib_" prefix will, however, be maintained in %ecCodes.
2016-07-11 10:37:33 +00:00
2016-07-12 15:15:03 +00:00
#########
2016-07-11 10:37:33 +00:00
Reference manuals are also provided for the C library (organized in \ref modules), for the
2016-07-13 12:42:06 +00:00
\ref eccodes "Fortran 90 interface" and for the \ref ecCodes "Python interface".
2016-07-11 10:37:33 +00:00
2016-07-12 15:15:03 +00:00
<a href="https://software.ecmwf.int/wiki/display/ECC/ecCodes+installation">Installation instructions</a> are also provided.
2016-07-11 10:37:33 +00:00
*/