NuSDaS Interface Reference Manual

NUSDAS_PARAMETER_CHANGE

SYNOPSIS

/* C */
    int
nusdas_parameter_change(param, value)

! Fortran
SUBROUTINE NUSDAS_PARAMETER_CHANGE(param, value, iostat)
symbolFortranC
param(should be constant/macro in header)
value(see description of param)void *
iostatINTEGER, INTENT(OUT)(not used)

ARGUMENTS

param

specifies what parameter to change. It should be one of them:

N_PC_MISSING_UI1

missing value when user data array is char. value should be (pointer to) the same type. The default value is UCHAR_MAX.

N_PC_MISSING_SI2

missing value when user data array is short integer (INTEGER*2). value should be (pointer to) the same type. The default value is SHRT_MIN.

N_PC_MISSING_SI4

missing value when user data array is integer. value should be (pointer to) the same type. The default value is LONG_MIN.

N_PC_MISSING_R4

missing value when user data array is float. value should be (pointer to) the same type. The default value is FLT_MAX.

N_PC_MISSING_R8

missing value when user data array is double. The default value is DBL_MAX. value should be (pointer to) the same type.

N_PC_MASK_BIT

bitmap for missing grid points. value should be created as bitmap of NUSDAS_MAKE_MASK. Default value for the parameter is meaningless, since writing without initializing bitmap fails (if bitmap required), or otherwise simply ignored.

N_PC_ID_SET

NRD number to/from which further access is done. This is useful in switching among many NRD's providing same data type. N_OFF is the default.

N_PC_PACKING

packing scheme. See table Packing Type for acceptable values. N_OFF is the default.

N_PC_SIZEX

grid size in X direction. N_OFF is the default.

N_PC_SIZEY

grid size in Y direction. N_OFF is the default.

Note that all parameters have global effect: once some parameter is changed, the effect remains until the end of calling process, even when different data type is accessed. Take care of yourself, especially on changing N_PC_PACKING, N_PC_SIZEX, and N_PC_SIZEY.

value

Value to be set as parameter. If NULL is given, it is equivalent to the default value. If you are using Fortran interface, be careful to tricky implementation of NULL in nusdas_fort.h due to consideration to only-Fortran-90 compilers. It will conflict with built-in function NULL of Fortran 95 standard; subroutines using NuSDaS interface is unable to use NULL.