Skip to main content

FlashCam File Format (FCIO) reader for python.

Project description

Installation

Run python3 -m pip install fcio to install from the pypi repository.

Description

fcio-py provides a read-only wrapper around the fcio.c io library used in fc250b based digitizer systems.

The wrapper exposes the fcio.c memory fields as closely as possible to standard c-structs using numpy ndarrays or scalars where applicable. For convenience all supported fcio records are exposed as iterable properties of the base FCIO class to preselect records of interest.

Usage

Simple code example

The following example opens an fcio file and prints some basic event content to stdout:

from fcio import fcio_open

filename = 'path/to/an/fcio/file'

with fcio_open(filename, extended=True) as io:
  print("#evtno run_time utc_unix_sec utc_unix_nsec ntraces bl_mean bl_std")
  for event in io.events:
    print(f"{event.eventnumber} {event.run_time:.09f} {event.utc_unix_sec} {event.utc_unix_nsec} {event.trace_list.size} {event.fpga_baseline.mean():.1f} {event.fpga_baseline.std():.2f}")

Differences to C usage

  • fcio-py codifies the assumption that a FCIOConfig record must be available and skips all previous records on opening
  • reading of zstd or gzip compressed files is possible using suprocesses. This requires zstd or gzip to be available. If a file ends in .zst or .gz respectively and the compression parameter is default, this will happen automatically.

Development

Development is best done in a local environment, e.g. using venv:

# create local environment:
export MY_ENV=fcio_dev
python3 -m venv $MY_ENV

# activate the environment
source $MY_ENV/bin/activate

This library depends on meson-python/meson as build tool and Cython/numpy to wrap the c-sources. These should be installed automatically wenn running python3 -m build. To allow a more traditional workflow a thin Makefile is available which wraps the python3 and meson specific commands.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fcio-0.9.1.tar.gz (159.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

fcio-0.9.1-cp314-cp314t-manylinux_2_28_x86_64.whl (287.6 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

fcio-0.9.1-cp314-cp314t-macosx_11_0_arm64.whl (250.9 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

fcio-0.9.1-cp314-cp314-manylinux_2_28_x86_64.whl (305.2 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

fcio-0.9.1-cp314-cp314-macosx_11_0_arm64.whl (239.0 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

fcio-0.9.1-cp313-cp313-manylinux_2_28_x86_64.whl (304.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

fcio-0.9.1-cp313-cp313-macosx_11_0_arm64.whl (239.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

fcio-0.9.1-cp312-cp312-manylinux_2_28_x86_64.whl (304.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

fcio-0.9.1-cp312-cp312-macosx_11_0_arm64.whl (230.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

fcio-0.9.1-cp311-cp311-manylinux_2_28_x86_64.whl (311.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

fcio-0.9.1-cp311-cp311-macosx_11_0_arm64.whl (230.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

fcio-0.9.1-cp310-cp310-manylinux_2_28_x86_64.whl (318.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

fcio-0.9.1-cp310-cp310-macosx_11_0_arm64.whl (232.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

fcio-0.9.1-cp39-cp39-manylinux_2_28_x86_64.whl (318.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

fcio-0.9.1-cp39-cp39-macosx_11_0_arm64.whl (232.6 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file fcio-0.9.1.tar.gz.

File metadata

  • Download URL: fcio-0.9.1.tar.gz
  • Upload date:
  • Size: 159.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fcio-0.9.1.tar.gz
Algorithm Hash digest
SHA256 aae07b90083b82c8e6ee43dbc5cd91d2122fd545bfc5ccec3a89779094e7977b
MD5 a6b3fe53fd54fc209a6ec14cd2ca7abe
BLAKE2b-256 2f860f6b12c1767eb8f309f54a7522cd0759007c43ab8df65602978589968791

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1.tar.gz:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6b08f98640e0875f53683426483a25dd0dfdfa92cab65ad7550aadf70bb27765
MD5 63fda01cd2b29117f0bc766598a2bfc6
BLAKE2b-256 b54dc67a4cd56fa4fe7d5b5bd34ed4131341117a2ff0b1fc2c342fa851b89627

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp314-cp314t-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 210c0ebac716651418c4bd6c502b50d968ba9947b20363380b82eb37aa064ab4
MD5 57a317076d9e5b6459431e215577c68b
BLAKE2b-256 51d50ce16a6e4b9dc95a43253a915dcc511f4ec19027af9d8848b141960ea1d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c000b71976bd79065db4471b220a36186a2cbed6f597322f19820a847db2f096
MD5 04000c1e2f7635b391e4c9104f9b2295
BLAKE2b-256 559d2e82925e3cc2b2ec4f2b5aed605a83eae4ae106ea5818fcae269d014233a

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8a6669b43489969933cbaca60091eccedaea3068297436a977947224eb979cff
MD5 0d6928c9e032e2d0c82a2cff5c25d4a5
BLAKE2b-256 688cfa6f2af7fbf06a3763a12b90e4d891a9866334c911bab0f258eac12419e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b06d4ae668e27db7dafd374eb5b34cfed8f1ef24092033b3952fc80cf799413a
MD5 4bc86ce7aed039b2681b8ccdf017cddd
BLAKE2b-256 cfd3c040e1bd748eb01b75e6424941d5968f3a8eb65f0b5839d050d414e79cb7

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7f105855aa678441855a3d82df47dc52bedba8fac9bf093713e32db8f9d5fbaa
MD5 9544c9e00e077e122a37dfbfa2bef5f1
BLAKE2b-256 79a528be193142e55426558b0d50a46a47141665377396e69f76a88824ca25a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 80b289c429a53bebafd1f0f48295d40735b94bc2f47a594c164a9df6db4bb467
MD5 3d6448d9b976d2b62c233f29a52ba06a
BLAKE2b-256 c34e9612eac46e46116fb2c8f80a6dc8b8b4530f5ecce526efcbfe1ce59c7c73

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 985b4398449531fda28d7476f491007dd7e782af13dcf59fd388c7bd3310bb21
MD5 8d3ed363dbfb321cccdec2cd51503cae
BLAKE2b-256 8c33685c621569ef17487e9a5024ce525b9b21ca1ffe6f473cdb9c11ad2d2bd9

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4272a97affbc7877f8c294395eec68692c48ea65635d04aa186f901fde1bd5d4
MD5 d8fd48b024afd7f1da6480699452ab19
BLAKE2b-256 9e95c79ebc7bec9021d97885036db88cd6e31f44592b854a816951cda93f32f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 55444b241c5595f87b11baa7268b075c07a80f0f9e804b3d4e681335e463b094
MD5 6f27a0e7101099f2abb0495f296c196a
BLAKE2b-256 617ca4dadda186e987e0947c27a14b7e33234267c547fee00414b47179db6643

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 526b14f39413c212333788b0242ade4fa78492e3bd8a5662d08c1ab4794d2a68
MD5 1254ed9e6fed9041a6204ee96b192bed
BLAKE2b-256 f0fe0861023ee8c8897b367f87a256ebba975233c6eefe510fb13cca99060b7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fcio-0.9.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1b90cbcaba557473e086a98de68cc4153a10343384e06aeaab82c512828ba8bb
MD5 4eb8484adf2290f5fa7979b319485166
BLAKE2b-256 70b4ff8a8468c5ecc8d8b28fc47117436f9cea8a2e7f0a7851f784d0a48eada5

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: fcio-0.9.1-cp39-cp39-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 318.3 kB
  • Tags: CPython 3.9, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fcio-0.9.1-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9af77d000460cccfbab146f144d943faaa835668e4ed391456e819667f75c0ab
MD5 629844816f2447b7d9c85e17c71ab76b
BLAKE2b-256 602471f56796098f1c376fe8ac4d7f5ae64ae16c4d23db9a4ee9de8c7d114421

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp39-cp39-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fcio-0.9.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: fcio-0.9.1-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 232.6 kB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fcio-0.9.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 989d86b0f1f97d17add921822ca315eff00570dcd5637dfcc48ff70ef547e78e
MD5 30d3240d2e95392424c0136a3031eb28
BLAKE2b-256 5669cce6f3ec26a7ab05dcc4035344b1cc5ed109cee297e5566c6fc357e0ec6f

See more details on using hashes here.

Provenance

The following attestation bundles were made for fcio-0.9.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publish.yml on FlashCam/fcio-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page