/*! \page grib_examples Grib API examples

The main features of the grib_api are explained here through some simple examples
that can be taken as a starting point to write more complex programs.\n

\section python Python
- \ref index.py "index.py" How access a grib file through and index. 
- \ref grib_get_keys.py "grib_get_keys.py" How to get values through the key names. 
- \ref grib_print_data.py "grib_print_data.py" How to print all the data contained in a grib file.
- \ref set.py "set.py" How to set values through the key names.
- \ref grib_nearest.py "grib_nearest.py" How to find the nearest grid points.
- \ref grib_set_missing.py "grib_set_missing.py" How to set a missing value in the header.
- \ref count_messages.py "count_messages.py" How to count the messages in a file and loop through them. 
- \ref grib_samples.py "grib_samples.py" How to create a new message from a sample.
- \ref grib_clone.py "grib_clone.py" How to clone a message.
- \ref grib_iterator.py "grib_iterator.py" How to use an iterator on latitude, longitude, values.
- \ref grib_keys_iterator.py "grib_keys_iterator.py" How to get the names of all the keys.
- \ref grib_multi_write.py "grib_multi_write.py" How to encode a multi grib message.
- \ref grib_set_pv.py "grib_set_pv.py" How to encode the pv coefficients.

\section fortran90 Fortran 90
- \ref grib_index.f90 "grib_index.f90" how to access a grib file through an index.
- \ref grib_get_keys.f90 "grib_get_keys.f90" how to get values through the key names.
- \ref count_messages.f90 "count_messages.f90" count the messages in a file and loop through them.
- \ref get_pl.f90 "get_pl.f90" how to get the list of number of points for each parallel in reduced grids.
- \ref get_pv.f90 "get_pv.f90" how to get the list of levels.
- \ref grib_get_data.f90 "grib_get_data.f90" how to get latitude/longitude/values.
- \ref set.f90 "set.f90" how to set values through the key names.
- \ref grib_set_bitmap.f90 "grib_set_bitmap.f90" how to set and use a bitmap.
- \ref grib_set_missing.f90 "grib_set_missing.f90" how to set a missing value in the header.
- \ref grib_set_pv.f90 "grib_set_pv.f90" how to set the list of levels.
- \ref grib_samples.f90 "grib_samples.f90" how to create a new message from a template.
- \ref grib_clone.f90 "grib_clone.f90" how to clone a message.
- \ref grib_copy_message.f90 "grib_copy_message.f90" how to copy a message in memory and create a new message.
- \ref grib_keys_iterator.f90 "grib_keys_iterator.f90" how to get the names of all the keys
defined in a message and how to iterate through them.
- \ref grib_precision.f90 "grib_precision.f90" how to control precision when coding a grib field.
- \ref grib_multi_write.f90 "grib_multi_write.f90" how to encode a grib message containing many fields.
- \ref grib_multi.f90 "grib_multi.f90" how to decode a grib message containing many fields.
- \ref grib_print_data.f90 "grib_print_data.f90" how to print all the data contained in a grib file.
- \ref grib_nearest.f90 "grib_nearest.f90" how to find the nearest grid points.

\section C 
- \ref grib_get_keys.c "grib_get_keys.c"  is an example showing how to get values through the key names.
- \ref set.c "set.c" is an example illustrating how to set values through the key names.
- \ref grib_keys_iterator.c "grib_keys_iterator.c" explains how to get the names of all the keys 
defined in a message and how to iterate through them.
- \ref grib_iterator.c "grib_iterator.c" shows how to use an iterator on latitude, longitude, values.
- \ref grib_precision.c "grib_precision.c" illustrates how to control precision when coding a grib field.
- \ref grib_multi.c "grib_multi.c" is an example describing how to decode a grib message containing many fields.
- \ref grib_print_data.c "grib_print_data.c" is an example on how to print all the data contained in a grib file.
- \ref grib_nearest.c "grib_nearest.c" is an example on how to find the nearest grid points.
- \ref grib_multi_write.c "grib_multi_write.c" how to encode a grib message containing many fields.

\section fortran77 Fortran 77
- \ref get_fortran.F "get_fortran.F" is an example showing how to get values through the key names.
- \ref set_fortran.F "set_fortran.F" is an example illustrating how to set values through the key names.
- \ref keys_iterator_fortran.F "keys_iterator_fortran.F" explains how to get the names of all the keys 
defined in a message and how to iterate through them.
- \ref iterator_fortran.F "iterator_fortran.F" shows how to use an iterator on latitude, longitude, values.
- \ref precision_fortran.F "precision_fortran.F" illustrates how to control precision when coding a grib field.
- \ref multi_fortran.F "multi_fortran.F" is an example describing how to decode a grib message containing many fields.
- \ref print_data_fortran.F "print_data_fortran.F" is an example on how to print all the data contained in a grib file.


*/
/*! \page examples Grib API examples


