Skip to content

Sigilweaver/OpenARaw

Repository files navigation

OpenARaw

CI crates.io PyPI docs.rs License: Apache-2.0 Rust MSRV

Part of the OpenMassSpec stack for mass spectrometry raw-file access.

Rust and Python reader for Agilent MassHunter .d mass spectrometry data directories, with no Agilent SDK or software dependency. Covers the modern AcqData MassHunter shape across Q-TOF (profile and centroid) and QQQ (MRM) acquisitions.

Documentation: sigilweaver.app/openaraw/docs

Install

Prefer openmassspec-io with the agilent feature/extra unless you need this parser standalone (minimal dependencies, or building your own abstraction) - the umbrella gives you format auto-detection, mzML conversion, and Arrow streaming across all wired-in vendors for free:

cargo add openmassspec-io --features agilent
pip install openmassspec[agilent]

Standalone:

Rust:

cargo add openaraw

Python:

pip install openaraw

Quickstart

Rust:

use openaraw::reader::Reader;
use openmassspec_core::SpectrumSource;

let mut reader = Reader::open("sample.d")?;
for spectrum in reader.iter_spectra() {
    println!("{}: {} peaks", spectrum.native_id, spectrum.mz.len());
}

Python:

import openaraw

reader = openaraw.RawReader("sample.d")
spectrum = reader.read_spectrum(0)
print(spectrum.ms_level, spectrum.retention_time_sec, len(spectrum.mz))

See the docs site for the full guide, format specification, and API reference.

License

Apache-2.0. See LICENSE.

The format specification was developed by binary analysis of public mass-spectrometry datasets (PRIDE accessions). See CORPUS.md and ATTRIBUTION.md.

About

Rust and Python reader for Agilent MassHunter .d mass spectrometry directories, clean-room reverse-engineered.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages