Skip to content

A library for reading hdf5 files with GNU Octave

License

Notifications You must be signed in to change notification settings

jromazanov/hdf5oct

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hdf5oct - a HDF5 wrapper for GNU Octave
=======================================

Copyright 2012 Tom Mullins
Copyright 2015 Tom Mullins, Anton Starikov, Thorsten Liebig, Stefan Großhauser
Copyright 2008-2013 Andrew Collette

This is a library for GNU Octave for reading hdf5 files. At the moment it
provides the following functions:

 h5read: modeled after Matlab's h5read, which can read subsets of a
 	 dataset.  Octave's load function will attempt to read an
 	 entire dataset, which for very large datasets is
 	 undesired. h5util's h5read function does slightly better,
 	 reading only 2d slices of 3d datasets, but that's still
 	 fairly limiting. This exposes libhdf5's H5Sselect_hyperslab
 	 in a way which tries to be compatible with Matlab.

 h5readatt: Most of this function was written by thliebig. It allows
 	    to read scalar HDF5 attributes of some types.

 h5write: Write a matrix to a dataset. This
          will either overwrite an already existing dataset, or allow to
	  append hyperslabs to existing datasets.

 h5writeatt: Attach an attribute to an object.

 h5create: Create a dataset and specify its extent dimensions,
           datatype and chunk size.

 h5delete: Delete a group, dataset, or attribute.

Note that only few of the HDF5 datatypes are supported by each of the
functions hdf5oct at the moment, typically one or several of double,
integer and string.

# INSTALLATION #########################

To install, just use

    make
    
This will produce a package file named "hdf5oct-*.tar.gz" .  Then
you may either install the package with

    make install

or you may start GNU Octave and install the package manually (using
the correct file name) with the command

    pkg install hdf5oct-0.2.0.tar.gz

This will put the *.oct files somewhere where Octave will find them.
You can try running

    make test


# DEINSTALLATION #########################

To uninstall the package you may want to use

   make uninstall

# TODO #################################

- write h5info, h5disp

- support compression flags for h5create

- read string typed datasets

- read string-array typed attributes

- write more comprehensive tests instead of a few random choices. Also
  test for error conditions.

About

A library for reading hdf5 files with GNU Octave

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 85.9%
  • MATLAB 12.4%
  • Makefile 1.7%