17 releases

0.5.5 Jan 2, 2025
0.5.4 Oct 31, 2024
0.5.3 Jul 26, 2024
0.5.2 Feb 10, 2023
0.1.4 Jul 13, 2016

#154 in Science

Download history 81/week @ 2024-12-21 211/week @ 2024-12-28 218/week @ 2025-01-04 364/week @ 2025-01-11 451/week @ 2025-01-18 300/week @ 2025-01-25 938/week @ 2025-02-01 177/week @ 2025-02-08 248/week @ 2025-02-15 180/week @ 2025-02-22 223/week @ 2025-03-01 305/week @ 2025-03-08 167/week @ 2025-03-15 270/week @ 2025-03-22 280/week @ 2025-03-29 372/week @ 2025-04-05

1,105 downloads per month
Used in 14 crates (4 directly)

MIT/Apache

6MB
139K SLoC

C 108K SLoC // 0.2% comments Rust 22K SLoC // 0.0% comments Happy 5K SLoC FORTRAN Legacy 2.5K SLoC // 0.3% comments Lex 436 SLoC // 0.1% comments Batch 86 SLoC Pan 59 SLoC // 0.4% comments Bitbake 26 SLoC

Contains (autotools obfuscated code, 220KB) ext/cfitsio/configure

This package was automatically generated with rust-bindgen and as such was not user-generated.

The functions contained are expected to be used with fitsio, a high level API wrapper around the low level direct C-bindings, though the bindings are complete enough to be usable.

This code will not be directly documented, and so users should refer to the fitsio C documentation for usage.

Note about function names

Unfortunately we must use fits short names throughout. The C-api exposes long names for functions which are more descriptive, for example fits_open_file instead of ffopen, but the symbols available in the library have only short names, and the long names are merely preprocessor definitions.

Examples

use std::ptr;
use std::ffi;

let filename = ffi::CString::new("!/tmp/test.fits").unwrap();
let mut fptr = ptr::null_mut();
let mut status = 0;

unsafe {
    // Create a new file, clobbering any pre-existing file
    ffinit(&mut fptr as *mut *mut _,
        filename.as_ptr(),
        &mut status);

    // Add an empty primary HDU
    ffphps(fptr, 8, 0, ptr::null_mut(), &mut status);

    // Finally close the file
    ffclos(fptr, &mut status);
}

assert_eq!(status, 0);

fitsio-sys

See the main documentation

Dependencies