2015-01-05 15:45:46 +00:00
|
|
|
# Copyright 2005-2015 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.
|
2014-06-21 21:28:40 +00:00
|
|
|
#
|
2013-03-25 12:04:10 +00:00
|
|
|
# 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.
|
|
|
|
#
|
|
|
|
|
2014-06-21 21:28:40 +00:00
|
|
|
position offsetSection4;
|
|
|
|
section_length[3] section4Length ;
|
2013-03-25 12:04:10 +00:00
|
|
|
unsigned[1] reserved = 0;
|
2014-06-21 21:28:40 +00:00
|
|
|
position offsetBeforeData;
|
|
|
|
|
|
|
|
#meta subsetNumber bufr_subset_number();
|
|
|
|
|
|
|
|
transient subsetNumber=0;
|
|
|
|
if (compressedData) {
|
2014-08-10 19:20:57 +00:00
|
|
|
meta numericValues bufr_data_array(offsetSection4,offsetBeforeData,offsetEndSection4,section4Length,
|
2014-11-17 14:53:05 +00:00
|
|
|
numberOfSubsets,subsetNumber,expandedCodes,expandedFlags,
|
|
|
|
stringValues,elementsDescriptorsIndex,compressedData) : dump;
|
2014-06-21 21:28:40 +00:00
|
|
|
} else {
|
2014-08-10 19:20:57 +00:00
|
|
|
meta numericValues bufr_data_array(offsetSection4,offsetBeforeData,offsetEndSection4,section4Length,
|
2014-11-17 14:53:05 +00:00
|
|
|
numberOfSubsets,subsetNumber,expandedCodes,expandedFlags,
|
|
|
|
stringValues,elementsDescriptorsIndex,compressedData) : dump;
|
2014-06-21 21:28:40 +00:00
|
|
|
}
|
|
|
|
|
2014-11-17 14:53:05 +00:00
|
|
|
meta unpack unpack_bufr_values(numericValues) ;
|
2014-06-21 21:28:40 +00:00
|
|
|
|
2015-06-03 13:52:29 +00:00
|
|
|
when (changed(unexpandedDescriptors)) {
|
|
|
|
# resize data section and unpack
|
|
|
|
set unpack=3;
|
|
|
|
}
|
|
|
|
|
2013-03-25 12:04:10 +00:00
|
|
|
section_padding section4Padding;
|
2014-06-21 21:28:40 +00:00
|
|
|
position offsetEndSection4;
|
|
|
|
meta md5Data md5(offsetSection4,section4Length);
|
2015-03-02 17:00:24 +00:00
|
|
|
alias dataAccessors=numericValues;
|
2015-02-23 11:13:41 +00:00
|
|
|
|