You are viewing an old version of this page. View the current version.
Creates a new empty group and links it to a location in the file
H5G_CREATE1(loc_id, name, size_hint)
hid_t H5Gcreate1( hid_t loc_id, const char *name, size_t size_hint )
SUBROUTINE h5gcreate_f(loc_id, name, grp_id, hdferr, & size_hint, lcpl_id, gcpl_id, gapl_id) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier CHARACTER(LEN=*), INTENT(IN) :: name ! Name of the group INTEGER(HID_T), INTENT(OUT) :: grp_id ! Group identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! 0 on success and -1 on failure INTEGER(SIZE_T), OPTIONAL, INTENT(IN) :: size_hint ! Parameter indicating the number of ! bytes to reserve for the names that ! will appear in the group. ! Note, set to OBJECT_NAMELEN_DEFAULT_F ! if using any of the optional ! parameters lcpl_id, gcpl_id, ! and/or gapl_id when not ! using keywords in specifying the ! optional parameters. INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lcpl_id ! Property list for link creation INTEGER(HID_T), OPTIONAL, INTENT(IN) :: gcpl_id ! Property list for group creation INTEGER(HID_T), OPTIONAL, INTENT(IN) :: gapl_id ! Property list for group access END SUBROUTINE h5gcreate_f
|hid_t ||IN: Location identifier; may be a file, group, dataset, named datatype or attribute|
|const char *||IN: Absolute or relative name of the new group|
IN: Optional parameter indicating the number of bytes to reserve for the names that will appear in the group
A conservative estimate could result in multiple system-level I/O requests to read the group name heap; a liberal estimate could result in a single large I/O request even when the group has just a few names. HDF5 stores each name with a null terminator.
H5G_CREATE1 creates a new group with the specified name at the specified location,
loc_id may be a file, group, dataset, named datatype or attribute. If an attribute, dataset, or named datatype is specified for
loc_id then the group will be created at the location where the attribute, dataset, or named datatype is attached. The name,
name, must not already be taken by some other object and all parent groups must already exist.
name can be a relative path based at
loc_id or an absolute path from the root of the file. Use of this function requires that any intermediate groups specified in the path already exist.
The length of a group name, or of the name of any object within a group, is not limited.
size_hint is a hint for the number of bytes to reserve to store the names which will be eventually added to the new group. Passing a value of zero for
size_hint is usually adequate since the library is able to dynamically resize the name heap, but a correct hint may result in better performance. If a non-positive value is supplied for
size_hint, then a default size is chosen.
The return value is a group identifier for the open group. This group identifier should be closed by calling H5G_CLOSE when it is no longer needed.
See H5G_CREATE_ANON for a discussion of the differences between H5G_CREATE1 and H5G_CREATE_ANON.
Returns a valid group identifier for the open group if successful; otherwise returns a negative value.