You are viewing an old version of this page. View the current version.
Version 1 Next »
Removes a link from a group.
H5L_DELETE(loc_id, name, lapl_id)
herr_t H5Ldelete( hid_t loc_id, const char *name, hid_t lapl_id )
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
|hid_t ||IN: Identifier of the file or group containing the object.|
|const char *||IN: Name of the link to delete.|
|hid_t ||IN: Link access property list identifier.|
H5Ldelete removes the link specified by
name from the location
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.
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.
Returns a non-negative value if successful; otherwise returns a negative value.
|1.8.0||Function introduced in this release.|