H5Ldelete
(
hid_t loc_id
,
const char *name
,
hid_t lapl_id
)
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.
Note that space identified as freespace is available for re-use only as long as the file remains open; once a file has been closed, the HDF5 library loses track of freespace. See “Freespace Management” in “Performace Analysis and Issues” for further details.
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.
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. |
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
Release | C |
1.8.0 | Function introduced in this release. |