hdf5-hl-sys 0.2.0

Bindings to HDF5 High Level API
Documentation
use core::ffi::{c_char, c_int, c_size_t, c_void};
use hdf5_sys::{
    h5::{herr_t, hsize_t},
    h5i::hid_t,
};

extern "C" {
    pub fn H5PTcreate(
        loc_id: hid_t,
        ptable_name: *const c_char,
        dtype_id: hid_t,
        chunk_size: hsize_t,
        plist_id: hid_t,
    ) -> hid_t;
    #[deprecated(note = "deprecated in HDF5 1.10.0, use H5PTcreate")]
    pub fn H5PTcreate_fl(
        loc_id: hid_t,
        ptable_name: *const c_char,
        dtype_id: hid_t,
        chunk_size: hsize_t,
        compression: c_int,
    ) -> hid_t;
    pub fn H5PTopen(loc_id: hid_t, dset_name: *const c_char) -> hid_t;
    pub fn H5PTclose(table_id: hid_t) -> herr_t;

    pub fn H5PTappend(table_id: hid_t, nrecords: c_size_t, data: *const c_void) -> herr_t;

    pub fn H5PTcreate_index(table_id: hid_t) -> herr_t;
    pub fn H5PTset_index(table_id: hid_t, pt_index: hsize_t) -> herr_t;
    pub fn H5PTget_index(table_id: hid_t, pt_index: *mut hsize_t) -> herr_t;

    pub fn H5PTread_packets(
        table_id: hid_t,
        start: hsize_t,
        nrecords: c_size_t,
        data: *mut c_void,
    ) -> herr_t;
    pub fn H5PTget_next(table_id: hid_t, nrecords: c_size_t, data: *mut c_void) -> herr_t;
    pub fn H5PTget_dataset(table_id: hid_t) -> hid_t;
    pub fn H5PTget_type(table_id: hid_t) -> hid_t;

    pub fn H5PTget_num_packets(table_id: hid_t, nrecords: *mut hsize_t) -> herr_t;
    pub fn H5PTis_valid(table_id: hid_t) -> herr_t;
    pub fn H5PTis_varlen(table_id: hid_t) -> herr_t;

    pub fn H5PTfree_vlen_buff(table_id: hid_t, bufflen: hsize_t, buff: *mut c_void) -> herr_t;
}