# (C) Copyright 2005- ECMWF. # moved here to allow different bitsPerValue in second order packing unsigned[1] bitsPerValue : dump ; alias numberOfBitsContainingEachPackedValue = bitsPerValue; # For grib1 -> grib2 #constant dataRepresentationTemplateNumber = ?; # TODO codetable[1] precision "grib1/precision.table" = 2 : dump,edition_specific; position offsetBeforeData; if( bitmapPresent || !GDSPresent ) { # For grib1 -> grib2 constant bitMapIndicator = 0; meta codedValues data_raw_packing( section4Length, offsetBeforeData, offsetSection4, numberOfCodedValues, precision ); meta values data_apply_bitmap(codedValues, bitmap,missingValue,binaryScaleFactor) : dump; alias data.packedValues = codedValues; } else { # For grib1 -> grib2 constant bitMapIndicator = 255; meta values data_raw_packing( section4Length, offsetBeforeData, offsetSection4, numberOfCodedValues, precision ); alias data.packedValues = values; } meta numberOfCodedValues number_of_values_data_raw_packing(values,precision); template statistics "common/statistics_grid.def";