usecrate::types::buffers::NoiseWindowView;usecrate::types::{Float, WindowSize};/// Trait used for implementing algorithms with block-based processing used in conjuction with
/// `FilterBase`.
pubtraitAlgorithm<F: Float> {/// Updates the weights for the next block based on the algorithm's update rules.
/// This function is called for every processing block by the filter during adapation.
/// `error` are the cleaned samples from the current block.
/// `noise_ref` is the noise reference signal within the current processing window (the $k$ most recent samples).
fnupdate_step(&mutself, weights:&mut [F], error: F, noise_window:NoiseWindowView<F>);/// Window size used by the algorithm.
fnwindow_size(&self)-> WindowSize;}