Next: , Previous: User Defined Data Types, Up: User Defined Data Types


5.1 User Defined Types Introduction

NetCDF-4 has added support for four different user defined data types. User defined type may only be used in files created with the NC_NETCDF4 and without NC_CLASSIC_MODEL.

compound type
Like a C struct, a compound type is a collection of types, including other user defined types, in one package.
variable length array type
The variable length array may be used to store ragged arrays.
opaque type
This type has only a size per element, and no other type information.
enum type
Like an enumeration in C, this type lets you assign text values to integer values, and store the integer values.

Users may construct user defined type with the various nc_def_* functions described in this section. They may learn about user defined types by using the nc_inq_ functions defined in this section.

Once types are constructed, define variables of the new type with nc_def_var (see nc_def_var). Write to them with nc_put_var1, nc_put_var, nc_put_vara, or nc_put_vars (see Variables). Read data of user-defined type with nc_get_var1, nc_get_var, nc_get_vara, or nc_get_vars (see Variables).

Create attributes of the new type with nc_put_att (see nc_put_att_ type). Read attributes of the new type with nc_get_att (see nc_get_att_ type).