The H5R APIs were extended Information on the changes to references in HDF5-1.12 to support external references and attributes and to support the Virtual Object Layer (VOL). Information on these changes can be found below:
In order to support the new reference features several The H5R APIs were extended in HDF5-1.12 to support external references and attributes and to support the Virtual Object Layer (VOL). Several functions were introduced:
- Create (H5R_CREATE*) functions were added for each reference type (attribute, object, and dataset region):
H5R_CREATE_ATTR, H5R_CREATE_OBJECT, H5R_CREATE_REGION
- A function was added to release a reference ( ). This is required because a region reference no longer modifies the original file.
- Functions were added to query references (H5R_GET*):
H5R_GET_ATTR_NAME, H5R_GET_FILE_NAME, H5R_GET_OBJ_NAME, H5R_GET_OBJ_TYPE3, H5R_GET_TYPE
- Other functions were added to simplify or clarify the API.
In order to support the Virtual Object Layer
See the RFC for details on the changes that were made.
The H5R functions that were introduce in HDF5-1.12 are described below.
|H5R_COPY||Copies an existing reference|
|H5R_CREATE_ATTR||Creates an attribute reference|
|H5R_CREATE_OBJECT||Creates an object reference|
|H5R_CREATE_REGION||Creates a region reference|
|H5R_DECODE||Decodes a reference from a buffer||H5R_DESTROY||Closes a reference|
|H5R_ENCODE||Encodes a reference into a buffer||H5R_EQUAL||Determines whether two references are equal|
|H5R_GET_ATTR_NAME||Retrieves the attribute name for a referenced object|
|H5R_GET_FILE_NAME||Retrieves the file name for a referenced object|
|H5R_GET_OBJ_NAME||Retrieves the object name for a referenced object|
|H5R_GET_OBJ_TYPE3||Retrieves the type of object that an object reference points to|
|H5R_GET_TYPE||Retrieves the type of reference|
|H5R_OPEN_ATTR||Opens the referenced HDF5 attribute|
|H5R_OPEN_OBJECT||Opens the referenced HDF5 object|
|H5R_OPEN_REGION||Sets up a dataspace and selection as specified by a region reference|