1use half::f16;
2
3pub struct ImageInfo {
4 pub width: u32,
5 pub height: u32,
6 pub bit_depth: u8,
7 pub color_type: u8,
8 pub pixels: ImagePixels,
9}
10
11pub enum ImagePixels {
12 U8(Vec<u8>),
13 U16(Vec<u16>),
14 F16(Vec<f16>),
15 F32(Vec<f32>),
16}
17
18pub struct CompressionConfig {
19 pub allow_webp: bool,
20 pub allow_png: bool,
21 pub allow_oxipng_zopfli: bool,
22 pub allow_jpeg_xl: bool,
23}
24
25impl CompressionConfig {
26 pub fn default() -> CompressionConfig {
27 CompressionConfig {
28 allow_webp: true,
29 allow_png: true,
30 allow_oxipng_zopfli: false,
31 allow_jpeg_xl: true,
32 }
33 }
34}