Removes a link from a group


H5L_DELETE(loc_id, name, lapl_id)


<pre><code class="language-c">herr_t H5Ldelete( hid_t loc_id, const char *name, hid_t lapl_id )</code></pre>

<pre><code class="language-fortran">SUBROUTINE h5ldelete_f(loc_id, name, hdferr, lapl_id)
  INTEGER(HID_T), INTENT(IN) :: loc_id  ! Identifier of the file or group 
                                        ! containing the object
  CHARACTER(LEN=*), INTENT(IN) :: name  ! Name of the link to delete
  INTEGER, INTENT(OUT) :: hdferr        ! Error code: 
                                        ! 0 on success and -1 on failure 
                                        ! Link access property list identifier
END SUBROUTINE h5ldelete_f</code></pre>

hid_t loc_idIN: Location identifier; may be a file, group, dataset, named datatype or attribute identifier
const char *name    IN: Name of the link to delete
hid_t lapl_idIN: Link access property list identifier


H5L_DELETE removes the link specified by name from the location loc_id.

If the link being removed is a hard link, H5L_DELETE also decrements the link count for the object to which name points. Unless there is a duplicate hard link in that group, this action removes the object to which name points from the group that previously contained it.

Object headers keep track of how many hard links refer to an object; when the hard link count, also referred to as the reference count, reaches zero, the object can be removed from the file. The file space associated will then be released, i.e., identified in memory as freespace. Objects which are open are not removed until all identifiers to the object are closed.

Exercise caution in the use of H5L_DELETE ; if the link being removed is on the only path leading to an HDF5 object, that object may become permanently inaccessible in the file.


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


Coming Soon!

Release    Change
1.8.0Function introduced in this release.