Name: H5Aget_info_by_idx
Signature:
  herr_t `H5Aget_info_by_idx`( hid_t `loc_id`, const char *`obj_name`, H5_index_t `idx_type`, H5_iter_order_t `order`, hsize_t `n`, H5A_info_t *`ainfo`, hid_t `lapl_id` )

Purpose:
  Retrieves attribute information, by attribute index position.

Description:
  `H5Aget_info_by_idx` retrieves information for an attribute that is attached to an object, which is specified by its location and name, `loc_id` and `obj_name`, respectively. The attribute is located by its index position and the attribute information is returned in the `ainfo` struct.

  If `loc_id` fully specifies the object to which the attribute is attached, `obj_name` should be `'.'` (a dot).

  The attribute is located by means of an index type, an index traversal order, and a position in the index, `idx_type`, `order` and `n`, respectively. These parameters and their valid values are discussed in the description of `H5Aiterate2`.

  The `ainfo` struct, which will contain the returned attribute information, is described in `H5Aget_info`.

  The link access property list, `lapl_id`, may provide information regarding the properties of links required to access the object, `obj_name`. See “Link Access Properties” in the H5P APIs.

Parameters:

  hid_t `loc_id` | IN: Location of object to which attribute is attached
  const char *`obj_name` | IN: Name of object to which attribute is attached, relative to location
  H5_index_t `idx_type` | IN: Type of index
  H5_iter_order_t `order` | IN: Index traversal order
  hsize_t `n` | IN: Attribute’s position in index
  H5A_info_t *`ainfo` | OUT: Struct containing returned attribute information
  hid_t `lapl_id` | IN: Link access property list

Returns:
  Returns a non-negative value if successful; otherwise returns a negative value.

Fortran90 Interface: h5aget_info_by_idx_f

      SUBROUTINE h5aget_info_by_idx_f(loc_id, obj_name, idx_type, order, n, &
           f_corder_valid, corder, cset, data_size, hdferr, lapl_id)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: loc_id
                                   ! Object identifier
        CHARACTER(LEN=*), INTENT(IN) :: obj_name
                                   ! Name of object to which attribute is attached
        INTEGER, INTENT(IN) :: idx_type
                                   ! Type of index; Possible values are:
                                   !   H5_INDEX_UNKNOWN_F   - Unknown index type
                                   !   H5_INDEX_NAME_F      - Index on names
                                   !   H5_INDEX_CRT_ORDER_F - Index on creation order
                                   !   H5_INDEX_N_F	      - Number of indices defined
        INTEGER, INTENT(IN) :: order
                                   ! Order in which to iterate over index:
                                   !   H5_ITER_UNKNOWN_F  - Unknown order
                                   !   H5_ITER_INC_F      - Increasing order
                                   !   H5_ITER_DEC_F      - Decreasing order
                                   !   H5_ITER_NATIVE_F   - No particular order,
                                   !                        whatever is fastest
        INTEGER(HSIZE_T), INTENT(IN) :: n
                                   ! Attribute’s position in index

        LOGICAL, INTENT(OUT) :: f_corder_valid
                                   ! Indicates whether the creation order data is
                                   ! valid for this attribute
        INTEGER, INTENT(OUT) :: corder
                                   ! Is a positive integer containing the creation
                                   !order of the attribute
        INTEGER, INTENT(OUT) :: cset
                                   ! Indicates the character set used for the
                                   ! attribute’s name
        INTEGER(HSIZE_T), INTENT(OUT) :: data_size
                                   ! Indicates the size, in the number of characters,
                                   ! of the attribute
        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
      END SUBROUTINE h5aget_info_by_idx_f

History:

  Release | C
  1.8.0 | Function introduced in this release.