when HDF5 is built with the VOL (Virtual Object Layer) connector that supports map operations.
License
BSD-3-Clause
HDF5 Map Operations Binding
This module provides D bindings for HDF5 map operations (H5M API). The Map API provides key-value store functionality within HDF5 files, allowing storage and retrieval of data using arbitrary keys.
when HDF5 is built with the VOL (Virtual Object Layer) connector that supports map operations.
Callback function type for map iteration.
This function type is used with H5Miterate and H5Miterate_by_name to process each key-value pair in a map.
map_id | Identifier of the map being iterated |
key | Pointer to the current key |
op_data | User-defined data passed to the iteration function |
or negative to indicate an error.
hid_t H5Mcreate(
hid_t loc_id,
const(char) * name,
hid_t key_type_id,
hid_t val_type_id,
hid_t lcpl_id,
hid_t mcpl_id,
hid_t mapl_id
) extern(C) @nogc nothrowCreates a new map object.hid_t H5Mcreate_async(
hid_t loc_id,
const(char) * name,
hid_t key_type_id,
hid_t val_type_id,
hid_t lcpl_id,
hid_t mcpl_id,
hid_t mapl_id,
hid_t es_id
) extern(C) @nogc nothrowCreates a new map object asynchronously.hid_t H5Mcreate_anon(
hid_t loc_id,
hid_t key_type_id,
hid_t val_type_id,
hid_t mcpl_id,
hid_t mapl_id
) extern(C) @nogc nothrowCreates an anonymous map object.hid_t H5Mopen(hid_t loc_id, const(char) * name, hid_t mapl_id) extern(C) @nogc nothrowOpens an existing map object.hid_t H5Mopen_async(hid_t loc_id, const(char) * name, hid_t mapl_id, hid_t es_id) extern(C) @nogc nothrowOpens an existing map object asynchronously.herr_t H5Mclose_async(hid_t map_id, hid_t es_id) extern(C) @nogc nothrowCloses a map object asynchronously.hid_t H5Mget_create_plist(hid_t map_id) extern(C) @nogc nothrowGets the creation property list of a map.hid_t H5Mget_access_plist(hid_t map_id) extern(C) @nogc nothrowGets the access property list of a map.herr_t H5Mget_count(hid_t map_id, hsize_t * count, hid_t mapl_id) extern(C) @nogc nothrowGets the number of key-value pairs in a map.herr_t H5Mput(
hid_t map_id,
hid_t key_mem_type_id,
const(void) * key,
hid_t val_mem_type_id,
const(void) * value,
hid_t mapl_id
) extern(C) @nogc nothrowAdds or updates a key-value pair in a map.herr_t H5Mput_async(
hid_t map_id,
hid_t key_mem_type_id,
const(void) * key,
hid_t val_mem_type_id,
const(void) * value,
hid_t mapl_id,
hid_t es_id
) extern(C) @nogc nothrowAdds or updates a key-value pair in a map asynchronously.herr_t H5Mget(
hid_t map_id,
hid_t key_mem_type_id,
const(void) * key,
hid_t val_mem_type_id,
void * value,
hid_t mapl_id
) extern(C) @nogc nothrowRetrieves a value from a map by key.herr_t H5Mget_async(
hid_t map_id,
hid_t key_mem_type_id,
const(void) * key,
hid_t val_mem_type_id,
void * value,
hid_t mapl_id,
hid_t es_id
) extern(C) @nogc nothrowRetrieves a value from a map by key asynchronously.herr_t H5Mexists(
hid_t map_id,
hid_t key_mem_type_id,
const(void) * key,
hbool_t * exists,
hid_t mapl_id
) extern(C) @nogc nothrowChecks if a key exists in a map.herr_t H5Miterate(
hid_t map_id,
hsize_t * idx,
hid_t key_mem_type_id,
H5M_iterate_t op,
void * op_data,
hid_t mapl_id
) extern(C) @nogc nothrowIterates over all key-value pairs in a map.herr_t H5Miterate_by_name(
hid_t loc_id,
const(char) * map_name,
hsize_t * idx,
hid_t key_mem_type_id,
H5M_iterate_t op,
void * op_data,
hid_t mapl_id
) extern(C) @nogc nothrowIterates over all key-value pairs in a map specified by name.herr_t H5Mdelete(
hid_t map_id,
hid_t key_mem_type_id,
const(void) * key,
hid_t mapl_id
) extern(C) @nogc nothrowDeletes a key-value pair from a map.