Skip to content

HUPO-PSI/mzPeak.NET

Repository files navigation

Prototype for reading mzPeak files in .NET.

Usage

Reading

using MZPeak.Reader;

// Open an mzPeak file
var reader = new MzPeakReader("path/to/file.mzpeak");

// Access file-level metadata
Console.WriteLine($"{reader.SpectrumCount} spectra, {reader.ChromatogramCount} chromatograms");
Console.WriteLine($"Storage format: {reader.SpectrumDataFormat}");

// Iterate over spectra asynchronously
await foreach (var (description, data) in reader.EnumerateSpectraAsync())
{
    Console.WriteLine($"Spectrum {description.Index}: {description.Id}");
    Console.WriteLine($"  Time: {description.Time}");
    Console.WriteLine($"  Points: {data.Length}");
    Console.WriteLine($"  Profile: {description.IsProfile}, Centroid: {description.IsCentroid}");

    // Access scan information
    foreach (var scan in description.Scans)
    {
        Console.WriteLine($"  Scan config: {scan.InstrumentConfigurationRef}");
    }

    // Access precursor information (for MS2+ spectra)
    foreach (var precursor in description.Precursors)
    {
        Console.WriteLine($"  Precursor index: {precursor.PrecursorIndex}");
    }
}

// Iterate over chromatograms asynchronously
await foreach (var (description, data) in reader.EnumerateChromatogramsAsync())
{
    Console.WriteLine($"Chromatogram {description.Index}: {description.Id}");
    Console.WriteLine($"  Points: {data.Length}");
}

Writing

TODO: Code sample

See [MZPeakNet.AppTest/Program.cs] TranscodeFile or ThermoTranslate

Status

  • Reading
    • Array indices
    • File-level metadata
    • Spectrum metadata
    • Chromatogram metadata
    • Spectrum data arrays
      • Point Layout
      • Chunked Layout
        • Basic encoding
        • Delta encoding
        • Numpress and opaque chunk transforms
    • Chromatogram data arrays
    • Spectrum peak arrays
    • Auxiliary arrays
    • ZIP archive storage
    • Directory storage
  • Writing
    • File-level metadata
    • Spectrum metadata
    • Chromatogram metadata
    • Data Arrays
      • Point Layout
      • Chunked Layout
    • Spectrum peak arrays
    • Auxiliary arrays
    • ZIP archive storage
    • Directory storage

About

A .NET implementation of mzPeak

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors