#![forbid(unsafe_code)]
#![deny(unsafe_op_in_unsafe_fn)]
pub mod grid;
pub mod input;
#[allow(dead_code)]
mod ba;
#[allow(dead_code)]
mod calibration;
#[allow(dead_code)]
mod chain;
#[allow(dead_code)]
mod decay;
#[allow(dead_code)]
mod design;
pub mod display;
pub mod export_view;
#[allow(dead_code)]
mod fit;
#[allow(dead_code)]
mod levels;
mod low_protect;
#[allow(dead_code)]
mod measurement;
mod memory;
#[allow(dead_code)]
pub mod mimo;
mod normalize;
#[allow(dead_code)]
mod notes;
pub mod preview;
#[allow(dead_code)]
mod rc;
mod replay;
mod replay_mimo;
#[allow(dead_code)]
mod scorecard;
#[allow(dead_code)]
mod setup;
#[allow(dead_code)]
pub mod xo;
mod error;
#[cfg(test)]
pub mod test_support;
#[cfg(feature = "test-support")]
#[doc(hidden)]
pub mod testkit;
#[cfg(test)]
mod tests;
pub use ba::{LayoutInfo, ManualPlan};
pub use calibration::{
Calibration, CalibrationRequest, EngineInputs, ProjectView, calibrate, calibrate_with,
engine_inputs,
};
pub use chain::{BaRow, StageResponses, input_response, stage_responses};
pub use design::{
Design, DesignRequest, DesignSpectra, FitStage, FitterFactory, MainDesign, RoleLateEnergy,
RoleScores, SubDesign, design, late_energy, production_fitters, production_fitters_with,
};
pub use error::EngineError;
pub use export_view::{ExportView, export_view};
pub use fit::{FitRequest, Fitter, PeqDerivatives, fit_peq_with};
pub use input::{EngineConfig, Measurement, MeasurementSet, Samples, Tuning};
pub use measurement::{Spectra, long_spectra};
pub use mimo::{
IirDerivatives, IirSolveOptions, IirSolver, IirSupport, MimoDesign, MimoIir, MimoKey,
MimoRequest, MimoRoleLateEnergy, MimoRoleScore, MimoRun, design_mimo, design_mimo_iir,
design_mimo_iir_with_options,
};
pub use normalize::normalize_measurements;
pub use notes::{GuardCause, MimoNote, Note};
pub use replay::{DesignReplay, ExportAxis};
pub use scorecard::Metrics;
pub use secs_dsp::resample::{MAX_RESAMPLE_RATE, MIN_RESAMPLE_RATE};
pub use setup::SubFilter;
pub type C = secs_dsp::Complex64;