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.