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}