The current HDF-Java products can be downloaded at: http://www.hdfgroup.org/downloads/ HDF Libraries ============================================================================= This release was built and tested with HDF 4.2.10 and HDF5 1.8.14. JDK ============================================================================= This release was built and tested with JDK 1.7. Platforms ============================================================================== This release was built and tested for the following platforms: 64-bit distribution -- runs on 64-bit systems with 64-bit JRE only * Linux * Mac Intel * Solaris * Windows 32-bit distribution -- runs on 32-bit systems with 32-bit JRE * Windows Changes to the Java HDF5 Interface(JHI5) ============================================================================== * JAVA-1882: Changed OPEN_IDS from Vector to LinkedHashSet. Deprecated int getOpenID (int index) function. Add trace logging to all id create/close functions. Major Enhancements ============================================================================== * Attributes can write simple, one dimensional variable-length datatypes. Major Bug Fixes ============================================================================== * JAVA-1840: Issues with bit mask selection and usage. * JAVA-1837: Fixed support for scalar images and attributes. * JAVA-1844: Add slf4j logging document with example. * JAVA-1840, JAVA-1854, JAVA-1862: Issues with bit mask selection and usage. * JAVA-1847: Notification added to display fields that couldn't be read in datasets. * JAVA-1666, JAVA-1878, JAVA-1880: Issues with filters and dynamic loading. * JAVA-183: Correctly show bitfield and opaque datatypes. * JAVA-1855: Object and Dataset Region references can be selected and viewed. * JAVA-1853: Fix issue with any stride above 2 causing an off-by-one-error and not displaying the last row/column. * JAVA-1863: If attribute is of Integer class, set the correct type and size. * Improved internal management of compound datatypes, limitations still apply. * Improved usage of user.dir and user.home properties as defaults to hdfview.root and new property hdfview.workdir properties. This also fixed issues with the location for the open file dialog. Limitations / Known Problems ============================================================================== * HDFView updates attribute changes directly to the file. However, the metadata window will only update the values of attributes when focus is changed in the treeview. The metadata window will only show the name change when the file is reloaded. * HDFView does not support undo operations; the editing results go to files and cannot be recovered. * HDFView does not support conversion between HDF4 and HDF5. * HDFView supports only indexed images with RGB color model or 24-bit true color images. * Directly using multiple dimensional arrays causes a performance problem because there is no direct mapping for multiple dimensional arrays between Java and C. * HDF 4 APIs with function pointers are not supported in HDF-Java. * HDF 5 APIs with function pointers are selectively supported in HDF-Java. * Specific to HDF4: -- Deleting an object or attribute from an HDF4 file is not supported. Deleting objects in HDF4 may leave dangling objects or corrupt the file. -- HDFView cannot modify compressed HDF4 SDS if the rank is greater than two because the existing compression algorithms supported by HDF do not allow partial modification to a compressed data stream. -- HDFView cannot modify HDF4 vdata. HDF4 only writes vdata by records. HDF-Java reads data by vdata fields because HDF-Java does not support the data structure of a vdata record. * Specific to HDF5: -- Writing compound data is limited to simple cases. For example, base compound fields that have primitive types such as integers, floats, or characters can be written. HDFView does not write complex compound data. For example, HDFView cannot write a dataset that has a compound datatype with a region reference. -- Writing variable-length data is not supported except for datasets where each data point is a single variable-length string or a one dimensional integer type. -- There is no single JNI function that can handle HDF5 library functions that have different return types for version 1.6 and version 1.8. An additional function has been added to the JNI. For example, * public synchronized static native int H5Tget_size(int type_id) * public synchronized static native long H5Tget_size_long(int type_id) Other Notes ==============================================================================