The term Macro in the “Additional notes”
    column indicates that the first item in the “Function” 
    column of the same row is a macro that is selectively mapped to one
    of the two immediately-following functions.  
    For example, H5Acreate is a macro that can be mapped to
    either H5Acreate1 or H5Acreate2.
    This mapping is configurable and is explained in 
    “API Compatibility Macros in 
    HDF5.”
    The macro structure was introduced at HDF5 Release 1.8.0.
| API | Function | All processes: same datatype & dataspace | All processes: same access properties | All processes: same creation properties | Available in releases since | Additional notes | 
|---|---|---|---|---|---|---|
| H5A | H5AcreateH5Acreate1H5Acreate2 | ✓ | ✓ | ✓ | 1.8.x | Macro The function H5Acreatewas renamed toH5Acreate1at Release 1.8.0. | 
| H5Acreate_by_name | ✓ | ✓ | ✓ | 1.8.x | ||
| H5Adelete | ||||||
| H5Adelete_by_idx | 1.8.x | |||||
| H5Adelete_by_name | 1.8.x | |||||
| H5Arename | 1.6.x | |||||
| H5Arename_by_name | 1.8.x | |||||
| H5Awrite | Because raw data for an attribute is cached locally, 
        all processes must participate in order to guarantee that 
        future H5Areadcalls return correct results 
        on all processes. | |||||
| H5D | H5DcreateH5Dcreate1H5Dcreate2 | ✓ | ✓ | ✓ | 1.8.x | Macro The function H5Dcreatewas renamed toH5Dcreate1at Release 1.8.0. | 
| H5Dcreate_anon | ✓ | ✓ | ✓ | 1.8.x | ||
| H5Dextend | All processes must participate only if the number of chunks 
        in the dataset actually changes. All processes must use the same dataspace dimensions. | |||||
| H5Dset_extent | 1.6.x | All processes must participate only if the number of chunks 
        in the dataset actually changes. All processes must use the same dataspace dimensions. | ||||
| H5F | H5Fclose | All processes must participate only if this is the last reference to the file identifier. | ||||
| H5Fcreate | ✓ | ✓ | ||||
| H5Fflush | ||||||
| H5Fmount | ||||||
| H5Fopen | ✓ | |||||
| H5Freopen | ||||||
| H5Funmount | ||||||
| H5G | H5GcreateH5Gcreate1H5Gcreate2 | ✓ | ✓ | 1.8.x | Macro The function H5Gcreatewas renamed toH5Gcreate1at Release 1.8.0. | |
| H5Gcreate_anon | ✓ | ✓ | 1.8.x | |||
| H5Glink | ||||||
| H5Glink2 | 1.6.x | |||||
| H5Gmove | ||||||
| H5Gmove2 | 1.6.x | |||||
| H5Gset_comment | ||||||
| H5Gunlink | ||||||
| H5I | H5Idec_ref | 1.6.x | This function may be called independently if the object identifier does not refer to an object that was collectively opened. | |||
| H5LIinc_ref | 1.6.x | This function may be called independently if the object identifier does not refer to an object that was collectively opened. | ||||
| H5L | H5Lcopy | 1.8.x | ||||
| H5Lcreate_external | ✓ | 1.8.x | ||||
| H5Lcreate_hard | ✓ | 1.8.x | ||||
| H5Lcreate_soft | ✓ | 1.8.x | ||||
| H5Lcreate_ud | ✓ | 1.8.x | ||||
| H5Ldelete | 1.8.x | |||||
| H5Ldelete_by_idx | 1.8.x | |||||
| H5Lmove | 1.8.x | |||||
| H5O | H5Ocopy | 1.8.x | ||||
| H5Odecr_refcount | 1.8.x | |||||
| H5Oincr_refcount | 1.8.x | |||||
| H5Olink | 1.8.x | |||||
| H5Oset_comment | 1.8.x | |||||
| H5Oset_comment_by_name | 1.8.x | |||||
| H5R | H5Rcreate | |||||
| H5T | H5TcommitH5Tcommit1H5Tcommit2 | ✓ | ✓ | 1.8.x | Macro The function H5Tcommitwas renamed toH5Tcommit1at Release 1.8.0. | |
| H5Tcommit_anon | ✓ | ✓ | 1.8.x | |||
| API | Function | All processes: same datatype & dataspace | All processes: same access properties | All processes: same creation properties | Available in releases since | Additional notes | 
|---|---|---|---|---|---|---|
| H5A | H5Aclose | All processes must participate only if all file identifiers for a file have been closed and this is the last outstanding object identifier. | ||||
| H5Aopen | ✓ | 1.8.x | ||||
| H5Aopen_by_idx | ✓ | 1.8.x | ||||
| H5Aopen_by_name | ✓ | 1.8.x | ||||
| H5Aopen_idx | ✓ | |||||
| H5Aopen_name | ✓ | |||||
| H5D | H5Dclose | All processes must participate only if all file identifiers for a file have been closed and this is the last outstanding object identifier. | ||||
| H5DopenH5Dopen1H5Dopen2 | ✓ | 1.8.x | Macro The function H5Dopenwas renamed toH5Dopen1at Release 1.8.0. | |||
| H5G | H5Gclose | All processes must participate only if all file identifiers for a file have been closed and this is the last outstanding object identifier. | ||||
| H5GopenH5Gopen1H5Gopen2 | ✓ | 1.8.x | Macro The function H5Gopenwas renamed toH5Gopen1at Release 1.8.0. | |||
| H5I | H5Iget_file_id | 1.8.x | ||||
| H5O | H5Oclose | 1.8.x | All processes must participate only if all file identifiers for a file have been closed and this is the last outstanding object identifier. | |||
| H5Oopen | ✓ | 1.8.x | ||||
| H5Oopen_by_addr | ✓ | 1.8.x | ||||
| H5Oopen_by_idx | ✓ | 1.8.x | ||||
| H5R | H5Rdereference | |||||
| H5T | H5Tclose | All processes must participate only if the datatype is for a committed datatype, all the file identifiers for the file have been closed, and this is the last outstanding object identifier. | ||||
| H5TopenH5Topen1 | ✓ | 1.8.x | Macro The function H5Topenwas renamed toH5Topen1at Release 1.8.0. | |||
| 
 | 
 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||