Skip to main content

wav_dwt/
layer.rs

1use convolve_nd::exports::ndarray::Array1;
2
3use crate::aggregate::Aggregate;
4
5#[derive(Clone)]
6pub struct WaveletLayerBuffer {
7    pub data: Array1<f32>,
8}
9
10impl Aggregate for WaveletLayerBuffer {
11    fn min(&self) -> f32 {
12        self.data.min()
13    }
14
15    fn max(&self) -> f32 {
16        self.data.max()
17    }
18}
19
20#[derive(Clone)]
21pub struct WaveletLayer {
22    pub buffer: WaveletLayerBuffer,
23    pub pixel_scale: Option<usize>,
24}
25
26impl WaveletLayer {
27    pub fn is_residue_layer(&self) -> bool {
28        self.pixel_scale.is_none()
29    }
30}