# (C) Copyright 2005- ECMWF.

# TEMPLATE 7.2, Grid point data - complex packing

position offsetBeforeData;

constant orderOfSpatialDifferencing     = 0;
constant numberOfOctetsExtraDescriptors = 0;

meta codedValues data_g22order_packing(
     section7Length,
     offsetBeforeData,
     offsetSection7,

     numberOfValues,
     bitsPerValue,
     referenceValue,
     binaryScaleFactor,
     decimalScaleFactor,
     optimizeScaleFactor,

     typeOfOriginalFieldValues,
     groupSplittingMethodUsed,
     missingValueManagementUsed,
     primaryMissingValueSubstitute,
     secondaryMissingValueSubstitute,
     numberOfGroupsOfDataValues,
     referenceForGroupWidths,
     numberOfBitsUsedForTheGroupWidths,
     referenceForGroupLengths,
     lengthIncrementForTheGroupLengths,
     trueLengthOfLastGroup,
     numberOfBitsForScaledGroupLengths,
     orderOfSpatialDifferencing,
     numberOfOctetsExtraDescriptors,
     dataRepresentationTemplateNumber
): read_only;

meta values data_apply_bitmap(
     codedValues,
     bitmap,
     missingValue,
     binaryScaleFactor,
     numberOfDataPoints,
     numberOfValues
) : dump;

alias data.packedValues = codedValues;

template statistics "common/statistics_grid.def";
meta numberOfMissing count_missing(bitmap,unusedBitsInBitmap,numberOfDataPoints,missingValueManagementUsed) : dump;
alias numberOfMissingValues=numberOfMissing;
