@@ -632,141 +632,137 @@ enum PIO_ERROR_HANDLERS
632
632
PIO_RETURN_ERROR = (-53 )
633
633
};
634
634
635
+ /** Attribute id to put/get a global attribute. */
635
636
#define PIO_GLOBAL NC_GLOBAL
637
+
638
+ /** Size argument to nc_def_dim() for an unlimited dimension. */
636
639
#define PIO_UNLIMITED NC_UNLIMITED
637
640
638
641
/* NetCDF types. */
639
- #define PIO_BYTE NC_BYTE
640
- #define PIO_CHAR NC_CHAR
641
- #define PIO_SHORT NC_SHORT
642
- #define PIO_INT NC_INT
643
- #define PIO_FLOAT NC_FLOAT
644
- #define PIO_REAL NC_FLOAT
645
- #define PIO_DOUBLE NC_DOUBLE
646
- #define PIO_UBYTE NC_UBYTE
647
- #define PIO_USHORT NC_USHORT
648
- #define PIO_UINT NC_UINT
649
- #define PIO_INT64 NC_INT64
650
- #define PIO_UINT64 NC_UINT64
651
- #define PIO_STRING NC_STRING
642
+ #define PIO_BYTE NC_BYTE /**< signed 1 byte integer */
643
+ #define PIO_CHAR NC_CHAR /**< ISO/ASCII character */
644
+ #define PIO_SHORT NC_SHORT /**< signed 2 byte integer */
645
+ #define PIO_INT NC_INT /**< signed 4 byte integer */
646
+ #define PIO_FLOAT NC_FLOAT /**< single precision floating point number */
647
+ #define PIO_REAL NC_FLOAT /**< single precision floating point number */
648
+ #define PIO_DOUBLE NC_DOUBLE /**< double precision floating point number */
649
+ #define PIO_UBYTE NC_UBYTE /**< unsigned 1 byte int */
650
+ #define PIO_USHORT NC_USHORT /**< unsigned 2-byte int */
651
+ #define PIO_UINT NC_UINT /**< unsigned 4-byte int */
652
+ #define PIO_INT64 NC_INT64 /**< signed 8-byte int */
653
+ #define PIO_UINT64 NC_UINT64 /**< unsigned 8-byte int */
654
+ #define PIO_STRING NC_STRING /**< string */
652
655
653
656
/* NetCDF flags. */
654
- #define PIO_WRITE NC_WRITE
655
- #define PIO_NOWRITE NC_NOWRITE
656
- #define PIO_CLOBBER NC_CLOBBER
657
- #define PIO_NOCLOBBER NC_NOCLOBBER
658
- #define PIO_FILL NC_FILL
659
- #define PIO_NOFILL NC_NOFILL
660
- #define PIO_MAX_NAME NC_MAX_NAME
661
- #define PIO_MAX_VAR_DIMS NC_MAX_VAR_DIMS
662
- #define PIO_64BIT_OFFSET NC_64BIT_OFFSET
657
+ #define PIO_WRITE NC_WRITE /**< Set read-write access for nc_open(). */
658
+ #define PIO_NOWRITE NC_NOWRITE /**< Set read-only access for nc_open(). */
659
+ #define PIO_CLOBBER NC_CLOBBER /**< Destroy existing file. Mode flag for nc_create(). */
660
+ #define PIO_NOCLOBBER NC_NOCLOBBER /**< Don't destroy existing file. Mode flag for nc_create(). */
661
+ #define PIO_FILL NC_FILL /**< Argument to nc_set_fill() to clear NC_NOFILL */
662
+ #define PIO_NOFILL NC_NOFILL /**< Argument to nc_set_fill() to turn off filling of data. */
663
+ #define PIO_MAX_NAME NC_MAX_NAME /**< Max name length. */
664
+ #define PIO_MAX_VAR_DIMS NC_MAX_VAR_DIMS /**< max per variable dimensions */
665
+ #define PIO_64BIT_OFFSET NC_64BIT_OFFSET /**< Use large (64-bit) file offsets. Mode flag for nc_create(). */
663
666
664
667
/** NC_64BIT_DATA This is a problem - need to define directly instead
665
668
* of using include file. */
666
- #define PIO_64BIT_DATA 0x0010
669
+ #define PIO_64BIT_DATA 0x0010 /**< CDF5 foemat. */
667
670
668
671
/** Define the netCDF-based error codes. */
669
- #define PIO_NOERR NC_NOERR
670
- #define PIO_EBADID NC_EBADID
671
- #define PIO_ENFILE NC_ENFILE
672
- #define PIO_EEXIST NC_EEXIST
673
- #define PIO_EINVAL NC_EINVAL
674
- #define PIO_EPERM NC_EPERM
675
- #define PIO_ENOTINDEFINE NC_ENOTINDEFINE
676
- #define PIO_EINDEFINE NC_EINDEFINE
677
- #define PIO_EINVALCOORDS NC_EINVALCOORDS
678
- #define PIO_EMAXDIMS NC_EMAXDIMS
679
- #define PIO_ENAMEINUSE NC_ENAMEINUSE
680
- #define PIO_ENOTATT NC_ENOTATT
681
- #define PIO_EMAXATTS NC_EMAXATTS
682
- #define PIO_EBADTYPE NC_EBADTYPE
683
- #define PIO_EBADDIM NC_EBADDIM
684
- #define PIO_EUNLIMPOS NC_EUNLIMPOS
685
- #define PIO_EMAXVARS NC_EMAXVARS
686
- #define PIO_ENOTVAR NC_ENOTVAR
687
- #define PIO_EGLOBAL NC_EGLOBAL
688
- #define PIO_ENOTNC NC_ENOTNC
689
- #define PIO_ESTS NC_ESTS
690
- #define PIO_EMAXNAME NC_EMAXNAME
691
- #define PIO_EUNLIMIT NC_EUNLIMIT
692
- #define PIO_ENORECVARS NC_ENORECVARS
693
- #define PIO_ECHAR NC_ECHAR
694
- #define PIO_EEDGE NC_EEDGE
695
- #define PIO_ESTRIDE NC_ESTRIDE
696
- #define PIO_EBADNAME NC_EBADNAME
697
- #define PIO_ERANGE NC_ERANGE
698
- #define PIO_ENOMEM NC_ENOMEM
699
- #define PIO_EVARSIZE NC_EVARSIZE
700
- #define PIO_EDIMSIZE NC_EDIMSIZE
701
- #define PIO_ETRUNC NC_ETRUNC
702
- #define PIO_EAXISTYPE NC_EAXISTYPE
703
- #define PIO_EDAP NC_EDAP
704
- #define PIO_ECURL NC_ECURL
705
- #define PIO_EIO NC_EIO
706
- #define PIO_ENODATA NC_ENODATA
707
- #define PIO_EDAPSVC NC_EDAPSVC
708
- #define PIO_EDAS NC_EDAS
709
- #define PIO_EDDS NC_EDDS
710
- #define PIO_EDATADDS NC_EDATADDS
711
- #define PIO_EDAPURL NC_EDAPURL
712
- #define PIO_EDAPCONSTRAINT NC_EDAPCONSTRAINT
713
- #define PIO_ETRANSLATION NC_ETRANSLATION
714
- #define PIO_EHDFERR NC_EHDFERR
715
- #define PIO_ECANTREAD NC_ECANTREAD
716
- #define PIO_ECANTWRITE NC_ECANTWRITE
717
- #define PIO_ECANTCREATE NC_ECANTCREATE
718
- #define PIO_EFILEMETA NC_EFILEMETA
719
- #define PIO_EDIMMETA NC_EDIMMETA
720
- #define PIO_EATTMETA NC_EATTMETA
721
- #define PIO_EVARMETA NC_EVARMETA
722
- #define PIO_ENOCOMPOUND NC_ENOCOMPOUND
723
- #define PIO_EATTEXISTS NC_EATTEXISTS
724
- #define PIO_ENOTNC4 NC_ENOTNC4
725
- #define PIO_ESTRICTNC3 NC_ESTRICTNC3
726
- #define PIO_ENOTNC3 NC_ENOTNC3
727
- #define PIO_ENOPAR NC_ENOPAR
728
- #define PIO_EPARINIT NC_EPARINIT
729
- #define PIO_EBADGRPID NC_EBADGRPID
730
- #define PIO_EBADTYPID NC_EBADTYPID
731
- #define PIO_ETYPDEFINED NC_ETYPDEFINED
732
- #define PIO_EBADFIELD NC_EBADFIELD
733
- #define PIO_EBADCLASS NC_EBADCLASS
734
- #define PIO_EMAPTYPE NC_EMAPTYPE
735
- #define PIO_ELATEFILL NC_ELATEFILL
736
- #define PIO_ELATEDEF NC_ELATEDEF
737
- #define PIO_EDIMSCALE NC_EDIMSCALE
738
- #define PIO_ENOGRP NC_ENOGRP
739
- #define PIO_ESTORAGE NC_ESTORAGE
740
- #define PIO_EBADCHUNK NC_EBADCHUNK
741
- #define PIO_ENOTBUILT NC_ENOTBUILT
742
- #define PIO_EDISKLESS NC_EDISKLESS
672
+ #define PIO_NOERR NC_NOERR /**< No Error */
673
+ #define PIO_EBADID NC_EBADID /**< Bad ncid */
674
+ #define PIO_ENFILE NC_ENFILE /**< Too many netcdfs open */
675
+ #define PIO_EEXIST NC_EEXIST /**< netcdf file exists && NC_NOCLOBBER */
676
+ #define PIO_EINVAL NC_EINVAL /**< Invalid Argument */
677
+ #define PIO_EPERM NC_EPERM /**< Write to read only */
678
+ #define PIO_ENOTINDEFINE NC_ENOTINDEFINE /**< Not in define mode */
679
+ #define PIO_EINDEFINE NC_EINDEFINE /**< Not allowed in define mode */
680
+ #define PIO_EINVALCOORDS NC_EINVALCOORDS /**< Invalid coordinates */
681
+ #define PIO_EMAXDIMS NC_EMAXDIMS /**< not enforced after netcdf-c 4.5.0 */
682
+ #define PIO_ENAMEINUSE NC_ENAMEINUSE /**< String match to name in use */
683
+ #define PIO_ENOTATT NC_ENOTATT /**< Attribute not found */
684
+ #define PIO_EMAXATTS NC_EMAXATTS /**< NC_MAX_ATTRS exceeded - not enforced after 4.5.0 */
685
+ #define PIO_EBADTYPE NC_EBADTYPE /**< Not a netcdf data type */
686
+ #define PIO_EBADDIM NC_EBADDIM /**< Invalid dimension id or name */
687
+ #define PIO_EUNLIMPOS NC_EUNLIMPOS /**< NC_UNLIMITED in the wrong index */
688
+ #define PIO_EMAXVARS NC_EMAXVARS /**< not enforced after 4.5.0 */
689
+ #define PIO_ENOTVAR NC_ENOTVAR /**< variable not found */
690
+ #define PIO_EGLOBAL NC_EGLOBAL /**< Action prohibited on NC_GLOBAL varid */
691
+ #define PIO_ENOTNC NC_ENOTNC /**< Not a netcdf file */
692
+ #define PIO_ESTS NC_ESTS /**< In Fortran, string too short */
693
+ #define PIO_EMAXNAME NC_EMAXNAME /**< NC_MAX_NAME exceeded */
694
+ #define PIO_EUNLIMIT NC_EUNLIMIT /**< NC_UNLIMITED size already in use */
695
+ #define PIO_ENORECVARS NC_ENORECVARS /**< nc_rec op when there are no record vars */
696
+ #define PIO_ECHAR NC_ECHAR /**< Attempt to convert between text & numbers */
697
+ #define PIO_EEDGE NC_EEDGE /**< Start+count exceeds dimension bound. */
698
+ #define PIO_ESTRIDE NC_ESTRIDE /**< Illegal stride */
699
+ #define PIO_EBADNAME NC_EBADNAME /**< Attribute or variable name contains illegal characters */
700
+ #define PIO_ERANGE NC_ERANGE /**< Range error */
701
+ #define PIO_ENOMEM NC_ENOMEM /**< Memory allocation (malloc) failure */
702
+ #define PIO_EVARSIZE NC_EVARSIZE /**< One or more variable sizes violate format constraints */
703
+ #define PIO_EDIMSIZE NC_EDIMSIZE /**< Invalid dimension size */
704
+ #define PIO_ETRUNC NC_ETRUNC /**< File likely truncated or possibly corrupted */
705
+ #define PIO_EAXISTYPE NC_EAXISTYPE /**< Unknown axis type. */
706
+ #define PIO_EDAP NC_EDAP /**< Generic DAP error */
707
+ #define PIO_ECURL NC_ECURL /**< Generic libcurl error */
708
+ #define PIO_EIO NC_EIO /**< Generic IO error */
709
+ #define PIO_ENODATA NC_ENODATA /**< Attempt to access variable with no data */
710
+ #define PIO_EDAPSVC NC_EDAPSVC /**< DAP server error */
711
+ #define PIO_EDAS NC_EDAS /**< Malformed or inaccessible DAS */
712
+ #define PIO_EDDS NC_EDDS /**< Malformed or inaccessible DDS */
713
+ #define PIO_EDATADDS NC_EDATADDSDS /**< Dap4 alias */
714
+ #define PIO_EDAPURL NC_EDAPURL /**< Malformed DAP URL */
715
+ #define PIO_EDAPCONSTRAINT NC_EDAPCONSTRAINT /**< Malformed DAP Constraint*/
716
+ #define PIO_ETRANSLATION NC_ETRANSLATION /**< Untranslatable construct */
717
+ #define PIO_EHDFERR NC_EHDFERR /**< Error at HDF5 layer. */
718
+ #define PIO_ECANTREAD NC_ECANTREAD /**< Can't read. */
719
+ #define PIO_ECANTWRITE NC_ECANTWRITE /**< Can't write. */
720
+ #define PIO_ECANTCREATE NC_ECANTCREATE /**< Can't create. */
721
+ #define PIO_EFILEMETA NC_EFILEMETA /**< Problem with file metadata. */
722
+ #define PIO_EDIMMETA NC_EDIMMETA /**< Problem with dimension metadata. */
723
+ #define PIO_EATTMETA NC_EATTMETA /**< Problem with attribute metadata. */
724
+ #define PIO_EVARMETA NC_EVARMETA /**< Problem with variable metadata. */
725
+ #define PIO_ENOCOMPOUND NC_ENOCOMPOUND /**< Not a compound type. */
726
+ #define PIO_EATTEXISTS NC_EATTEXISTS /**< Attribute already exists. */
727
+ #define PIO_ENOTNC4 NC_ENOTNC4 /**< Attempting netcdf-4 operation on netcdf-3 file. */
728
+ #define PIO_ESTRICTNC3 NC_ESTRICTNC3 /**< Attempting netcdf-4 operation on strict nc3 netcdf-4 file. */
729
+ #define PIO_ENOTNC3 NC_ENOTNC3 /**< Attempting netcdf-3 operation on netcdf-4 file. */
730
+ #define PIO_ENOPAR NC_ENOPAR /**< Parallel operation on file opened for non-parallel access. */
731
+ #define PIO_EPARINIT NC_EPARINIT /**< Error initializing for parallel access. */
732
+ #define PIO_EBADGRPID NC_EBADGRPID /**< Bad group ID. */
733
+ #define PIO_EBADTYPID NC_EBADTYPID /**< Bad type ID. */
734
+ #define PIO_ETYPDEFINED NC_ETYPDEFINED /**< Type has already been defined and may not be edited. */
735
+ #define PIO_EBADFIELD NC_EBADFIELD /**< Bad field ID. */
736
+ #define PIO_EBADCLASS NC_EBADCLASS /**< Bad class. */
737
+ #define PIO_EMAPTYPE NC_EMAPTYPE /**< Mapped access for atomic types only. */
738
+ #define PIO_ELATEFILL NC_ELATEFILL /**< Attempt to define fill value when data already exists. */
739
+ #define PIO_ELATEDEF NC_ELATEDEF /**< Attempt to define var properties, like deflate, after enddef. */
740
+ #define PIO_EDIMSCALE NC_EDIMSCALE /**< Problem with HDF5 dimscales. */
741
+ #define PIO_ENOGRP NC_ENOGRP /**< No group found. */
742
+ #define PIO_ESTORAGE NC_ESTORAGE /**< Can't specify both contiguous and chunking. */
743
+ #define PIO_EBADCHUNK NC_EBADCHUNK /**< Bad chunksize. */
744
+ #define PIO_ENOTBUILT NC_ENOTBUILT /**< Attempt to use feature that was not turned on when netCDF was built. */
745
+ #define PIO_EDISKLESS NC_EDISKLESS /**< Error in using diskless access. */
743
746
744
747
/* These are the netCDF default fill values. */
745
- #define PIO_FILL_BYTE NC_FILL_BYTE
746
- #define PIO_FILL_CHAR NC_FILL_CHAR
747
- #define PIO_FILL_SHORT NC_FILL_SHORT
748
- #define PIO_FILL_INT NC_FILL_INT
749
- #define PIO_FILL_FLOAT NC_FILL_FLOAT
750
- #define PIO_FILL_DOUBLE NC_FILL_DOUBLE
751
- #define PIO_FILL_UBYTE NC_FILL_UBYTE
752
- #define PIO_FILL_USHORT NC_FILL_USHORT
753
- #define PIO_FILL_UINT NC_FILL_UINT
754
- #define PIO_FILL_INT64 NC_FILL_INT64
755
- #define PIO_FILL_UINT64 NC_FILL_UINT64
756
-
757
- #define PIO_EINDEP NC_EINDEP
758
-
759
- /** The first error code for PIO. */
760
- #define PIO_FIRST_ERROR_CODE (-500)
761
-
762
- /** Bad IOTYPE error. */
763
- #define PIO_EBADIOTYPE (-500)
764
-
765
- /** Variable dimensions do not match in a multivar call. */
766
- #define PIO_EVARDIMMISMATCH (-501)
767
-
768
- /** Request null. */
769
- #define PIO_REQ_NULL (NC_REQ_NULL-1)
748
+ #define PIO_FILL_BYTE NC_FILL_BYTE /**< Default fill value for this type. */
749
+ #define PIO_FILL_CHAR NC_FILL_CHAR /**< Default fill value for this type. */
750
+ #define PIO_FILL_SHORT NC_FILL_SHORT /**< Default fill value for this type. */
751
+ #define PIO_FILL_INT NC_FILL_INT /**< Default fill value for this type. */
752
+ #define PIO_FILL_FLOAT NC_FILL_FLOAT /**< Default fill value for this type. */
753
+ #define PIO_FILL_DOUBLE NC_FILL_DOUBLE /**< Default fill value for this type. */
754
+ #define PIO_FILL_UBYTE NC_FILL_UBYTE /**< Default fill value for this type. */
755
+ #define PIO_FILL_USHORT NC_FILL_USHORT /**< Default fill value for this type. */
756
+ #define PIO_FILL_UINT NC_FILL_UINT /**< Default fill value for this type. */
757
+ #define PIO_FILL_INT64 NC_FILL_INT64 /**< Default fill value for this type. */
758
+ #define PIO_FILL_UINT64 NC_FILL_UINT64 /**< Default fill value for this type. */
759
+
760
+ #define PIO_EINDEP (-203) /**< independent access error. */
761
+
762
+ #define PIO_FIRST_ERROR_CODE (-500) /**< The first error code for PIO. */
763
+ #define PIO_EBADIOTYPE (-500) /**< Bad IOTYPE error. */
764
+ #define PIO_EVARDIMMISMATCH (-501) /**< Variable dimensions do not match in a multivar call. */
765
+ #define PIO_REQ_NULL (NC_REQ_NULL-1) /**< Request null. */
770
766
771
767
#if defined(__cplusplus )
772
768
extern "C" {
0 commit comments