Skip to content

pylhc/sdds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SDDS

Tests GitHub last commit PyPI Version GitHub release Conda-forge Version DOI

This package provides reading and writing functionality for self describing data sets (sdds) files. On the python side, the data is stored in a class structure with attributes corresponding to the sdds-format itself (see sdds-format).

See the API documentation for details.

Installing

Installation is easily done via pip:

python -m pip install sdds

One can also install in a conda environment via the conda-forge channel with:

conda install -c conda-forge sdds

Example Usage

import sdds

sdds_data = sdds.read("path_to_input.sdds")
sdds.write(sdds_data, "path_to_output.sdds")

Read files with different endianness

By default the endianness (byte order) of the file is determined either by a comment !# little-endian or !# big-endian in the header of the file. If this comment is not found, the endianness of the running machine is assumed.

One can force a certain kind of endianness to the reader by supplying it to the read function:

import sdds

sdds_data = sdds.read("path_to_input_with_big_endian.sdds", endianness="big")
sdds_data = sdds.read("path_to_input_with_little_endian.sdds", endianness="little")

Be aware that sdds.write will always write the file in big-endian order and will also leave a comment in the file, so that the reader can determine the endianness and there is no need to supply it when reading a file written by this package.

Known Issues

  • Can't read binary columns
  • No support for &include tag

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Python 3 package to handle SDDS files

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 7

Languages