Skip to main content

Python Streaming Data Types

Utilities for working with the FlatBuffers schemas used at the European Spallation Source ERIC for data transport.

https://github.com/ess-dmsc/streaming-data-types

FlatBuffer Schemas

name description
hs00 Histogram schema (deprecated in favour of hs01)
hs01 Histogram schema
ns10 NICOS cache entry schema
pl72 Run start
6s4t Run stop
f142 Log data (deprecated in favour of f144)
f144 Log data
ev42 Event data (deprecated in favour of ev44)
ev43 Event data from multiple pulses
ev44 Event data with signed data types
x5f2 Status messages
tdct Timestamps
ep00 EPICS connection info (deprecated in favour of ep01)
ep01 EPICS connection info
rf5k Forwarder configuration update (deprecated in favour of fc00)
fc00 Forwarder configuration update
answ File-writer command response
wrdn File-writer finished writing
NDAr Deprecated
ADAr EPICS areaDetector data
al00 Alarm/status messages used by the Forwarder and NICOS
senv Deprecated
json Generic JSON data
se00 Arrays with optional timestamps, for example waveform data. Replaces senv.
da00 Scipp-like data arrays, for histograms, etc.

hs00 and hs01

Schema for histogram data. It is one of the more complicated to use schemas. It takes a Python dictionary as its input; this dictionary needs to have correctly named fields.

The input histogram data for serialisation and the output deserialisation data have the same dictionary "layout". Example for a 2-D histogram:

hist = {
    "source": "some_source",
    "timestamp": 123456,
    "current_shape": [2, 5],
    "dim_metadata": [
        {
            "length": 2,
            "unit": "a",
            "label": "x",
            "bin_boundaries": np.array([10, 11, 12]),
        },
        {
            "length": 5,
            "unit": "b",
            "label": "y",
            "bin_boundaries": np.array([0, 1, 2, 3, 4, 5]),
        },
    ],
    "last_metadata_timestamp": 123456,
    "data": np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]),
    "errors": np.array([[5, 4, 3, 2, 1], [10, 9, 8, 7, 6]]),
    "info": "info_string",
}

The arrays passed in for data, errors and bin_boundaries can be NumPy arrays or regular lists, but on deserialisation they will be NumPy arrays.

Developer documentation

See README_DEV.md

Metadata

Release files for ess-streaming-data-types 0.27.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ess-streaming-data-types 0.27.0
File Size Uploaded
ess_streaming_data_types-0.27.0.tar.gz 51.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ess-streaming-data-types 0.27.0
File Interpreter ABI Platform
ess_streaming_data_types-0.27.0-py3-none-any.whl Python 3 none any Details

Total release size: 202.3 kB

Release files / ess_streaming_data_types-0.27.0.tar.gz

Download URL ess_streaming_data_types-0.27.0.tar.gz
Size 51.0 kB
Tags Source
SHA-256 checksum
How to use checksums
bc61286aaa97ad4420441f1150bd3eb552725e3d04357afd94844e9a5c532fbb
BLAKE2b-256 checksum
How to use checksums
f902752f404379f1787c10a318853e90c32df13e5876238c4f16ee696f570c22
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.9

Release files / ess_streaming_data_types-0.27.0-py3-none-any.whl

Download URL ess_streaming_data_types-0.27.0-py3-none-any.whl
Size 151.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
78e8ccb81d74fcb2a7db825116acc4a74e8a381168240cd01a813ed4bb93cfe8
BLAKE2b-256 checksum
How to use checksums
10205c13b0f10dcd69daaa1853385cee819c8c204282f3d0d2fffaa91fdb56b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.9

Release history Release notifications | RSS feed

This release

0.27.0 This release

2 release files

0.26.1

2 release files

0.26.0

2 release files

0.25.0

2 release files

0.24.0

2 release files

0.21.1

2 release files

0.19.0

2 release files

0.18.0

2 release files

0.17.0

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.14.0

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.10.1

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

3 release files

0.4.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page