A library for SuperDARN DMAP file I/O
This project exposes both Rust and Python APIs for handling DMAP I/O. I/O can be conducted either directly to/from files or byte buffers.
The SuperDARN DMAP file formats are all supported (IQDAT, RAWACF, FITACF, GRID, MAP, and SND) as well as a generic DMAP format that is unaware of any required fields or types (e.g. char, int32) for any fields.
Installation
Rust
- Add the crate to your dependencies in your
Cargo.tomlfile - Add
use dmap::*;to your imports.
Python
This package is registered on PyPI as darn-dmap, you can install the package with your package manager.
From source
If you want to build from source, you first need to have Rust installed on your machine. Then:
- Clone the repository:
git clone https://github.com/SuperDARNCanada/dmap - Run
cargo buildin the repository directory - If wanting to install the Python API, create a virtual environment and source it, then install
maturin - In the project directory, run
maturin developto build and install the Python bindings. This will make a wheel file based on your operating system and architecture that you can install directly on any compatible machine.