Does the HDF5 read support having compound datatypes within attributes?

15 views (last 30 days)
I have an HDF5 database that contains attributes that have compound datatype. When I run h5info on my database, it generates an error message. I tracked down the problem and it dealt with the compound datatype in my database. When I deleted my compound datatype from my database, h5info works. There's nothing special about my compound datatype. It contains an integer value and two double array. So my question is, can h5info handle compound datatypes within attributes, which are valid in HDF5 OR is there a way to read these attributes in MATLAB from high or low level?
The error returned is:
Error using h5infoc
No MATLAB class corresponds to floating point numbers with more than 64 bits.
Error in h5info (line 101)
hinfo = h5infoc(filename, location, useUtf8);
Error in h5disp>display_hdf5 (line 112)
hinfo = h5info(options.Filename, options.Location);
Error in h5disp (line 90)
display_hdf5(options);
When I tried to use low level functions to get into the attribute I noticed this however. I could open the h5 file and get the file id and the group id that contained the attribute with the compound type just fine. I could even get the attribute id by calling H5A.open through my group. When I called read on the attribute through H5A it returned the same error as above. So I called H5A.get_info on the attribute id it returned
ans =
struct with fields:
corder_valid:1
corder:1
cset:0
data_size:280
This leads me to believe that not all compound datatypes are allowed within an Hdf5 attribute. Any help would be greatly appreciated.

Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!