File: mkfile.py

package info (click to toggle)
extra-data 1.20.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, trixie
  • size: 952 kB
  • sloc: python: 10,421; makefile: 4
file content (22 lines) | stat: -rw-r--r-- 778 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import h5py
from .base import write_base_index, write_metadata

def write_file(filename, devices, ntrains, firsttrain=10000, chunksize=200,
               format_version='0.5'):
    f = h5py.File(filename, 'w')
    f.create_group('RUN')  # Add this, even if it's left empty

    write_base_index(f, ntrains, first=firsttrain, chunksize=chunksize,
                     format_version=format_version)

    data_sources = []
    for dev in devices:
        dev.ntrains = ntrains
        dev.firsttrain = firsttrain
        dev.chunksize = chunksize
        dev.write_control(f)
        dev.write_instrument(f)
        data_sources.extend(dev.datasource_ids())
    write_metadata(f, data_sources, chunksize=chunksize,
                   format_version=format_version)
    f.close()