1#[allow(dead_code)]
2#[derive(Copy, Clone, PartialEq, Debug)]
3pub enum BayerPattern {
4 None,
5 Rggb,
6 Bggr,
7 Gbrg,
8 Grbg,
9}
10
11#[derive(Copy, Clone, PartialEq, Debug)]
12pub enum DataType {
13 Uint16,
14 Float32,
15}
16
17pub enum PixelData {
18 Uint16(Vec<u16>),
19 Float32(Vec<f32>),
20}
21
22#[allow(dead_code)]
23pub struct ImageMetadata {
24 pub width: usize,
25 pub height: usize,
26 pub channels: usize,
27 pub dtype: DataType,
28 pub bayer_pattern: BayerPattern,
29 pub flip_vertical: bool,
30}
31
32#[allow(dead_code)]
33pub struct ProcessedImage {
34 pub data: Vec<u8>,
35 pub width: usize,
36 pub height: usize,
37 pub is_color: bool,
38}
39
40#[allow(dead_code)]
41pub struct ProcessConfig {
42 pub downscale_factor: usize,
43 pub jpeg_quality: u8,
44 pub apply_debayer: bool,
45 pub preview_mode: bool,
46 pub auto_stretch: bool,
47}