1#![doc = include_str!("../README.md")]
2#![doc = document_features::document_features!()]
5
6pub use alpha::errors::*;
7pub use array_chunks::*;
8pub use change_components_type::*;
9pub use color::mappers::*;
10pub use color::PixelComponentMapper;
11pub use convolution::*;
12pub use cpu_extensions::CpuExtensions;
13pub use crop_box::*;
14pub use errors::*;
15pub use image_view::*;
16pub use mul_div::MulDiv;
17pub use pixels::PixelType;
18pub use resizer::{ResizeAlg, ResizeOptions, Resizer, SrcCropping};
19
20use crate::alpha::AlphaMulDiv;
21
22#[macro_use]
23mod utils;
24
25mod alpha;
26mod array_chunks;
27mod change_components_type;
28mod color;
29mod convolution;
30mod cpu_extensions;
31mod crop_box;
32mod errors;
33mod image_view;
34pub mod images;
35mod mul_div;
36#[cfg(target_arch = "aarch64")]
37mod neon_utils;
38pub mod pixels;
39mod resizer;
40#[cfg(target_arch = "x86_64")]
41mod simd_utils;
42#[cfg(feature = "for_testing")]
43pub mod testing;
44#[cfg(feature = "rayon")]
45pub(crate) mod threading;
46#[cfg(target_arch = "wasm32")]
47mod wasm32_utils;
48
49#[allow(private_bounds)]
53pub trait PixelTrait: Convolution + AlphaMulDiv {}
54
55impl<P: Convolution + AlphaMulDiv> PixelTrait for P {}