Hmm. I think there is a full xml scheme for the file format here...

https://www.hdfgroup.org/HDF5/XML/

That said, from what you've written below, I think you are making a lot 
assumptions based on just one file example.

HDF5 file format is a very flexible format. For example, boot block does NOT 
need to occur at offset zero. For example,

https://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetUserblock

B-tree structuers can take at least a couple of different forms devepend on how 
backward compatablilty is being handled, etc.

I think you *can* do what you want, but you may need to identify various 
constraints on the kinds of HDF5 files your solution will actuall work for.

And, if your workflows are such that you have complete control over how *all* 
the HDF5 files you read are created, then by definition, you can make it work 
within those limiations *and* still have conformant HDF5 files.

Does that make sense?

Mark


From: Hdf-forum 
<[email protected]<mailto:[email protected]>>
 on behalf of "Krug, Markus" <[email protected]<mailto:[email protected]>>
Reply-To: HDF Users Discussion List 
<[email protected]<mailto:[email protected]>>
Date: Sunday, September 4, 2016 at 7:45 AM
To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: [Hdf-forum] question on file layout

Hello,

I’m trying to program a significant reduced version of writing HDF files for a 
small embedded systems. To do this I start to analyze h5 files after I have 
generated them by using HDFview. I’m using this link for reference: 
https://www.hdfgroup.org/HDF5/doc/H5.format.html#Intro
Some questions arise that someone might be able to answer:

·         If I generate an ‘empty’ H5 file I can analyze on a byte-by-byte 
level the superblock version 0. In my understanding this block has a size of 60 
Bytes. This block should be followed by a ‘group root table’. Unfortunately I 
could not find a description of such a table. If I generate an empty h5 file 
with HDFview it seems that right after the superblock no link in the file to 
the first B-Tree Node is given. The link is given in byte 80-84. Is this 
position fix and always the case?

·          In my example the B-Tree Node starts at byte 136. However there is 
some information coded between byte 61 and 135 that seems to point to the HEAP 
table and contains other information’s also. Where can I find a documentation 
about the range between the superblock and the first B-Tree Node?

Best Regards
Markus

_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5

Reply via email to