1#![deny(deprecated)]
30#![allow(clippy::too_many_arguments)]
32#![cfg_attr(
33 all(feature = "nightly_avx512", target_arch = "x86_64"),
34 feature(cfg_version)
35)]
36#![cfg_attr(
37 all(feature = "nightly_avx512", target_arch = "x86_64"),
38 feature(avx512_target_feature)
39)]
40#![cfg_attr(
41 all(feature = "nightly_avx512", target_arch = "x86_64"),
42 feature(stdarch_x86_avx512)
43)]
44#![cfg_attr(
45 all(feature = "nightly_avx512fp16", target_arch = "x86_64"),
46 feature(stdarch_x86_avx512_f16)
47)]
48#![cfg_attr(feature = "nightly_f16", feature(f16))]
49#![cfg_attr(docsrs, feature(doc_cfg))]
50
51mod alpha_check;
52#[cfg(feature = "nightly_f16")]
53mod alpha_handle_f16;
54mod alpha_handle_f32;
55mod alpha_handle_u16;
56mod alpha_handle_u8;
57mod ar30;
58#[cfg(all(target_arch = "x86_64", feature = "avx"))]
59mod avx2;
60#[cfg(all(target_arch = "x86_64", feature = "nightly_avx512"))]
61mod avx512;
62mod cbcr16;
63mod cbcr8;
64mod cbcr_f32;
65mod color_group;
66#[cfg(feature = "colorspaces")]
67mod colors;
68mod convolution;
69mod convolve_naive_f32;
70mod cpu_features;
71mod dispatch_group_ar30;
72#[cfg(feature = "nightly_f16")]
73mod dispatch_group_f16;
74mod dispatch_group_f32;
75mod dispatch_group_u16;
76mod dispatch_group_u8;
77#[cfg(feature = "nightly_f16")]
78mod f16;
79mod filter_weights;
80mod fixed_point_horizontal;
81mod fixed_point_horizontal_ar30;
82mod fixed_point_vertical;
83mod fixed_point_vertical_ar30;
84mod floating_point_horizontal;
85mod floating_point_vertical;
86mod handler_provider;
87mod image_size;
88mod image_store;
89mod math;
90mod mixed_storage;
91mod mlaf;
92mod nearest_sampler;
93#[cfg(all(target_arch = "aarch64", target_feature = "neon"))]
94mod neon;
95mod pic_scale_error;
96mod plane_f32;
97mod plane_u16;
98mod plane_u8;
99mod resize_ar30;
100mod rgb_f32;
101mod rgb_u16;
102mod rgb_u8;
103mod rgba_f32;
104mod rgba_u16;
105mod rgba_u8;
106mod sampler;
107mod saturate_narrow;
108mod scaler;
109#[cfg(feature = "nightly_f16")]
110#[cfg_attr(docsrs, doc(cfg(feature = "nightly_f16")))]
111mod scaler_f16;
112#[cfg(all(any(target_arch = "x86_64", target_arch = "x86"), feature = "sse"))]
113mod sse;
114mod support;
115mod threading_policy;
116#[cfg(all(target_arch = "wasm32", target_feature = "simd128",))]
117mod wasm32;
118
119pub use ar30::Ar30ByteOrder;
120#[cfg(feature = "colorspaces")]
121pub use colors::*;
122#[cfg(feature = "colorspaces")]
123pub use colorutils_rs::TransferFunction;
124pub use image_size::ImageSize;
125pub use image_store::{
126 BufferStore, CbCr16ImageStore, CbCr16ImageStoreMut, CbCr8ImageStore, CbCr8ImageStoreMut,
127 CbCrF32ImageStore, CbCrF32ImageStoreMut, ImageStore, ImageStoreMut, Planar16ImageStore,
128 Planar16ImageStoreMut, Planar8ImageStore, Planar8ImageStoreMut, PlanarF32ImageStore,
129 PlanarF32ImageStoreMut, Rgb16ImageStore, Rgb16ImageStoreMut, Rgb8ImageStore, Rgb8ImageStoreMut,
130 RgbF32ImageStore, RgbF32ImageStoreMut, Rgba16ImageStore, Rgba16ImageStoreMut, Rgba8ImageStore,
131 Rgba8ImageStoreMut, RgbaF32ImageStore, RgbaF32ImageStoreMut,
132};
133#[cfg(feature = "nightly_f16")]
134#[cfg_attr(docsrs, doc(cfg(feature = "nightly_f16")))]
135pub use image_store::{
136 CbCrF16ImageStore, CbCrF16ImageStoreMut, PlanarF16ImageStore, PlanarF16ImageStoreMut,
137 RgbF16ImageStore, RgbF16ImageStoreMut, RgbaF16ImageStore, RgbaF16ImageStoreMut,
138};
139pub use math::*;
140pub use pic_scale_error::{PicScaleBufferMismatch, PicScaleError};
141pub use sampler::*;
142pub use scaler::{ImageStoreScaling, Scaler, ScalingOptions, WorkloadStrategy};
143pub use scaler::{Scaling, ScalingF32, ScalingU16};
144pub use threading_policy::*;