NDF_GTDLT

Get compression details for a DELTA compressed NDF array component

Description:

The routine returns the details of the compression used by an NDF array component stored in DELTA form. If the array is not stored in DELTA form, then null values are returned as listed below, but no error is reported.

A DELTA array is compressed by storing only the differences between adjacent array values along a nominated compression axis, rather than the full array values. The differences are stored using a smaller data type than the original absolute values. The compression is lossless because any differences that will not fit into the smaller data type are stored explicitly in an extra array with a larger data type. Additional compression is achieved by replacing runs of equal values by a single value and a repeat count.

Invocation

CALL NDF_GTDLT( INDF, COMP, ZAXIS, ZTYPE, ZRATIO, STATUS )

Arguments

INDF = INTEGER (Given)
NDF identifier.
COMP = CHARACTER ( ) (Given)
Name of the NDF array component; DATA, QUALITY or VARIANCE.
ZAXIS = INTEGER (Returned)
The index of the pixel axis along which compression occurred. The first axis has index 1. Zero is returned if the array is not stored in DELTA form.
ZTYPE = CHARACTER ( ) (Returned)
The data type in which the differences between adjacent array values are stored. This will be one of _BYTE, _WORD or _INTEGER. The data type of the array itself is returned if the supplid array is not stored in DELTA form.
ZRATIO = REAL (Returned)
The compression factor - the ratio of the uncompressed array size to the compressed array size. This is approximate as it does not include the effects of the metadata needed to describe the extra components of a DELTA array (i.e. the space needed to hold the component names, types, dimensions, etc). A value of 1.0 is returned if the supplid array is not stored in DELTA form.
STATUS = INTEGER (Given and Returned)
The global status.