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

Reply via email to