H5Acreate(hid_t loc_id,
const char *name,
hid_t type_id,
hid_t space_id,
hid_t create_plist
)
H5Acreate creates the attribute name
attached to the object specified with loc_id.
loc_id can be a group, dataset, or named datatype
identifier.
The attribute name specified in name must be unique.
Attempting to create an attribute with the same name as an already
existing attribute will fail, leaving the pre-existing attribute
in place. To overwrite an existing attribute with a new attribute
of the same name, first call H5Adelete then recreate
the attribute with H5Acreate.
The datatype and dataspace identifiers of the attribute,
type_id and space_id, respectively,
are created with the H5T and H5S interfaces, respectively.
Currently only simple dataspaces are allowed for attribute dataspaces.
The attribute creation property list, create_plist,
is currently unused;
it may be used in the future for optional attribute properties.
At this time, H5P_DEFAULT is the only accepted value.
H5Aclose or resource leaks will develop.
hid_t loc_id |
IN: Object (dataset, group, or named datatype) to be attached to. |
const char *name |
IN: Name of attribute to create. |
hid_t type_id |
IN: Identifier of datatype for attribute. |
hid_t space_id |
IN: Identifier of dataspace for attribute. |
hid_t create_plist |
IN: Identifier of creation property list. (Currently unused;
the only accepted value is H5P_DEFAULT.) |
SUBROUTINE h5acreate_f(obj_id, name, type_id, space_id, attr_id, &
hdferr, creation_prp)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: obj_id ! Object identifier
CHARACTER(LEN=*), INTENT(IN) :: name ! Attribute name
INTEGER(HID_T), INTENT(IN) :: type_id ! Attribute datatype identifier
INTEGER(HID_T), INTENT(IN) :: space_id ! Attribute dataspace identifier
INTEGER(HID_T), INTENT(OUT) :: attr_id ! Attribute identifier
INTEGER, INTENT(OUT) :: hdferr ! Error code:
! 0 on success and -1 on failure
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: creation_prp
! Attribute creation property
! list identifier
END SUBROUTINE h5acreate_f