#include <cx/DataAccess.h>typedef enum { cx_prim_byte, cx_prim_short, cx_prim_long, cx_prim_float, cx_prim_double } cxPrimType;
typedef enum { cx_coord_uniform, cx_coord_perimeter, cx_coord_curvilinear } cxCoordType;
cxLattice *cxLatNew(long nDim, long dims[], long nDataVar, cxPrimType primType, long nCoordVar, cxCoordType coordType)
integer cx_prim_byte integer cx_prim_short integer cx_prim_long integer cx_prim_float integer cx_prim_doubleparameter (cx_prim_byte = 0) parameter (cx_prim_short = 1) parameter (cx_prim_long = 2) parameter (cx_prim_float = 3) parameter (cx_prim_double = 4)
integer cx_coord_uniform integer cx_coord_perimeter integer cx_coord_curvilinear
parameter (cx_coord_uniform = 0) parameter (cx_coord_perimeter = 1) parameter (cx_coord_curvilinear = 2)
integer function cxLatNew( nDim, dims, nDataVar, primType, nCoordVar, coordType) integer nDim, dims(nDim) integer nDataVar, primType integer nCoordVar, coordType
Refer to "IRIS Explorer Module Writer's Guide" for more information on the structure of cxLattice and its contents.
Lattice data structures are allocated from a shared memory arena on Silicon Graphics workstations running IRIX. This shared memory is a limited resource, so it is possible for the memory to be exhausted, causing the allocation routine to fail. If the allocation routine fails, any memory it has successfully allocated will be released, and a NULL pointer will be returned. The subroutine cxDataAllocErrorGet returns TRUE if the lattice could not be allocated. See cxDataAllocErrorGet for more details on writing portable module code that copes well with limited memory.