16 releases
0.5.4 | Oct 31, 2024 |
---|---|
0.5.3 | Jul 26, 2024 |
0.5.2 | Feb 10, 2023 |
0.5.1 | Dec 21, 2022 |
0.1.4 | Jul 13, 2016 |
#292 in Science
1,984 downloads per month
Used in 14 crates
(4 directly)
6MB
139K
SLoC
Contains (autotools obfuscated code, 220KB) ext/cfitsio/configure
fitsio-sys
See the main documentation
lib.rs
:
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);