1# Copyright 2005-2018 ECMWF.
2#
3# This software is licensed under the terms of the Apache Licence Version 2.0
4# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
5#
6# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
7# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
8#
9
10
11# START 1/local.98.192 ----------------------------------------------------------------------
12# LOCAL 98 192
13#
14# localDefinitionTemplate_192
15# ---------------------------
16#
17# Description            Octet    Code    Ksec1    Count
18# -----------            -----    ----    -----    -----
19#localDefinitionNumber           41  I1  37  -
20#class                           42  I1  38  -
21#type                            43  I1  39  -
22#stream                          44  I2  40  -
23#experimentVersionNumber         46  A4  41  -
24#zeroForCompatibilityWithMars    50  PAD 42  2
25#numberOfLocalDefinitions        52  I1  44  -
26#listOfLocalDefinitions          -   LIST    -   numberOfLocalDefinitions
27#localDefinitionLength           -   I2  -   -
28#localDefinition                 -   LOCAL   -   -
29#endListOfLocalDefinitions       -   ENDLIST -   listOfLocalDefinitions
30#
31
32# The mars labeling must be inline
33# template mars_labeling "grib1/mars_labeling.def";
34
35constant GRIBEXSection1Problem = 0 ;
36
37codetable[1]   thisMarsClass   "mars/class.table" = "od" : dump,lowercase;
38codetable[1]   thisMarsType   "mars/type.table" = "an" : dump,string_type,lowercase;
39codetable[2]   thisMarsStream "mars/stream.table" = "oper" : dump,lowercase ;
40ksec1expver[4] thisExperimentVersionNumber = "0001" : dump;
41
42alias ls.dataType = thisMarsType;
43alias mars.class  = thisMarsClass;
44alias mars.type   = thisMarsType;
45alias mars.stream = thisMarsStream;
46alias mars.expver = thisExperimentVersionNumber;
47
48# zeroForCompatibilityWithMars
49pad padding_loc192_1(2);
50
51unsigned[1] numberOfLocalDefinitions = 2  : dump;
52
53if (numberOfLocalDefinitions == 2 ) {
54	unsigned[2] subLocalDefinitionLength1  = 7 : dump;
55	unsigned[1] subLocalDefinitionNumber1 = 1  : dump;
56	codetable[1]   marsClass1   "mars/class.table" = "od" : dump,lowercase;
57	codetable[1]   marsType1   "mars/type.table" = "an" : dump,string_type,lowercase;
58	codetable[2]   marsStream1 "mars/stream.table" = "oper" : dump,lowercase ;
59	ksec1expver[4] experimentVersionNumber1 = "0001" : dump;
60	template  subDefinitions1  "grib1/local_no_mars.98.[subLocalDefinitionNumber1].def";
61	unsigned[2] subLocalDefinitionLength2  = 9 : dump;
62	unsigned[1] subLocalDefinitionNumber2 = 24  : dump;
63	codetable[1]   marsClass2   "mars/class.table" = "od" : dump,lowercase;
64	codetable[1]   marsType2   "mars/type.table" = "an" : dump,string_type,lowercase;
65	codetable[2]   marsStream2 "mars/stream.table" = "oper" : dump,lowercase ;
66	ksec1expver[4] experimentVersionNumber2 = "0001" : dump;
67	template  subDefinitions2  "grib1/local_no_mars.98.[subLocalDefinitionNumber2].def";
68}
69
70
71