! This is part of netCDF-4. Copyright 2006, UCAR, See COPYRIGHT ! file for distribution information. ! Netcdf version 4 fortran interface. ! $Id$ ! New netCDF-4 types. integer nf_ubyte integer nf_ushort integer nf_uint integer nf_int64 integer nf_uint64 integer nf_string integer nf_vlen integer nf_opaque integer nf_enum integer nf_compound parameter (nf_ubyte = 7) parameter (nf_ushort = 8) parameter (nf_uint = 9) parameter (nf_int64 = 10) parameter (nf_uint64 = 11) parameter (nf_string = 12) parameter (nf_vlen = 13) parameter (nf_opaque = 14) parameter (nf_enum = 15) parameter (nf_compound = 16) ! New netCDF-4 fill values. integer nf_fill_ubyte integer nf_fill_ushort ! real nf_fill_uint ! real nf_fill_int64 ! real nf_fill_uint64 parameter (nf_fill_ubyte = 255) parameter (nf_fill_ushort = 65535) ! New constants. integer nf_format_netcdf4 parameter (nf_format_netcdf4 = 3) integer nf_format_netcdf4_classic parameter (nf_format_netcdf4_classic = 4) integer nf_netcdf4 parameter (nf_netcdf4 = 4096) integer nf_classic_model parameter (nf_classic_model = 256) integer nf_chunk_seq parameter (nf_chunk_seq = 0) integer nf_chunk_sub parameter (nf_chunk_sub = 1) integer nf_chunk_sizes parameter (nf_chunk_sizes = 2) integer nf_endian_native parameter (nf_endian_native = 0) integer nf_endian_little parameter (nf_endian_little = 1) integer nf_endian_big parameter (nf_endian_big = 2) ! For NF_DEF_VAR_CHUNKING integer nf_chunked parameter (nf_chunked = 0) integer nf_contiguous parameter (nf_contiguous = 1) ! For NF_DEF_VAR_FLETCHER32 integer nf_nochecksum parameter (nf_nochecksum = 0) integer nf_fletcher32 parameter (nf_fletcher32 = 1) ! For NF_DEF_VAR_DEFLATE integer nf_noshuffle parameter (nf_noshuffle = 0) integer nf_shuffle parameter (nf_shuffle = 1) ! For NF_DEF_VAR_SZIP integer nf_szip_ec_option_mask parameter (nf_szip_ec_option_mask = 4) integer nf_szip_nn_option_mask parameter (nf_szip_nn_option_mask = 32) ! For parallel I/O. integer nf_mpiio parameter (nf_mpiio = 8192) integer nf_mpiposix parameter (nf_mpiposix = 16384) integer nf_pnetcdf parameter (nf_pnetcdf = 32768) ! For NF_VAR_PAR_ACCESS. integer nf_independent parameter (nf_independent = 0) integer nf_collective parameter (nf_collective = 1) ! New error codes. integer nf_ehdferr ! Error at HDF5 layer. parameter (nf_ehdferr = -101) integer nf_ecantread ! Can't read. parameter (nf_ecantread = -102) integer nf_ecantwrite ! Can't write. parameter (nf_ecantwrite = -103) integer nf_ecantcreate ! Can't create. parameter (nf_ecantcreate = -104) integer nf_efilemeta ! Problem with file metadata. parameter (nf_efilemeta = -105) integer nf_edimmeta ! Problem with dimension metadata. parameter (nf_edimmeta = -106) integer nf_eattmeta ! Problem with attribute metadata. parameter (nf_eattmeta = -107) integer nf_evarmeta ! Problem with variable metadata. parameter (nf_evarmeta = -108) integer nf_enocompound ! Not a compound type. parameter (nf_enocompound = -109) integer nf_eattexists ! Attribute already exists. parameter (nf_eattexists = -110) integer nf_enotnc4 ! Attempting netcdf-4 operation on netcdf-3 file. parameter (nf_enotnc4 = -111) integer nf_estrictnc3 ! Attempting netcdf-4 operation on strict nc3 netcdf-4 file. parameter (nf_estrictnc3 = -112) integer nf_enotnc3 ! Attempting netcdf-3 operation on netcdf-4 file. parameter (nf_enotnc3 = -113) integer nf_enopar ! Parallel operation on file opened for non-parallel access. parameter (nf_enopar = -114) integer nf_eparinit ! Error initializing for parallel access. parameter (nf_eparinit = -115) integer nf_ebadgrpid ! Bad group ID. parameter (nf_ebadgrpid = -116) integer nf_ebadtypid ! Bad type ID. parameter (nf_ebadtypid = -117) integer nf_etypdefined ! Type has already been defined and may not be edited. parameter (nf_etypdefined = -118) integer nf_ebadfield ! Bad field ID. parameter (nf_ebadfield = -119) integer nf_ebadclass ! Bad class. parameter (nf_ebadclass = -120) integer nf_emaptype ! Mapped access for atomic types only. parameter (nf_emaptype = -121) integer nf_elatefill ! Attempt to define fill value when data already exists. parameter (nf_elatefill = -122) integer nf_elatedef ! Attempt to define var properties, like deflate, after enddef. parameter (nf_elatedef = -123) integer nf_edimscale ! Probem with HDF5 dimscales. parameter (nf_edimscale = -124) integer nf_enogrp ! No group found. parameter (nf_enogrp = -125) ! New functions. ! Parallel I/O. integer nf_create_par external nf_create_par integer nf_open_par external nf_open_par integer nf_var_par_access external nf_var_par_access ! Functions to handle groups. integer nf_inq_ncid external nf_inq_ncid integer nf_inq_grps external nf_inq_grps integer nf_inq_grpname external nf_inq_grpname integer nf_inq_grpname_full external nf_inq_grpname_full integer nf_inq_grpname_len external nf_inq_grpname_len integer nf_inq_grp_parent external nf_inq_grp_parent integer nf_inq_grp_ncid external nf_inq_grp_ncid integer nf_inq_grp_full_ncid external nf_inq_grp_full_ncid integer nf_inq_varids external nf_inq_varids integer nf_inq_dimids external nf_inq_dimids integer nf_def_grp external nf_def_grp ! New rename grp function integer nf_rename_grp external nf_rename_grp ! New options for netCDF variables. integer nf_def_var_deflate external nf_def_var_deflate integer nf_inq_var_deflate external nf_inq_var_deflate integer nf_def_var_fletcher32 external nf_def_var_fletcher32 integer nf_inq_var_fletcher32 external nf_inq_var_fletcher32 integer nf_def_var_chunking external nf_def_var_chunking integer nf_inq_var_chunking external nf_inq_var_chunking integer nf_def_var_fill external nf_def_var_fill integer nf_inq_var_fill external nf_inq_var_fill integer nf_def_var_endian external nf_def_var_endian integer nf_inq_var_endian external nf_inq_var_endian ! User defined types. integer nf_inq_typeids external nf_inq_typeids integer nf_inq_typeid external nf_inq_typeid integer nf_inq_type external nf_inq_type integer nf_inq_user_type external nf_inq_user_type ! User defined types - compound types. integer nf_def_compound external nf_def_compound integer nf_insert_compound external nf_insert_compound integer nf_insert_array_compound external nf_insert_array_compound integer nf_inq_compound external nf_inq_compound integer nf_inq_compound_name external nf_inq_compound_name integer nf_inq_compound_size external nf_inq_compound_size integer nf_inq_compound_nfields external nf_inq_compound_nfields integer nf_inq_compound_field external nf_inq_compound_field integer nf_inq_compound_fieldname external nf_inq_compound_fieldname integer nf_inq_compound_fieldindex external nf_inq_compound_fieldindex integer nf_inq_compound_fieldoffset external nf_inq_compound_fieldoffset integer nf_inq_compound_fieldtype external nf_inq_compound_fieldtype integer nf_inq_compound_fieldndims external nf_inq_compound_fieldndims integer nf_inq_compound_fielddim_sizes external nf_inq_compound_fielddim_sizes ! User defined types - variable length arrays. integer nf_def_vlen external nf_def_vlen integer nf_inq_vlen external nf_inq_vlen integer nf_free_vlen external nf_free_vlen ! User defined types - enums. integer nf_def_enum external nf_def_enum integer nf_insert_enum external nf_insert_enum integer nf_inq_enum external nf_inq_enum integer nf_inq_enum_member external nf_inq_enum_member integer nf_inq_enum_ident external nf_inq_enum_ident ! User defined types - opaque. integer nf_def_opaque external nf_def_opaque integer nf_inq_opaque external nf_inq_opaque ! Write and read attributes of any type, including user defined ! types. integer nf_put_att external nf_put_att integer nf_get_att external nf_get_att ! Write and read variables of any type, including user defined ! types. integer nf_put_var external nf_put_var integer nf_put_var1 external nf_put_var1 integer nf_put_vara external nf_put_vara integer nf_put_vars external nf_put_vars integer nf_get_var external nf_get_var integer nf_get_var1 external nf_get_var1 integer nf_get_vara external nf_get_vara integer nf_get_vars external nf_get_vars ! 64-bit int functions. integer nf_put_var1_int64 external nf_put_var1_int64 integer nf_put_vara_int64 external nf_put_vara_int64 integer nf_put_vars_int64 external nf_put_vars_int64 integer nf_put_varm_int64 external nf_put_varm_int64 integer nf_put_var_int64 external nf_put_var_int64 integer nf_get_var1_int64 external nf_get_var1_int64 integer nf_get_vara_int64 external nf_get_vara_int64 integer nf_get_vars_int64 external nf_get_vars_int64 integer nf_get_varm_int64 external nf_get_varm_int64 integer nf_get_var_int64 external nf_get_var_int64 ! For helping F77 users with VLENs. integer nf_get_vlen_element external nf_get_vlen_element integer nf_put_vlen_element external nf_put_vlen_element ! For dealing with file level chunk cache. integer nf_set_chunk_cache external nf_set_chunk_cache integer nf_get_chunk_cache external nf_get_chunk_cache ! For dealing with per variable chunk cache. integer nf_set_var_chunk_cache external nf_set_var_chunk_cache integer nf_get_var_chunk_cache external nf_get_var_chunk_cache