### NDF_MAPZ

#### Description:

The routine obtains complex mapped access to an array component of an NDF, returning pointers to the mapped real and imaginary values and a count of the number of elements mapped.

#### Invocation

CALL NDF_MAPZ( INDF, COMP, TYPE, MMOD, RPNTR, IPNTR, EL, STATUS )

#### Arguments

NDF identifier.
##### COMP = CHARACTER $\ast$ ( $\ast$ ) (Given)
Name of the NDF array component to be mapped: ’DATA’ or ’VARIANCE’ (or ’ERROR’).
##### TYPE = CHARACTER $\ast$ ( $\ast$ ) (Given)
Numeric type to be used for access (e.g. ’_REAL’).
##### MMOD = CHARACTER $\ast$ ( $\ast$ ) (Given)
Mapping mode for access to the array: ’READ’, ’UPDATE’ or ’WRITE’, with an optional initialisation mode ’/ZERO’ or ’/BAD’ appended.
##### RPNTR( $\ast$ ) = INTEGER (Returned)
Pointer(s) to the mapped real (i.e. non-imaginary) values (see the Notes section).
##### IPNTR( $\ast$ ) = INTEGER (Returned)
Pointer(s) to the mapped imaginary values (see the Notes section).
##### EL = INTEGER (Returned)
Number of elements mapped.
##### STATUS = INTEGER (Given and Returned)
The global status.

#### Notes:

• A comma-separated list of component names may also be given, in which case the routine will map all the requested components using the same data type and mapping mode. Pointers to the values of these mapped components will be returned (in the specified order) in the elements of the arrays RPNTR and IPNTR, which must be of sufficient size to accommodate them.

• Access to an NDF’s QUALITY component is not available using this routine.

• If this routine is called with STATUS set, then a value of 1 will be returned for the EL argument, although no further processing will occur. The same value will also be returned if the routine should fail for any reason.