HOME > HDF-JAVA-HTML > HDFVIEW > USERSGUIDE
[Index] [1] [2] [3] [4] [5] [6] [7]
- 1.0 What It Is
- 1.1 About This Release
- 1.2 Current Features
- 1.3 Limitations
- 1.4 System Requirements
- 1.5 Installing and Running HDFView
- 1.6 For Further Information
1.0 What It Is
The HDFView is a Java-based tool for browsing and editing NCSA HDF4 and HDF5 files. HDFView allows users to browse through any HDF4 and HDF5 file; starting with a tree view of all top-level objects in an HDF file's hierarchy. HDFView allows a user to descend through the hierarchy and navigate among the file's data objects. The content of a data object is loaded only when the object is selected, providing interactive and efficient access to HDF4 and HDF5 files. HDFView editing features allow a user to create, delete, and modify the value of HDF objects and attributes.
The HDFView user interface is designed to be easy to use and intuitive. HDFView was implemented by using JavaTM 2 Platform that is designed to be machine-independent. The interface and features of the HDFView are the same for all platforms. HDFView displays the structure of the HDF file in a tree with data groups and data objects represented as conventional folders and icons. Users can easily expand or collapse folders to navigate the hierarchical structure of an HDF file.
1.1 About This Release
This release includes bug fixes, new features, test suite, and improved documentation.
HDF libraries
This release was built with HDF4.2r2 and HDF5-1.6.6
Platforms
This release was built and tested for the follwing platforms:32-bit Java 2 SDK
- Linux
- Solaris
- Mac PowerPC
- Mac Intel
- Windows (Vista/XP/2000)
64-bit Java 2 SDK
- Linux 64-bit AMD
- Solaris 64-bit
The following platforms are droped from this release
- AIX
- Irix
- OSF1
New features
There are a lot of new features added to the release. The following is a list of major new features.- Support for compound datatypes containing 2D arrays (or greater)
- Create/display named datatypes in an HDF5 file
- Copy object to same group w/different name
- Allow creation of dataset with enum type/named datatype
- Support for "filtering fillvalue" to Image Viewer
- Show actual palette that results from palette manipulation
- Add ability to create a chunked dataset with compound datatype
- Deal with large number of 8kx8k 3D images by reuse the memory data buffer
- Add -geometry switch to set the window size and location
- Support large Fonts in GUI components
- Mouse Grab/Move to browse an image
- Shift+Mouse_drag to select an image region
- Add autogain algorithm for image Brightness/Contrast
Bug fix
There are many bug fixes in HDF-Java 2.4. One of the major bugs is the memory leak as explained in the following.In HDF-Java 2.3 or earlier version, an attribute and datatype were left open when the file structure was retrieved from a file. The following code will build up the memory leak until the machine is out of memory.
while (true)
{
H5File f=new H5File(fname, H5File.READ);
f.open();
f.close();
}
Another memory leak is at compound datasets. When a compound dataset is open, we
keep the datatypes of the compound fields in memory so that we can reuse them for
better perfomance. However, these datatypes were not closed when the file is closed.
The following code will make the JVM run out of memory.
while (true)
{
final H5File file = new H5File(fname, H5File.READ);
final Dataset dset = (Dataset)file.get("/Table0");
dset.init();
file.close();
}
Other enhancements
- Test suite
- Using the junit test frame, we build a test suite to test all the public APIs in the object package (ncsa.hdf.object) and the HDF5 object package (ncsa.hdf.object.h5). The test suite is added into the source configuration to make it easy to run by "make check"
- Improved documentation
- All the public APIs in the object package (ncsa.hdf.object) and the HDF5 object package (ncsa.hdf.object.h5) are fully documented.
1.2 Features
This version fixed bugs from previous versions and added a few new and enhanced features. It is a continuous work from previous HDFView with a major new feature: replaceable I/O and GUI modules.version is user-configurable to support HDF4 or HDF5 or both. Users can choose HDFView features to support HDF4 or HDF5 or both when installing HDFView or compiling from the source code.
The following is a list of the browsing and editing features of HDFView. Details of the features are discussed in their related chapters.
1.2.1 Browsing Features
- Display data with optional GUI modules.
- Support netCDF and fits file format with read-only.
- Animation display of 3D images.
- Display HDF5 user block in text, oct, hex and etc.
- Option to show char dataset as text.
- Display nested compound dataset.
- Show multi-dimension compound dataset.
- Show text attributes and text dataset in selected fonts.
- Change image brightness
- Open multiple HDF4 or HDF5 files.
- Display file hierarchy in a tree and allow users to navigate among the file's data objects.
- Show dataset as an image, a table or text.
- Allow users to select a subset of dataset to display.
- Show attributes and other general information of data objects.
- Display line plot for selected table data, and histogram for selected image area.
- Display simple compound dataset (non-nested compound datatype) in a table.
- Support simple image manipulation: zooming image in/out, flipping image horizontally or vertically, and showing palette for index RGB image.
- Allow displaying any of three dimensions of a multiple dimension dataset.
- Allow users to specify stride of dataset selection.
- Allow users to selection select fields/members of VData/compound dataset to display.
- Display file information, such as file size, total number of datasets.
- Open file as read only.
- Show preview image for selecting subset.
- Support multiple color tables for HDF5 images.
- Display color table in separate red/green/blue lines.
- Quick view of metadata.
- View variable-length datasets (in compound or nested compound)
- View ENUM dataset
- View compound/varaible-length attributes
- Show indicator of attributes (objects with attribute attached)
- Slider bar for modifying image threshold range
- Support for HDF5-SRB (object level access to remote files on distributed system)
- Support for compound datatypes containing 2D arrays (or greater)
- Create/display named datatypes in HDF5
- Create link in hdf5
- Improve ability to manipulate palette
- Select row/colunm data as X axis for xy plot in the table view
1.2.2 Editing Features
- Add more user options such as default starting directory or file extension.
- Rename HDF5 object.
- Edit HDF5 compound dataset.
- Change and save user options such as recent files, delimiter, and font size.
- Save current file into the same type (HDF4 to HDF4, HDF5 to HDF5).
- Add/delete object in the file (no deletion for HDF4).
- Copy/paste object in the same file.
- Copy/paste object between files of the same file format (HDF4 to HDF4, HDF5 to HDF5).
- Add/delete a group and all its decendents (no deletion for HDF4).
- Modify and save data values in spreadsheet.
- Create new dataset with simple datatype such as SDS, atomic data array.
- Copy/paste data values of dataset.
- Save single dataset into ASCII text file.
- Save a single image to JPEG file.
- Add/delete attribute (no deletion for HDF4).
- Modify and save attibute value.
- Convert JPEG image file into HDF4/HDF5 file.
- Save HDF4/HDF5 image into JPEG image file.
- Save single data object into HDF file.
- Update datasets of references when a file is saved into a new file.
- Import data values from text file.
- Create new dataset/image out of existing dataset/image.
- Modify string dataset.
- Simple math calculation and statistic summary.
- Create empty image with default image attributes.
- Modify image color table.
- Create empty HDF5 compound dataset.
- Add and modify user blocks.
1.3 Limitations
The current implementation of HDFView has the following limitations.
- HDFView does not support undo operation; all the changes will go to the physical file, and the editing results cannot be recovered.
- Deleting object/attribute in HDF4 is not supported.
- HDFView does not support conversion between HDF4 and HDF5.
- HDFView does not display named datatypes.
- HDFView supports only indexed image with RGB color model or 24-bit true color image. It does not support other color models such as CMYK and HSV.
- Opening a large image or dataset may cause an "out of memory" error due to the limitations of the Java virtual machine.
- HDFView is implemented in JavaTM 2 Platform. It builds and runs on jdk1.5.x. It does not buid on jdk1.4.x or earlier version.
1.4 System Requirements
The HDFView is distributed in two forms: No_VM_bundled and VM_bundled. The No_VM_bundled distribution does not contain the Java Runtime Environment (JRE) while the VM_bundled distribution bundles the JRE.To run HDFView with No_VM_bundled distribution, JDK1.5+ is required. The HDFView does not compile on jdk1.4.x or earlier version.
Download Java 2 Platform at:
- JavaTM 2 Platform, Standard Edition (Windows, Solaris, Linux)
HDFView 1.3 has been built and tested on the following platforms:
- Linux
- Solaris
- Windows 95/98/2000/NT/XP
- MAC OS X
1.5 Installation
The source and pre-built binaries for HDFView can be downloaded from:ftp://ftp.hdfgroup.org/HDF5/hdf-java
The pre-built binaries are available in two forms: No_VM_bundled, and VM_bundled.
| Platform | Download | File size |
|---|---|---|
Java Virtual Machine Bundled |
||
| Linux | hdfview_install_linux_vm.bin | 60M |
| Solaris | hdfview_install_solaris_vm.bin | 61M |
| Windows | hdfview_install_windows_vm.exe | 34M |
Java Virtual Machine Required |
||
| Linux | hdfview_install_linux_novm.bin | 11M |
| Mac Intel | hdfview_install_macosx_intel_novm.zip | 7.3M |
| Mac PowerPC | hdfview_install_macosx_novm.zip | 8.2M |
| Solaris | hdfview_install_solaris_novm.bin | 17M |
| Windows | hdfview_install_windows_novm.exe | 7.9M |
| Platform | Download | File size |
|---|---|---|
Java Virtual Machine Bundled |
||
| Linux | 64-bit AMD hdfview_install_linux64amd_vm.bin | 49M |
Java Virtual Machine Required |
||
| Linux | 64-bit AMD hdfview_install_linux64amd_novm.bin | 9.0M |
| Solaris | 64-bit SPARC hdfview_install_solaris64_novm.bin | 11M |
Java Virtual Machine Required
The NoVM_bundled binary distribution does not contain the Java 2 Runtime Environment. The NoVM_bundled requires JDK1.5.0 or above. Before you install the NoVM_bundled distribution, you must have JDK1.5.0 or above installed on your machine. If you don't have a Java 2 VM, you must download and install one. As all releases of Macintosh OS X include a fully functional Java 2 Virtual Machine, there is no need for a Mac OS X JRE.Download Java 2 Platform at:
- JavaTM 2 Platform, Standard Edition (Windows, Solaris, Linux)
StandAlone Application [JRE Bundled]
JRE1.5.0 is bundled in the VM_bundled distribution. You do not need any aditional software to run HDFView.Download and installation of HDFView requires acceptance of the Java 2 Runtime Environment license agreement. Please read the Java 2 Runtime Environment Binary Code License Agreement before you download the VM_bundled distribution. The installation program will not install HDFView unless you accept the Java 2 Runtime Environment License Agreement.
Install on Unix or MAC OS X
After downloading the installation file, cd to the directory where you downloaded the installer. At the prompt type:sh ./hdfview-xxx.bin,
where xxx is the Unix OS name such as solaris, linux or macosx. The installer will guide you to select the Java Virtual Machine and HDFView home directory (where you want to install the HDFView).
Install on Windows
After downloading, double-clickhdfview-windows.exe.
The installer will guide you to select the Java Virtual Machine and
HDFView home directory (where you want to install the HDFView). After
installing, you can launch the HDFView from
Start -> Program Files -> NCSA HDFView
1.6 For Further Information
General information about HDF (HDF4 and HDF5) is available at: http://www.hdfgroup.org/Information about the HDFView tool and related products is available at:
/hdf-java-html/
Questions and feedback may be sent to the HDF Helpdesk.
