A Monday 02 June 2008, Igor Sylvester escrigué:
> Hi.
>
> I am using pytables to examine hdf5 files which contain UnImplemented
> nodes. The pytables warning when getting an unimplemented type node
> makes a reference to variable length strings--Are all unimplemented
> types treated as variable length strings?
No. If you are getting UnImplemented nodes this is normally a
consequence of existing unsupported dataset/datatypes in your HDF5
file. From the docstrings:
"""
This class represents datasets not supported by PyTables in an
HDF5 file.
When reading a generic HDF5 file (i.e. one that has not been
created with PyTables, but with some other HDF5 library based
tool), chances are that the specific combination of datatypes or
dataspaces in some dataset might not be supported by PyTables yet.
In such a case, this dataset will be mapped into an
`UnImplemented` instance and the user will still be able to access
the complete object tree of the generic HDF5 file. The user will
also be able to *read and write the attributes* of the dataset,
*access some of its metadata*, and perform *certain hierarchy
manipulation operations* like deleting or moving (but not copying)
the node. Of course, the user will not be able to read the actual
data on it.
This is an elegant way to allow users to work with generic HDF5
files despite the fact that some of its datasets are not supported
by PyTables. However, if you are really interested in having full
access to an unimplemented dataset, please get in contact with the
developer team.
This class does not have any public instance variables or methods,
except those inherited from the `Leaf` class.
"""
At any rate, it would help to see the error issued, or better yet, and
small HDF5 file reproducing the issue in order to grasp which is the
bit that is not supported by PyTables.
> Is there a way to read
> these datasets as raw byte arrays (which I can decode myself)?
No, because PyTables does not know how to read the unsupported HDF5
data.
> What are the steps to add a new node type?
Sorry but this is not documented (this should be nice a nice thing to
have, but the developers haven't done it yet). However, as PyTables is
free software, you can always browse the code.
> I have tried using ctypes with
> the native hdf5 library to read datasets but it requires setting up a
> buffer and it seems this functionality is already in the pyrex code.
> Your guidance is much appreciated.
Cheers,
--
Francesc Alted
Freelance developer
Tel +34-964-282-249
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Pytables-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pytables-users