Crate hdf5 [] [src]

Interface to HDF5.

Example

extern crate hdf5;

use hdf5::File;

let path = "data.h5";
let file = File::new(path).unwrap();

file.write("foo", 42).unwrap();
file.write("bar", &vec![42.0, 69.0]).unwrap();

Complex structures can be written using rustc-serialize as follows:

extern crate hdf5;
extern crate rustc_serialize;

use hdf5::{Encoder, File};
use rustc_serialize::Encodable;

#[derive(RustcEncodable)]
struct Foo {
    bar: Vec<f64>,
    baz: Baz,
}

#[derive(RustcEncodable)]
struct Baz {
    qux: f64,
}

let foo = Foo {
    bar: vec![42.0],
    baz: Baz {
        qux: 69.0,
    },
};

let path = "data.h5";
let file = File::new(path).unwrap();

let mut encoder = Encoder::new(&file, "foo").unwrap();
foo.encode(&mut encoder).unwrap()

Structs

Datatype

A datatype.

Decoder

A decoder.

Encoder

An encoder.

Error

An error.

File

A file.

Slice

A slice.

Traits

Data

A type suitable for storing.

Identity

A type that has an identifier.

IntoData

A type capable of converting itself into data.

Functions

version

Return the version number of HDF5.

Type Definitions

ID

An identifier.

Result

A result.