#![allow(clippy::too_many_arguments)]
#![cfg_attr(
all(
feature = "riscv",
any(target_arch = "riscv64", target_arch = "riscv32")
),
feature(riscv_target_feature)
)]
#![cfg_attr(
all(
feature = "riscv",
any(target_arch = "riscv64", target_arch = "riscv32")
),
feature(stdarch_riscv_feature_detection)
)]
#[cfg(feature = "half")]
mod alpha_handle_f16;
mod alpha_handle_f32;
mod alpha_handle_u16;
mod alpha_handle_u8;
#[cfg(all(
not(feature = "disable_simd"),
any(target_arch = "x86_64", target_arch = "x86")
))]
mod avx2;
mod color_group;
#[cfg(feature = "colorspaces")]
mod colors;
mod convolution;
mod convolve_naive_f32;
mod convolve_naive_u16;
mod convolve_naive_u8;
mod cpu_features;
#[cfg(feature = "half")]
mod dispatch_group_f16;
mod dispatch_group_f32;
mod dispatch_group_u16;
mod dispatch_group_u8;
#[cfg(feature = "half")]
mod f16;
mod filter_weights;
mod floating_point_horizontal;
mod floating_point_vertical;
mod handler_provider;
mod image_size;
mod image_store;
mod math;
mod mixed_storage;
mod mlaf;
mod nearest_sampler;
#[cfg(all(
target_arch = "aarch64",
target_feature = "neon",
not(feature = "disable_simd")
))]
mod neon;
mod plane_f32;
mod plane_u16;
mod plane_u8;
mod rgb_f32;
mod rgb_u16;
mod rgb_u8;
mod rgba_f32;
mod rgba_u16;
mod rgba_u8;
#[cfg(all(
any(target_arch = "riscv64", target_arch = "riscv32"),
feature = "riscv",
not(feature = "disable_simd")
))]
mod risc;
mod sampler;
mod saturate_narrow;
mod scaler;
#[cfg(feature = "half")]
mod scaler_f16;
#[cfg(all(
any(target_arch = "x86_64", target_arch = "x86"),
not(feature = "disable_simd")
))]
mod sse;
mod support;
mod threading_policy;
mod unsafe_slice;
#[cfg(all(
target_arch = "wasm32",
target_feature = "simd128",
not(feature = "disable_simd")
))]
mod wasm32;
#[cfg(feature = "colorspaces")]
pub use colors::*;
#[cfg(feature = "colorspaces")]
pub use colorutils_rs::TransferFunction;
#[cfg(all(target_arch = "aarch64", target_feature = "neon"))]
pub use cpu_features::{is_aarch_f16_supported, is_aarch_f16c_supported};
pub use image_size::ImageSize;
pub use image_store::ImageStore;
pub use math::*;
pub use sampler::*;
pub use scaler::Scaler;
pub use scaler::Scaling;
pub use scaler::ScalingF32;
pub use scaler::ScalingU16;
pub use threading_policy::*;