Открыть атрибут, указанный индексом
attr_id = H5A.open_by_idx(loc_id,obj_name,idx_type,order,n)
attr_id = H5A.open_by_idx(loc_id,obj_name,idx_type,order,n,aapl_id,lapl_id)
attr_id = H5A.open_by_idx(loc_id,obj_name,idx_type,order,n) открывает существующий атрибут в индексе n прикрепленный к объекту, указанному его расположением, loc_idи имя, obj_name.
idx_type является типом индекса, и допустимые значения включают следующее.
'H5_INDEX_NAME' | Буквенно-числовой индекс по имени атрибута |
'H5_INDEX_CRT_ORDER' | Индекс по порядку создания |
order задает порядок прохождения индекса. Допустимые значения:
'H5_ITER_INC' | Итерация от начала до конца |
'H5_ITER_DEC' | Итерация от конца до начала |
'H5_ITER_NATIVE' | Итерация в самом быстром доступном порядке |
attr_id = H5A.open_by_idx(loc_id,obj_name,idx_type,order,n,aapl_id,lapl_id) открывает атрибут со списком свойств доступа к атрибутам, aapl_idи список свойств доступа к каналу, lapl_id. aapl_id в настоящее время аргумент должен быть указан как 'H5P_DEFAULT'. Также, lapl_id может быть указан 'H5P_DEFAULT'.
Выполните цикл через набор атрибутов набора данных в обратном алфавитном порядке.
fid = H5F.open('example.h5'); gid = H5G.open(fid,'/g1/g1.1'); dset_id = H5D.open(fid,'/g1/g1.1/dset1.1.1'); info = H5O.get_info(dset_id); for idx = 0:info.num_attrs-1 attr_id =H5A.open_by_idx(gid,'dset1.1.1','H5_INDEX_NAME','H5_ITER_DEC',idx); fprintf('attribute name: %s\n',H5A.get_name(attr_id)); H5A.close(attr_id); end H5G.close(gid); H5F.close(fid);