#[cfg(feature = "tdf")]
use super::super::FrameWindowSplittingConfiguration;
#[cfg(feature = "serialize")]
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Copy)]
#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))]
pub struct SpectrumProcessingParams {
pub smoothing_window: u32,
pub centroiding_window: u32,
pub calibration_tolerance: f64,
pub calibrate: bool,
}
impl Default for SpectrumProcessingParams {
fn default() -> Self {
Self {
smoothing_window: 1,
centroiding_window: 1,
calibration_tolerance: 0.1,
calibrate: false,
}
}
}
#[derive(Debug, Default, Clone, Copy)]
#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))]
pub struct SpectrumReaderConfig {
pub spectrum_processing_params: SpectrumProcessingParams,
#[cfg(feature = "tdf")]
pub frame_splitting_params: FrameWindowSplittingConfiguration,
}