Last modified: 16 September 2014
Name: H5Ldelete
Signature:
  herr_t `H5Ldelete`( hid_t `loc_id`, const char *`name`, hid_t `lapl_id` )

Purpose:
  Removes a link from a group.

Description:
  `H5Ldelete` removes the link specified by `name` from the location `loc_id`.

  If the link being removed is a hard link, `H5Ldelete` 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.

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

Parameters:

  hid_t `loc_id` | IN: Identifier of the file or group containing the object.
  const char *`name` | IN: Name of the link to delete.
  hid_t `lapl_id` | IN: Link access property list identifier.

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

Fortran90 Interface: h5ldelete_f

      SUBROUTINE h5ldelete_f(loc_id, name, hdferr, lapl_id)
        IMPLICIT NONE
        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
        INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id
                                              ! Link access property list identifier
      END SUBROUTINE h5ldelete_f

History:

  Release | C
  1.8.0 | Function introduced in this release.