Skip to main content

A python library to parse ADC64-formatted files

Project description

This is a script and library to help interfact with the ADC64 format.

To install:

pip install adc64format

## mpd format (new) To use interactively or within another python codebase:

from adc64format import mpd_parse_chunk, mpd_parse_run_start, MPDReader

input_file = adc64format.MPDReader(input_filename,n_adcs)
input_file.open()

# Read run info
_, nbytes_runinfo, runinfo = adc64format.mpd_parse_run_start(input_file.stream)
# use the first file for the event reference
_, chunk_size, test_event = adc64format.mpd_parse_chunk(input_file.stream)

events = input_file.next(batch_size)
print(events.keys())

## adc64 format (old)

To dump the contents of a single ADC64 file to an HDF5 format:

adc64_to_hdf5.py <input ADC64 file>.data <output HDF5 file>.h5

To use interactively or within another python codebase:

from adc64format import dtypes, skip_chunks, parse_chunk, ADC64Reader

# Option 1: Parse a single event from an ordinary file object
with open('<ADC64 file>.data', 'rb') as f:

    # Load the first event
    chunk = parse_chunk(f)

    # Look at chunk data (as numpy arrays)
    for key in dtypes:
        print(chunk[key])

    # Skip N events
    n = 100
    skip_chunks(f, n)
    chunk = parse_chunk(f)


# Option 2: Parse events from multiple files and align by timestamp
with ADC64Reader('<ADC 64 file from ADC 0>.data', '<ADC 64 file from ADC 1>.data', ...) as reader:
    batch_size = 10 # how many events to load on each iteration
    events = reader.next(batch_size)

    # get matched events between multiple files
    events_file0, events_file1, ... = events

    # Look at data
    for key in dtypes:
        print(events_file0[key])

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

adc64format-0.1.2.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

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

adc64format-0.1.2-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file adc64format-0.1.2.tar.gz.

File metadata

  • Download URL: adc64format-0.1.2.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.7

File hashes

Hashes for adc64format-0.1.2.tar.gz
Algorithm Hash digest
SHA256 1323c59b8ca291047c7a6a27a4f361dd12fb828706087b038a70b107e97813be
MD5 8e17b9a42e37e60785bb53048857a7bf
BLAKE2b-256 fcc6e342ccd7c6c414b4974c9d69b0747c5e67c158def30b70068a6cf904b844

See more details on using hashes here.

File details

Details for the file adc64format-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: adc64format-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.7

File hashes

Hashes for adc64format-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4697f5922ce87ce60eb24bf5afcee4f47646a459f470a1690a1f65ab2f2a5a3e
MD5 131fc6ac381da3be9c2d254d8d5a8685
BLAKE2b-256 7403129b2dc35743eff345b1919ceed1a1c74f113a799f75bd362620db5ecb5d

See more details on using hashes here.

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