Skip to content

Draft: H5py-like API based on redis

Lucas Felix requested to merge h5py-like-api into master

An example of mapping to include into scans:

scan.info["mapping"] = (
    {
        "NX_class": "NXentry",
    },
    {
        "instrument": (
            {
                "NX_class": "NXinstrument",
            },
            {
                "name": ({"short_name": "id00"}, RAW, "esrf-id00a"),
                "diode": (
                    {"NX_class": "NXdetector"},
                    {"data": ({}, STREAM, "simulation_diode_sampling_controller:diode")},
                ),
                "elapsed_time": (
                    {"NX_class": "NXpositioner"},
                    {"value": ({"units": "s"}, STREAM, "timer:elapsed_time")},
                ),
                "epoch": (
                    {"NX_class": "NXpositioner"},
                    {"value": ({"units": "s"}, STREAM, "timer:epoch")},
                ),
            },
        ),
        "measurement": (
            {},
            {
                "diode": ({}, STREAM, "simulation_diode_sampling_controller:diode"),
                "elapsed_time": ({"units": "s"}, STREAM, "timer:elapsed_time"),
                "epoch": ({"units": "s"}, STREAM, "timer:epoch"),
            },
        ),
    },
)
Attrs: Mapping[str, Any]
Entry: GroupEntry | DatasetEntry
GroupEntry: tuple[Attrs, Mapping[str, Entry]]
DatasetEntry: tuple[Attrs, int, Any]
Edited by Lucas Felix

Merge request reports