pub(crate) fn create_rgb_lin_lut<T: Copy + Default + AsPrimitive<f32> + Send + Sync + AsPrimitive<usize> + PointeeSizeExpressible, const BIT_DEPTH: usize, const LINEAR_CAP: usize, const GRID_SIZE: usize>(
source: &ColorProfile,
opts: TransformOptions,
) -> Result<Vec<f32>, CmsError>