# Serialized Form

- ## Package hdf.object

  - ### Class hdf.object.Attribute extends Dataset implements Serializable

    serialVersionUID:
      2072473407027648309L

    - #### Serialized Fields

      - ##### flatNameList

            List<String> flatNameList

        A list of names of all compound fields including nested fields.

        The nested names are separated by CompoundDS.SEPARATOR. For example, if compound attribute "A" has the following nested structure,

             A --> m01
             A --> m02
             A --> nest1 --> m11
             A --> nest1 --> m12
             A --> nest1 --> nest2 --> m21
             A --> nest1 --> nest2 --> m22
             i.e.
             A = { m01, m02, nest1{m11, m12, nest2{ m21, m22}}}

        The flatNameList of compound attribute "A" will be {m01, m02, nest1[m11, nest1[m12, nest1[nest2[m21, nest1[nest2[m22}

      - ##### flatTypeList

            List<Datatype> flatTypeList

        A list of datatypes of all compound fields including nested fields.

      - ##### isMemberSelected

            boolean[] isMemberSelected

        The array to store flags to indicate if a member of this compound attribute is selected for read/write.

        If a member is selected, the read/write will perform on the member. Applications such as HDFView will only display the selected members of the compound attribute.

             For example, if a compound attribute has four members
                 String[] memberNames = {"X", "Y", "Z", "TIME"};
             and
                 boolean[] isMemberSelected = {true, false, false, true};
             members "X" and "TIME" are selected for read and write.

      - ##### isScalar

            boolean isScalar

        Flag to indicate if the attribute data is a single scalar point

      - ##### memberNames

            String[] memberNames

        The names of the members of the compound attribute.

      - ##### memberOrders

            int[] memberOrders

        Array containing the total number of elements of the members of this compound attribute.

        For example, a compound attribute COMP has members of A, B and C as

                 COMP {
                     int A;
                     float B[5];
                     double C[2][3];
                 }

        memberOrders is an integer array of {1, 5, 6} to indicate that member A has one element, member B has 5 elements, and member C has 6 elements.

      - ##### memberTypes

            Datatype[] memberTypes

        The datatypes of the compound attribute's members.

      - ##### numberOfMembers

            int numberOfMembers

        The number of members of the compound attribute.

      - ##### parentObject

            HObject parentObject

        The HObject to which this Attribute is attached

      - ##### unsignedConverted

            boolean unsignedConverted

        Flag to indicate is the original unsigned C data is converted.

  - ### Class hdf.object.CompoundDS extends Dataset implements Serializable

    serialVersionUID:
      -4880399929644095662L

    - #### Serialized Fields

      - ##### isMemberSelected

            boolean[] isMemberSelected

        The array to store flags to indicate if a member of this compound dataset is selected for read/write.

        If a member is selected, the read/write will perform on the member. Applications such as HDFView will only display the selected members of the compound dataset.

             For example, if a compound dataset has four members
                 String[] memberNames = {"X", "Y", "Z", "TIME"};
             and
                 boolean[] isMemberSelected = {true, false, false, true};
             members "X" and "TIME" are selected for read and write.

      - ##### memberNames

            String[] memberNames

        The names of members of the compound dataset.

      - ##### memberOrders

            int[] memberOrders

        Returns array containing the total number of elements of the members of this compound dataset.

        For example, a compound dataset COMP has members of A, B and C as

                 COMP {
                     int A;
                     float B[5];
                     double C[2][3];
                 }

        memberOrders is an integer array of {1, 5, 6} to indicate that member A has one element, member B has 5 elements, and member C has 6 elements.

      - ##### memberTypes

            Datatype[] memberTypes

        The datatypes of compound members.

      - ##### numberOfMembers

            int numberOfMembers

        The number of members of the compound dataset.

  - ### Class hdf.object.Dataset extends HObject implements Serializable

    serialVersionUID:
      -3360885430038261178L

    - #### Serialized Fields

      - ##### chunkSize

            long[] chunkSize

        The array of dimension sizes for a chunk.

      - ##### compression

            StringBuilder compression

        The compression information.

      - ##### convertByteToString

            boolean convertByteToString

        Flag to indicate if the byte[] array is converted to strings

      - ##### datatype

            Datatype datatype

        The datatype object of the dataset.

      - ##### dimNames

            String[] dimNames

        Array of strings that represent the dimension names. It is null if dimension names do not exist.

      - ##### dims

            long[] dims

        The current dimension sizes of the dataset

      - ##### filters

            StringBuilder filters

        The filters information.

      - ##### inited

            boolean inited

        Flag to indicate if this dataset has been initialized

      - ##### isDataLoaded

            boolean isDataLoaded

        Flag to indicate if data values are loaded into memory.

      - ##### maxDims

            long[] maxDims

        The max dimension sizes of the dataset

      - ##### nPoints

            long nPoints

        The number of data points in the memory buffer.

      - ##### rank

            int rank

        The number of dimensions of the dataset.

      - ##### selectedDims

            long[] selectedDims

        Array that contains the number of data points selected (for read/write) in each dimension.

        The selected size must be less than or equal to the current dimension size. A subset of a rectangle selection is defined by the starting position and selected sizes.

        For example, if a 4 X 5 dataset is as follows:

                 0,  1,  2,  3,  4
                10, 11, 12, 13, 14
                20, 21, 22, 23, 24
                30, 31, 32, 33, 34
             long[] dims = {4, 5};
             long[] startDims = {1, 2};
             long[] selectedDims = {3, 3};
             then the following subset is selected by the startDims and selectedDims above:
                 12, 13, 14
                 22, 23, 24
                 32, 33, 34

      - ##### selectedIndex

            int[] selectedIndex

        Array that contains the indices of the dimensions selected for display.

        selectedIndex[] is provided for two purposes:

        1. selectedIndex[] is used to indicate the order of dimensions for display, i.e. selectedIndex[0] = row, selectedIndex[1] = column and selectedIndex[2] = depth. For example, for a four dimension dataset, if selectedIndex[] is {1, 2, 3}, then dim[1] is selected as row index, dim[2] is selected as column index and dim[3] is selected as depth index.
        2. selectedIndex[] is also used to select dimensions for display for datasets with three or more dimensions. We assume that applications such as HDFView can only display data up to three dimensions (a 2D spreadsheet/image with a third dimension that the 2D spreadsheet/image is cut from). For datasets with more than three dimensions, we need selectedIndex[] to store which three dimensions are chosen for display. For example, for a four dimension dataset, if selectedIndex[] = {1, 2, 3}, then dim[1] is selected as row index, dim[2] is selected as column index and dim[3] is selected as depth index. dim[0] is not selected. Its location is fixed at 0 by default.

      - ##### selectedStride

            long[] selectedStride

        The number of elements to move from the start location in each dimension. For example, if selectedStride[0] = 2, every other data point is selected along dim[0].

      - ##### startDims

            long[] startDims

        The starting position of each dimension of a selected subset. With both the starting position and selected sizes, the subset of a rectangle selection is fully defined.

      - ##### storage

            StringBuilder storage

        The storage information.

      - ##### storageLayout

            StringBuilder storageLayout

        The storage layout information.

  - ### Class hdf.object.Datatype extends HObject implements Serializable

    serialVersionUID:
      -581324710549963177L

    - #### Serialized Fields

      - ##### arrayDims

            long[] arrayDims

        The dimensions of the ARRAY element of an ARRAY datatype.

      - ##### baseType

            Datatype baseType

        The base datatype of this datatype (null if this datatype is atomic).

      - ##### compoundMemberNames

            List<String> compoundMemberNames

        The list of names of members of a compound Datatype.

      - ##### compoundMemberOffsets

            List<Long> compoundMemberOffsets

        The list of offsets of members of a compound Datatype.

      - ##### compoundMemberTypes

            List<Datatype> compoundMemberTypes

        The list of types of members of a compound Datatype.

      - ##### datatypeClass

            int datatypeClass

        The class of the datatype.

      - ##### datatypeDescription

            String datatypeDescription

      - ##### datatypeOrder

            int datatypeOrder

        The byte order of the datatype. Valid values are ORDER_LE, ORDER_BE, and ORDER_VAX.

      - ##### datatypeSign

            int datatypeSign

        The sign of the datatype.

      - ##### datatypeSize

            long datatypeSize

        The size (in bytes) of the datatype.

      - ##### enumMembers

            Map<String,​String> enumMembers

        The (name, value) pairs of enum members.

      - ##### isNamed

            boolean isNamed

        Determines whether this datatype is a named datatype

      - ##### isVariableStr

            boolean isVariableStr

      - ##### isVLEN

            boolean isVLEN

        Determines whether this datatype is a variable-length type.

  - ### Class hdf.object.FileFormat extends File implements Serializable

    serialVersionUID:
      -4700692313888420796L

    - #### Serialized Fields

      - ##### fid

            long fid

        File identifier. -1 indicates the file is not open.

      - ##### fullFileName

            String fullFileName

        The absolute pathname (path+name) of the file.

      - ##### isReadOnly

            boolean isReadOnly

        Flag indicating if the file access is read-only.

      - ##### max_members

            int max_members

        Current Java applications, such as HDFView, cannot handle files with large numbers of objects due to JVM memory limitations. For example, 1,000,000 objects is too many. max_members is defined so that applications such as HDFView will load up to max_members objects starting with the start_members -th object. The implementing class has freedom in its interpretation of how to "count" objects in the file.

      - ##### start_members

            int start_members

  - ### Class hdf.object.Group extends HObject implements Serializable

    serialVersionUID:
      3913174542591568052L

    - #### Serialized Fields

      - ##### memberList

            List<HObject> memberList

        The list of members (Groups and Datasets) of this group in memory.

      - ##### nMembersInFile

            int nMembersInFile

        Total number of members of this group in file.

      - ##### parent

            Group parent

        The parent group where this group is located. The parent of the root group is null.

  - ### Class hdf.object.HObject extends Object implements Serializable

    serialVersionUID:
      -1723666708199882519L

    - #### Serialized Fields

      - ##### fileFormat

            FileFormat fileFormat

        The file which contains the object

      - ##### filename

            String filename

        The full path of the file that contains the object.

      - ##### fullName

            String fullName

        The full name of the data object, i.e. "path + name"

      - ##### linkTargetObjName

            String linkTargetObjName

        The name of the Target Object that is being linked to.

      - ##### name

            String name

        The name of the data object. The root group has its default name, a slash. The name can be changed except the root group.

      - ##### oid

            long[] oid

        Array of long integer storing unique identifier for the object.

        HDF4 objects are uniquely identified by a (tag_id, ref_id) pair. i.e. oid[0] = tag, oid[1] = ref_id.
        HDF5 objects are uniquely identified by an object reference. i.e. oid[0] = obj_id.

      - ##### path

            String path

        The full path of the data object. The full path always starts with the root, a slash. The path cannot be changed. Also, a path must be ended with a slash. For example, /arrays/ints/

  - ### Class hdf.object.ScalarDS extends Dataset implements Serializable

    serialVersionUID:
      8925371455928203981L

    - #### Serialized Fields

      - ##### fillValue

            Object fillValue

        The fill value of the dataset.

      - ##### filteredImageValues

            List<Number> filteredImageValues

      - ##### imageDataRange

            double[] imageDataRange

        The min-max range of image data values. For example, [0, 255] indicates the min is 0, and the max is 255.

      - ##### interlace

            int interlace

        The interlace mode of the stored raster image data. Valid values are INTERLACE_PIXEL, INTERLACE_LINE and INTERLACE_PLANE.

      - ##### isDefaultImageOrder

            boolean isDefaultImageOrder

        Flag to indicate if the dataset is displayed as an image with default order of dimensions.

      - ##### isFillValueConverted

            boolean isFillValueConverted

        Flag to indicate if the FillValue is converted from unsigned C.

      - ##### isImage

            boolean isImage

        True if this dataset is an image.

      - ##### isImageDisplay

            boolean isImageDisplay

        Flag to indicate if the dataset is displayed as an image.

      - ##### isText

            boolean isText

        True if this dataset is ASCII text.

      - ##### isTrueColor

            boolean isTrueColor

        True if this dataset is a true color image.

      - ##### palette

            byte[][] palette

        The indexed RGB color model with 256 colors.

        The palette values are stored in a two-dimensional byte array and arrange by color components of red, green and blue. palette[][] = byte[3][256], where, palette[0][], palette[1][] and palette[2][] are the red, green and blue components respectively.

      - ##### unsignedConverted

            boolean unsignedConverted

        Flag to indicate is the original unsigned C data is converted.

- ## Package hdf.object.fits

  - ### Class hdf.object.fits.FitsDataset extends ScalarDS implements Serializable

    serialVersionUID:
      3944770379558335171L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### nativeDataset

            nom.tam.fits.BasicHDU nativeDataset

  - ### Class hdf.object.fits.FitsDatatype extends Datatype implements Serializable

    serialVersionUID:
      6545936196104493765L

    - #### Serialized Fields

      - ##### nativeType

            long nativeType

  - ### Class hdf.object.fits.FitsFile extends FileFormat implements Serializable

    serialVersionUID:
      -1965689032980605791L

    - #### Serialized Fields

      - ##### fitsFile

            nom.tam.fits.Fits fitsFile

        the fits file

      - ##### rootObject

            HObject rootObject

        The root object of the file hierarchy.

  - ### Class hdf.object.fits.FitsGroup extends Group implements Serializable

    serialVersionUID:
      4993155577664991838L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

- ## Package hdf.object.h4

  - ### Class hdf.object.h4.H4Attribute extends Attribute implements Serializable

    serialVersionUID:
      2072473407027648309L

  - ### Class hdf.object.h4.H4Datatype extends Datatype implements Serializable

    serialVersionUID:
      -1342029403385521874L

  - ### Class hdf.object.h4.H4File extends FileFormat implements Serializable

    serialVersionUID:
      8985533001471224030L

    - #### Serialized Fields

      - ##### flag

            int flag

        the file access flag.

      - ##### grid

            long grid

        The GR interface identifier. The identifier is returned by GRstart(fid), which initializes the GR interface for the file specified by the parameter. GRstart(fid) is an expensive call. It should be called only once. Calling GRstart(fid) in a loop should be avoided.

      - ##### isNetCDF

            boolean isNetCDF

      - ##### objList

            List objList

        The list of unique (tag, ref) pairs. It is used to avoid duplicate objects in memory.

      - ##### rootObject

            HObject rootObject

        The root object of this file.

      - ##### sdid

            long sdid

        The SDS interface identifier. The identifier is returned by SDstart(fname, flag), which initializes the SD interface for the file specified by the parameter. SDstart(fname, flag) is an expensive call. It should be called only once. Calling SDstart(fname, flag) in a loop should be avoided.

      - ##### showAll

            boolean showAll

        secret flag: show CDF0.0, etc., to help debug

  - ### Class hdf.object.h4.H4GRImage extends ScalarDS implements Serializable

    serialVersionUID:
      1029672744963360976L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### datatypeID

            long datatypeID

        the datatype identifier

      - ##### grid

            long grid

        The GR interface identifier obtained from GRstart(fid)

      - ##### nAttributes

            int nAttributes

      - ##### ncomp

            int ncomp

        The number of components in the raster image

  - ### Class hdf.object.h4.H4Group extends Group implements Serializable

    serialVersionUID:
      3785240955078867900L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### nAttributes

            int nAttributes

  - ### Class hdf.object.h4.H4SDS extends ScalarDS implements Serializable

    serialVersionUID:
      2557157923292438696L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### datatypeID

            long datatypeID

        the datatype identifier

      - ##### nAttributes

            int nAttributes

      - ##### sdid

            long sdid

        The SDS interface identifier obtained from SDstart(filename, access)

  - ### Class hdf.object.h4.H4Vdata extends CompoundDS implements Serializable

    serialVersionUID:
      -5978700886955419959L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### memberTIDs

            long[] memberTIDs

        The data types of the members of the compound dataset.

      - ##### nAttributes

            int nAttributes

      - ##### numberOfRecords

            int numberOfRecords

        Number of records of this Vdata table.

- ## Package hdf.object.h5

  - ### Class hdf.object.h5.H5Attribute extends Attribute implements Serializable

    serialVersionUID:
      2072473407027648309L

  - ### Class hdf.object.h5.H5CompoundDS extends CompoundDS implements Serializable

    serialVersionUID:
      -5968625125574032736L

    - #### Serialized Fields

      - ##### attributeList

            List<Attribute> attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### flatNameList

            List<String> flatNameList

        A list of names of all fields including nested fields.

        The nested names are separated by CompoundDS.SEPARATOR. For example, if compound dataset "A" has the following nested structure,

             A --> m01
             A --> m02
             A --> nest1 --> m11
             A --> nest1 --> m12
             A --> nest1 --> nest2 --> m21
             A --> nest1 --> nest2 --> m22
             i.e.
             A = { m01, m02, nest1{m11, m12, nest2{ m21, m22}}}

        The flatNameList of compound dataset "A" will be {m01, m02, nest1[m11, nest1[m12, nest1[nest2[m21, nest1[nest2[m22}

      - ##### flatTypeList

            List<Datatype> flatTypeList

        A list of datatypes of all fields including nested fields.

      - ##### isExternal

            boolean isExternal

        flag to indicate if the dataset is an external dataset

      - ##### isVirtual

            boolean isVirtual

        flag to indicate if the dataset is a virtual dataset

      - ##### nAttributes

            int nAttributes

      - ##### objInfo

            hdf.hdf5lib.structs.H5O_info_t objInfo

      - ##### virtualNameList

            List<String> virtualNameList

  - ### Class hdf.object.h5.H5Datatype extends Datatype implements Serializable

    serialVersionUID:
      -750546422258749792L

    - #### Serialized Fields

      - ##### attributeList

            List<Attribute> attributeList

        The list of attributes of this data object.

      - ##### isRefObj

            boolean isRefObj

      - ##### isRegRef

            boolean isRegRef

      - ##### nativeClass

            int nativeClass

        The native class of the datatype.

      - ##### nativeFPebias

            long nativeFPebias

        The native properties of the float datatype.

      - ##### nativeFPepos

            long nativeFPepos

      - ##### nativeFPesize

            long nativeFPesize

      - ##### nativeFPinpad

            int nativeFPinpad

      - ##### nativeFPmpos

            long nativeFPmpos

      - ##### nativeFPmsize

            long nativeFPmsize

      - ##### nativeFPnorm

            int nativeFPnorm

      - ##### nativeFPspos

            long nativeFPspos

      - ##### nativeOffset

            int nativeOffset

      - ##### nativePadLSB

            int nativePadLSB

      - ##### nativePadMSB

            int nativePadMSB

      - ##### nativePrecision

            long nativePrecision

        The native properties of the number datatype.

      - ##### nativeStrCSET

            int nativeStrCSET

      - ##### nativeStrPad

            int nativeStrPad

        The native properties of the string datatype.

      - ##### nAttributes

            int nAttributes

      - ##### objInfo

            hdf.hdf5lib.structs.H5O_info_t objInfo

      - ##### opaqueTag

            String opaqueTag

        The tag for an opaque datatype.

  - ### Class hdf.object.h5.H5File extends FileFormat implements Serializable

    serialVersionUID:
      6247335559471526045L

    - #### Serialized Fields

      - ##### flag

            int flag

        the file access flag. Valid values are HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5F_ACC_RDWR and HDF5Constants.H5F_ACC_CREAT.

      - ##### indexOrder

            int indexOrder

        The index order. Valid values are HDF5Constants.H5_ITER_INC, HDF5Constants.H5_ITER_DEC.

      - ##### indexType

            int indexType

        The index type. Valid values are HDF5Constants.H5_INDEX_NAME, HDF5Constants.H5_INDEX_CRT_ORDER.

      - ##### libver

            int[] libver

        The library version bounds

      - ##### rootObject

            HObject rootObject

        The root object of the file hierarchy.

  - ### Class hdf.object.h5.H5Group extends Group implements Serializable

    serialVersionUID:
      -951164512330444150L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### nAttributes

            int nAttributes

      - ##### obj_info

            hdf.hdf5lib.structs.H5O_info_t obj_info

  - ### Class hdf.object.h5.H5Link extends HObject implements Serializable

    serialVersionUID:
      -8137277460521594367L

    - #### Serialized Fields

      - ##### obj_info

            hdf.hdf5lib.structs.H5O_info_t obj_info

  - ### Class hdf.object.h5.H5ScalarDS extends ScalarDS implements Serializable

    serialVersionUID:
      2887517608230611642L

    - #### Serialized Fields

      - ##### attributeList

            List<Attribute> attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### isExternal

            boolean isExternal

        flag to indicate if the dataset is an external dataset

      - ##### isNativeDatatype

            boolean isNativeDatatype

        flag to indicate if the datatype in file is the same as dataype in memory

      - ##### isVirtual

            boolean isVirtual

        flag to indicate is the dataset is a virtual dataset

      - ##### nAttributes

            int nAttributes

      - ##### objInfo

            hdf.hdf5lib.structs.H5O_info_t objInfo

      - ##### paletteRefs

            byte[] paletteRefs

        The byte array containing references of palettes. Each reference requires eight bytes storage. Therefore, the array length is 8*numberOfPalettes.

      - ##### virtualNameList

            List<String> virtualNameList

- ## Package hdf.object.nc2

  - ### Class hdf.object.nc2.NC2Attribute extends Attribute implements Serializable

    serialVersionUID:
      2072473407027648309L

  - ### Class hdf.object.nc2.NC2Dataset extends ScalarDS implements Serializable

    serialVersionUID:
      -6031051694304457461L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### nativeDataset

            ucar.nc2.Variable nativeDataset

  - ### Class hdf.object.nc2.NC2Datatype extends Datatype implements Serializable

    serialVersionUID:
      5399364372073889764L

    - #### Serialized Fields

      - ##### nativeType

            ucar.ma2.DataType nativeType

  - ### Class hdf.object.nc2.NC2File extends FileFormat implements Serializable

    serialVersionUID:
      6941235662108358451L

    - #### Serialized Fields

      - ##### ncFile

            ucar.nc2.NetcdfFile ncFile

        the netcdf file

      - ##### objList

            List objList

        The list of unique (tag, ref) pairs. It is used to avoid duplicate objects in memory.

      - ##### rootObject

            HObject rootObject

        The root object of this file.

  - ### Class hdf.object.nc2.NC2Group extends Group implements Serializable

    serialVersionUID:
      -1261533010442193447L

    - #### Serialized Fields

      - ##### attributeList

            List attributeList

        The list of attributes of this data object. Members of the list are instance of Attribute.

      - ##### netcdfAttributeList

            List netcdfAttributeList

      - ##### netcdfDimensionList

            List netcdfDimensionList

      - ##### netCDFGroup

            ucar.nc2.Group netCDFGroup

        The corresponding netcdf Group for this group.

      - ##### netcdfTypedefList

            List netcdfTypedefList

        The list of netcdf typedefs, dimensions and attributes of this data object. Members of the list are instance of ucar.nc2.*.