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
