#raw #thermo #run-time #net #high-level #fisher #raw-file-reader

bin+lib thermorawfilereader

A (relatively) high level interface to Thermo Fisher's RawFileReader library

7 releases

0.2.5 May 27, 2024
0.2.4 May 4, 2024
0.2.3 Apr 19, 2024
0.2.1 Mar 22, 2024
0.1.0 Mar 13, 2024

#1 in #fisher

Download history 145/week @ 2024-03-12 294/week @ 2024-03-19 17/week @ 2024-03-26 54/week @ 2024-04-02 261/week @ 2024-04-16 17/week @ 2024-04-23 202/week @ 2024-04-30 17/week @ 2024-05-07 6/week @ 2024-05-14 138/week @ 2024-05-21 78/week @ 2024-05-28 10/week @ 2024-06-04 4/week @ 2024-06-11

232 downloads per month
Used in 2 crates (via mzdata)


3.5K SLoC

Read Thermo RAW files using a self-hosted .NET runtime that uses Thermo Fisher's RawFileReader library.

The main access point is RawFileReader, via RawFileReader::open.



RawFileReader requires a .NET runtime. The linking between Rust and the host's .NET runtime is managed by netcorehost. While it supports most major operating, you can check which versions which version of .NET supports which OS version at https://github.com/dotnet/core/blob/main/os-lifecycle-policy.md.

If you wish to link with a local nethost library instead of downloading the latest version at build time, please see netcorehost's documentation. This is still distinct from actually statically linking with .NET's coreclr library which must be installed separately.

Why no Read support?

The underlying .NET library from Thermo's public API expects a plain file paths as strings and likes to fiddle with file system locks. There is no way for it to consume .NET streams, let alone Rust analogs like Read, so for the moment we can only open RAW files on the file system.


By using this library, you agree to the RawFileReader License


~54K SLoC