. currentmodule:: silx.io
commonh5
: Helpers for writing h5py-like API#
This module contains generic objects, emulating h5py groups, datasets and
files. They are used in spech5
and fabioh5
.
Classes#
- class Node(name, parent=None, attrs=None)[source]#
This is the base class for all
spech5
andfabioh5
classes. It represents a tree node, and knows its parent node (parent
). The API mimics a h5py node, with following attributes:file
,attrs
,name
, andbasename
.- property h5py_class#
Returns the h5py classes which is mimicked by this class. It can be one of h5py.File, h5py.Group or h5py.Dataset
This should not be used anymore. Prefer using h5_class
- Return type:
Class
- property attrs#
Returns HDF5 attributes of this node.
- Return type:
dict
- property name#
Returns the HDF5 name of this node.
- property basename#
Returns the HDF5 basename of this node.
- class File(name=None, mode=None, attrs=None)[source]#
Bases:
Group
This class is the special
Group
that is the root node of the tree structure. It mimics h5py.File.- property h5_class#
Returns the
h5py.File
class
- class Group(name, parent=None, attrs=None)[source]#
Bases:
Node
This class mimics a h5py.Group.
- get(name, default=None, getclass=False, getlink=False)[source]#
Retrieve an item or other information.
If getlink only is true, the returned value is always h5py.HardLink, because this implementation do not use links. Like the original implementation.
- Parameters:
name (str) – name of the item
default (object) – default value returned if the name is not found
getclass (bool) – if true, the returned object is the class of the object found
getlink (bool) – if true, links object are returned instead of the target
- Returns:
An object, else None
- Return type:
object
- __getitem__(name)[source]#
Return a child from his name.
- Parameters:
name (str) – name of a member or a path throug members using ‘/’ separator. A ‘/’ as a prefix access to the root item of the tree.
- Return type:
- __contains__(name)[source]#
Returns true if name is an existing child of this group.
- Return type:
bool
- values()[source]#
Returns an iterator over the children nodes (groups and datasets) in a group.
Added in version 0.6.
- visit(func, visit_links=False)[source]#
Recursively visit all names in this group and subgroups. See the documentation for h5py.Group.visit for more help.
- Parameters:
func (callable) – Callable (function, method or callable object)
- visititems(func, visit_links=False)[source]#
Recursively visit names and objects in this group. See the documentation for h5py.Group.visititems for more help.
- Parameters:
func (callable) – Callable (function, method or callable object)
visit_links (bool) – If False, ignore links. If True, call func(name) for links and recurse into target groups.
- property name#
Returns the HDF5 name of this node.
- property basename#
Returns the HDF5 basename of this node.
- property attrs#
Returns HDF5 attributes of this node.
- Return type:
dict
- property h5py_class#
Returns the h5py classes which is mimicked by this class. It can be one of h5py.File, h5py.Group or h5py.Dataset
This should not be used anymore. Prefer using h5_class
- Return type:
Class
- class Dataset(name, data, parent=None, attrs=None)[source]#
Bases:
Node
This class handles a numpy data object, as a mimicry of a h5py.Dataset.
- property dtype#
Returns the numpy datatype exposed by this dataset.
- Return type:
numpy.dtype
- property shape#
Returns the shape of the data exposed by this dataset.
- Return type:
tuple
- property size#
Returns the size of the data exposed by this dataset.
- Return type:
int
- property value#
Returns the data exposed by this dataset.
Deprecated by h5py. It is prefered to use indexing [()].
- Return type:
numpy.ndarray
- property compression#
Returns compression as provided by h5py.Dataset.
There is no compression.
- property compression_opts#
Returns compression options as provided by h5py.Dataset.
There is no compression.
- property chunks#
Returns chunks as provided by h5py.Dataset.
There is no chunks.
- property is_virtual#
Checks virtual data as provided by h5py.Dataset
- virtual_sources()[source]#
Returns virtual dataset sources as provided by h5py.Dataset.
- Return type:
list
- property external#
Returns external sources as provided by h5py.Dataset.
- Return type:
list or None