2020-01-28 14:32:34 +00:00
|
|
|
# (C) Copyright 2005- ECMWF.
|
2013-03-25 12:04:10 +00:00
|
|
|
#
|
|
|
|
# This software is licensed under the terms of the Apache Licence Version 2.0
|
|
|
|
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
|
|
|
#
|
|
|
|
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
|
|
|
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
|
|
|
#
|
|
|
|
include "parameters_version.def";
|
|
|
|
constant definitionFilesVersion="2.0.0.0" : hidden;
|
2015-07-31 13:47:33 +00:00
|
|
|
constant internalVersion=30 : hidden;
|
|
|
|
meta checkInternalVersion check_internal_version(internalVersion) : hidden;
|
2013-03-25 12:04:10 +00:00
|
|
|
|
2020-10-05 14:32:01 +00:00
|
|
|
# ECC-806: Local concepts precedence order
|
2024-10-31 11:14:59 +00:00
|
|
|
preferLocalConceptsEnvVar = getenv("ECCODES_GRIB_PREFER_LOCAL_CONCEPTS","0") : hidden;
|
|
|
|
transient preferLocalConcepts = preferLocalConceptsEnvVar : hidden;
|
2015-04-01 08:56:45 +00:00
|
|
|
|
2013-07-29 13:58:41 +00:00
|
|
|
constant defaultTypeOfLevel="unknown" : hidden;
|
|
|
|
|
2019-10-11 16:46:38 +00:00
|
|
|
gribDataQualityChecks = getenv("ECCODES_GRIB_DATA_QUALITY_CHECKS","0") : hidden;
|
|
|
|
if (gribDataQualityChecks) {
|
2024-02-18 13:14:07 +00:00
|
|
|
template LIMITS "param_limits.def";
|
2019-10-11 16:46:38 +00:00
|
|
|
}
|
|
|
|
|
2014-06-18 16:14:01 +00:00
|
|
|
# GRIBEX special boustrophedonic mode. See GRIB-472
|
|
|
|
# If the environment variable is not defined, the key will be 0
|
2024-02-18 13:14:07 +00:00
|
|
|
GRIBEX_boustrophedonic = getenv("ECCODES_GRIBEX_BOUSTROPHEDONIC","0") :hidden;
|
2014-06-18 16:14:01 +00:00
|
|
|
|
2013-03-25 12:04:10 +00:00
|
|
|
constant zero=0 : hidden;
|
|
|
|
constant one=1 : hidden;
|
|
|
|
constant hundred=100 : hidden;
|
|
|
|
transient truncateLaplacian=0 : hidden;
|
|
|
|
constant marsDir="mars" : no_copy,hidden;
|
|
|
|
constant present=1 : hidden;
|
2018-05-11 15:05:56 +00:00
|
|
|
# alias epsStatistics=zero : hidden;
|
2013-03-25 12:04:10 +00:00
|
|
|
|
|
|
|
constant defaultParameter = 0 : hidden;
|
|
|
|
constant defaultName="unknown" :hidden;
|
|
|
|
constant defaultShortName="unknown" : hidden;
|
|
|
|
transient truncateDegrees=0 : hidden;
|
|
|
|
transient dummy = 1 :hidden;
|
|
|
|
constant unknown="unknown" : hidden;
|
|
|
|
constant oneConstant=1 : hidden;
|
2016-09-23 13:46:04 +00:00
|
|
|
constant thousand=1000 :hidden;
|
2013-03-25 12:04:10 +00:00
|
|
|
constant oneMillionConstant=1000000 : hidden;
|
|
|
|
constant grib1divider = 1000 : hidden;
|
|
|
|
meta offset offset_file() : hidden;
|
|
|
|
meta count count_file() : hidden;
|
|
|
|
meta countTotal count_total() : hidden;
|
|
|
|
transient file="unknown" : hidden;
|
|
|
|
transient changingPrecision=0 : hidden;
|
|
|
|
transient unitsFactor=1 : hidden;
|
|
|
|
transient unitsBias=0 : hidden;
|
|
|
|
constant globalDomain = "g";
|
|
|
|
transient timeRangeIndicatorFromStepRange=-1 : hidden;
|
2023-10-03 15:20:52 +00:00
|
|
|
# Format specifiers for converting a number (float or int) into a string
|
|
|
|
transient formatForDoubles = "%g" : no_copy,hidden;
|
|
|
|
transient formatForLongs = "%ld" : no_copy,hidden;
|
2013-03-25 12:04:10 +00:00
|
|
|
|
2019-01-14 12:32:20 +00:00
|
|
|
# ECC-868
|
|
|
|
transient produceLargeConstantFields = 0 : hidden;
|
2013-03-25 12:04:10 +00:00
|
|
|
|
|
|
|
meta libraryVersion library_version() : hidden;
|
|
|
|
|
2024-02-18 13:14:07 +00:00
|
|
|
lookup[4] kindOfProduct (0,identifier) : hidden;
|
2013-03-25 12:04:10 +00:00
|
|
|
# grib templates
|
|
|
|
# `ABCD` is a number, each letter being a byte
|
|
|
|
|
|
|
|
if(kindOfProduct == `GRIB`){
|
2024-02-18 13:14:07 +00:00
|
|
|
lookup[1] GRIBEditionNumber (7,editionNumber) : edition_specific;
|
|
|
|
template GRIB "grib[GRIBEditionNumber:l]/boot.def" ;
|
2013-03-25 12:04:10 +00:00
|
|
|
}
|
|
|
|
|
2019-11-14 13:08:14 +00:00
|
|
|
if(kindOfProduct == `BUDG` ){
|
2024-02-18 13:14:07 +00:00
|
|
|
template BUDG "budg/boot.def" ;
|
2013-03-25 12:04:10 +00:00
|
|
|
}
|
|
|
|
|
2019-11-14 13:08:14 +00:00
|
|
|
if(kindOfProduct == `DIAG`){
|
2024-02-18 13:14:07 +00:00
|
|
|
template DIAG "diag/boot.def" ;
|
2019-11-14 13:08:14 +00:00
|
|
|
}
|
|
|
|
|
2013-03-25 12:04:10 +00:00
|
|
|
if(kindOfProduct == `TIDE`){
|
2024-02-18 13:14:07 +00:00
|
|
|
template TIDE "tide/boot.def" ;
|
2013-03-25 12:04:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
if(kindOfProduct == `BUFR`){
|
2024-02-18 13:14:07 +00:00
|
|
|
template BUFR "bufr/boot.def" ;
|
2024-02-19 12:37:48 +00:00
|
|
|
#constant BUFRstr="BUFR"; #ECC-742
|
2018-08-30 12:07:14 +00:00
|
|
|
#alias identifier=BUFRstr;
|
2013-03-25 12:04:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
if(kindOfProduct == `CDFX`){
|
2024-02-18 13:14:07 +00:00
|
|
|
template CDF "cdf/boot.def" ;
|
|
|
|
constant CDFstr="netCDF";
|
2013-03-25 12:04:10 +00:00
|
|
|
alias ls.identifier=CDFstr;
|
|
|
|
}
|
|
|
|
|
|
|
|
if(kindOfProduct == 17632522 ){
|
2024-02-18 13:14:07 +00:00
|
|
|
template GTS "gts/boot.def" ;
|
2013-03-25 12:04:10 +00:00
|
|
|
constant GTSstr="GTS";
|
|
|
|
alias ls.identifier=GTSstr;
|
|
|
|
}
|
2014-06-21 21:28:40 +00:00
|
|
|
|
|
|
|
if(kindOfProduct == `META` ){
|
2024-02-18 13:14:07 +00:00
|
|
|
template METAR "metar/boot.def" ;
|
2014-06-21 21:28:40 +00:00
|
|
|
constant METARstr="METAR";
|
2015-04-10 11:14:23 +00:00
|
|
|
alias identifier=METARstr;
|
2014-06-21 21:28:40 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
if(kindOfProduct == `TAF ` ){
|
2024-02-18 13:14:07 +00:00
|
|
|
template TAF "taf/boot.def" ;
|
2014-06-21 21:28:40 +00:00
|
|
|
constant TAFstr="TAF";
|
|
|
|
alias ls.identifier=TAFstr;
|
|
|
|
}
|
2014-12-16 18:21:56 +00:00
|
|
|
|
|
|
|
if(kindOfProduct == 2303214662){
|
2024-02-18 13:14:07 +00:00
|
|
|
template HDF5 "hdf5/boot.def" ;
|
|
|
|
constant HDF5str="HDF5";
|
2014-12-16 18:21:56 +00:00
|
|
|
alias ls.identifier=HDF5str;
|
|
|
|
}
|
|
|
|
|
|
|
|
if(kindOfProduct == `WRAP`){
|
2024-02-18 13:14:07 +00:00
|
|
|
template WRAP "wrap/boot.def" ;
|
|
|
|
constant WRAPstr="WRAP";
|
2014-12-16 18:21:56 +00:00
|
|
|
alias ls.identifier=WRAPstr;
|
|
|
|
}
|
2024-12-14 13:32:42 +00:00
|
|
|
|
|
|
|
meta isMessageValid message_is_valid(kindOfProduct) : hidden;
|