use crate::num::Powf;
use self::lut::GammaLutBuilder;
pub mod lut;
mod model;
pub fn srgb_lut_builder() -> GammaLutBuilder
where
f64: Powf,
{
GammaLutBuilder::new_piecewise_fn(12.92, 0.0031308, 2.4)
}
pub fn rec_oetf_builder() -> GammaLutBuilder
where
f64: Powf,
{
GammaLutBuilder::new_piecewise_fn(4.5, 0.018053968510807, 1.0 / 0.45)
}
pub fn adobe_rgb_builder() -> GammaLutBuilder
where
f64: Powf,
{
GammaLutBuilder::new_power_fn(563.0 / 256.0)
}
pub fn p3_builder() -> GammaLutBuilder
where
f64: Powf,
{
GammaLutBuilder::new_power_fn(2.6)
}
pub fn prophoto_rgb_builder() -> GammaLutBuilder
where
f64: Powf,
{
GammaLutBuilder::new_piecewise_fn(16.0, 0.001953125, 1.8)
}