ddn.data.hdf5.property

HDF5 Property List Wrapper

This module provides a D wrapper for HDF5 property list operations with RAII semantics for automatic resource management.

License

BSD-3-Clause

Types 1

RAII wrapper for HDF5 property list handles.

This struct manages an HDF5 property list handle and automatically closes it when the struct goes out of scope. Copy is disabled to prevent double-close issues; use copy() for creating a duplicate or move() for transferring ownership.

Example:

// Create a file creation property list
auto fcpl = PropertyList.createFileCreate();

// Create a dataset creation property list with chunking
auto dcpl = PropertyList.createDatasetCreate();
dcpl.setChunk([100, 100]);
dcpl.setDeflate(6);

Fields
private hid_t _id
Methods
PropertyList createFileCreate()Creates a file creation property list.
PropertyList createFileAccess()Creates a file access property list.
PropertyList createDatasetCreate()Creates a dataset creation property list.
PropertyList createDatasetAccess()Creates a dataset access property list.
PropertyList createDatasetXfer()Creates a dataset transfer property list.
PropertyList createGroupCreate()Creates a group creation property list.
PropertyList createGroupAccess()Creates a group access property list.
PropertyList createLinkCreate()Creates a link creation property list.
PropertyList createLinkAccess()Creates a link access property list.
PropertyList createAttributeCreate()Creates an attribute creation property list.
PropertyList move(ref PropertyList other)Moves ownership from another PropertyList instance.
PropertyList copy()Creates a copy of this property list.
void close()Closes the property list handle.
hid_t handle() constReturns the underlying HDF5 property list handle.
bool isValid() constChecks if this property list holds a valid handle.
void setChunk(const hsize_t[] dims)Sets the chunk dimensions for a dataset creation property list.
hsize_t[] getChunk(int maxDims)Gets the chunk dimensions from a dataset creation property list.
void setDeflate(uint level)Enables DEFLATE (gzip) compression for a dataset creation property list.
void setShuffle()Enables the shuffle filter for a dataset creation property list.
void setFletcher32()Enables the Fletcher32 checksum filter for a dataset creation property list.
void setFillValue(hid_t typeId, const void * value)Sets the fill value for a dataset creation property list.
void getFillValue(hid_t typeId, void * value)Gets the fill value from a dataset creation property list.
private PropertyList createFromClass(hid_t classId, string className)
Destructors
~thisDestructor that automatically closes the property list handle.