Metadata-Version: 2.4
Name: pynumpress
Version: 0.1.3
Summary: A more pythonic wrapper around the MSNumpress library for mass spectrometry numerical data compression
Author: Joshua Klein, Manuel Koester, Christian Fuefzan
Author-email: jaklein@bu.edu
License: Apache-2.0
Keywords: mass spectrometry compression
Classifier: Development Status :: 5 - Production/Stable
Classifier: Topic :: Utilities
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Chemistry
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Cython
Classifier: Programming Language :: C++
Classifier: Operating System :: OS Independent
License-File: LICENSE
Requires-Dist: numpy
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: requires-dist
Dynamic: summary

 "A thin, more convenient wrapper around MSNumpress" 

Description
-----------

The original MSNumpress bindings were written to emulate the C++ calling convention, requiring the user to pass a list to the decoding functions which would be filled, one-by-one with floating point numbers from C. This calling convention makes sense when returning the container (in this case, a C++ std:vector<double>) would require copying the entire numerical buffer a second time. It also required you store the data in a `list`, which you would then need to convert into whatever structure you wish to use.

`pynumpress` wraps the API differently, and uses NumPy arrays internally to collect output and return it instead of returning by reference. This also means that the data are only boxed as Python floats if needed.

Installing
----------

To install the latest release, use `pip install pynumpress`. If you wish to build from source, in addition to NumPy, you'll need to install a recent version of `Cython <https://github.com/cython/cython>`_ and a C++ compiler.
