use crate::layer::WaveletLayer;
use convolve_nd::exports::ndarray::Array1;
pub trait RecomposableWaveletLayers: Iterator<Item = WaveletLayer> {
fn recompose_into_data(self, length: usize) -> Array1<f32>
where
Self: Sized,
{
let mut result = Array1::<f32>::zeros(length);
for layer in self {
result += &layer.buffer.data;
}
result
}
}
impl<T> RecomposableWaveletLayers for T where T: Iterator<Item = WaveletLayer> {}