pub mod error;
use ndarray::prelude::*;
use crate::{context::VisContext, Jones};
use error::IOError;
cfg_if::cfg_if! {
if #[cfg(feature = "cfitsio")] {
pub mod uvfits;
pub use error::UvfitsWriteError;
pub use uvfits::UvfitsWriter;
}
}
cfg_if::cfg_if! {
if #[cfg(feature = "ms")] {
pub mod ms;
pub use error::MeasurementSetWriteError;
pub use ms::MeasurementSetWriter;
}
}
pub trait VisWrite {
fn write_vis(
&mut self,
vis: ArrayView3<Jones<f32>>,
weights: ArrayView3<f32>,
vis_ctx: &VisContext,
) -> Result<(), IOError>;
fn finalise(&mut self) -> Result<(), IOError>;
}