Source code for eegunity.utils.h5

import h5py
import numpy as np
from pathlib import Path

[docs] class h5Dataset: def __init__(self, path: Path, name: str) -> None: self.__name = name self.__f = h5py.File(path / f'{name}.hdf5', 'a')
[docs] def addGroup(self, grpName: str): return self.__f.create_group(grpName)
[docs] def addDataset(self, grp: h5py.Group, dsName: str, arr: np.array, chunks: tuple = None, **kwargs): return grp.create_dataset(dsName, data=arr, chunks=chunks, **kwargs)
[docs] def addAttributes(self, src: 'h5py.Dataset|h5py.Group', attrName: str, attrValue): src.attrs[f'{attrName}'] = attrValue
[docs] def save(self): self.__f.close()
@property def name(self): return self.__name