Commits a transient datatype to a file, creating a new named datatype, but does not link it into the file structure


H5T_COMMIT_ANON(loc_id, dtype_id, tcpl_id, tapl_id)


<pre><code class="language-c">herr_t H5Tcommit_anon( hid_t loc_id, hid_t dtype_id, hid_t tcpl_id, hid_t tapl_id )</code></pre>

<pre><code class="language-fortran">SUBROUTINE h5tcommit_anon_f(loc_id, dtype_id, hdferr, tcpl_id, tapl_id)
  INTEGER(HID_T), INTENT(IN) :: loc_id ! A file or group identifier specifying 
                                       ! the file in which the new named 
                                       ! datatype is to be created.
  INTEGER(HID_T), INTENT(IN) :: dtype_id  
                                       ! Datatype identifier 
  INTEGER, INTENT(OUT) :: hdferr       ! Error code
                                       ! 0 on success and -1 on failure

                                       ! A datatype creation property 
                                       ! list identifier.
                                       !  H5P_DEFAULT_F = default property list
                                       ! A datatype access property list id
END SUBROUTINE h5tcommit_anon_f</code></pre>

hid_t loc_idIN: A file or group identifier specifying the file in which the new named datatype is to be created
hid_t dtype_idIN: A datatype identifier
hid_t tcpl_idIN: A datatype creation property list identifier 
(H5P_DEFAULT for the default property list.)
hid_t tapl_id    IN: A datatype access property list identifier 
Currently unused; should always be passed as the value H5P_DEFAULT.


H5T_COMMIT_ANON commits a transient datatype (not immutable) to a file, turning it into a named datatype with the specified creation and property lists. With default property lists, H5P_DEFAULT,  H5T_COMMIT_ANON provides similar functionality to that of H5T_COMMIT, with the differences described below.

The datatype access property list identifier, tapl_id, is provided for future functionality and is not used at this time. This parameter should always be passed as the value H5P_DEFAULT.

Note that H5T_COMMIT_ANON does not link this newly-committed datatype into the file. After the  H5T_COMMIT_ANON call, the datatype identifier dtype_id must be linked into the HDF5 file structure with H5O_LINK or it will be deleted from the file when the file is closed.

The differences between this function and H5T_COMMIT are as follows:

  •  H5T_COMMIT_ANON explicitly includes property lists, which provides for greater control of the creation process and of the properties of the new named datatype. H5T_COMMIT  always uses default properties.
    H5T_COMMIT_ANON neither provides the new named datatype’s name nor links it into the HDF5 file structure; those actions must be performed separately through a call to H5O_LINK , which offers greater control over linking.

This function will not accept a datatype that cannot actually hold data. This currently includes compound datatypes with no fields and enumerated datatypes with no members.


Returns a non-negative value if successful; otherwise returns a negative value.


Coming Soon!

Release    Change
1.8.7Function modified in this release to reject datatypes that will not accommodate actual data, such as a compound datatype with no fields or an enumerated datatype with no members.
1.8.0Function introduced in this release.