Usually in custom VOL plugin, the easiest way to store the datatype and 
dataspace for an attribute or dataset is to serialize them and store them as a 
blob.
Look into the function H5Tencode/decode() and H5Sencode/decode().

Thanks,
Mohamad

From: Hdf-forum <[email protected]> on behalf of Dimos 
Stamatakis <[email protected]>
Reply-To: hdf-forum <[email protected]>
Date: Friday, May 27, 2016 at 1:20 AM
To: hdf-forum <[email protected]>
Subject: [Hdf-forum] implementing the attribute callbakcs in a VOL plugin

Hi all,

Regarding my previous question about an extra call of H5Fclose, there was 
indeed an extra open handle. Now everything works perfectly!
Now I have a question about the attribute callbacks of a VOL plugin and the 
datatype. I am guessing on attribute create we have to store the specified 
datatype and dataspace using the custom VOL plugin. The question is how will we 
restore them, since for example the datatype has to be in the HDF5 format 
(H5T_t type), it is not something custom like the VOL objects. I saw that 
calling H5I_register() on a datatype generates a location ID, but it is not 
working properly.
What is the correct procedure of implementing attribute callbacks for a VOL 
plugin? Also I saw that the datatype callbacks are not invoked in the native 
HDF5 when creating and accessing string attributes.
For example, when creating a string attribute, closing it, then opening it 
again and getting its datatype it should return a location ID of its datatype. 
This is quite confusing, since how will the VOL plugin create these HDF5 
specific objects?

Thanks,

Dimos
_______________________________________________
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