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
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id
! Link access property list identifier
END SUBROUTINE h5ldelete_f
IN: Location identifier; may be a file, group, dataset, named datatype or attribute identifier
const char *name
IN: Name of the link to delete
IN: 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.