use core::marker::PhantomData;
use crate::BackingStore;
use crate::layout::{Ycbcr, YCbCrLayout};
use crate::primaries::Primaries;
use crate::transfer::TransferFunction;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
pub struct YCbCr<P: Primaries, TF: TransferFunction, L: YCbCrLayout = Ycbcr>(
PhantomData<(P, TF, L)>,
);
impl<P: Primaries, TF: TransferFunction, L: YCbCrLayout + BackingStore<[f32; 3]>>
BackingStore<[f32; 3]> for YCbCr<P, TF, L>
{
}
impl<P: Primaries, TF: TransferFunction, L: YCbCrLayout + BackingStore<[f32; 4]>>
BackingStore<[f32; 4]> for YCbCr<P, TF, L>
{
}