static void ToRGB( int colorSpace, const RGBColorSystem& rgbws, RGBColorSystem::sample& r, RGBColorSystem::sample& g, RGBColorSystem::sample& b, RGBColorSystem::sample ch0, RGBColorSystem::sample ch1, RGBColorSystem::sample ch2 ) { switch ( colorSpace ) { case ColorSpaceId::CIEXYZ: rgbws.CIEXYZToRGB( r, g, b, ch0, ch1, ch2 ); break; case ColorSpaceId::CIELab: rgbws.CIELabToRGB( r, g, b, ch0, ch1, ch2 ); break; case ColorSpaceId::CIELch: rgbws.CIELchToRGB( r, g, b, ch0, ch1, ch2 ); break; case ColorSpaceId::HSV: rgbws.HSVToRGB( r, g, b, ch0, ch1, ch2 ); break; case ColorSpaceId::HSI: rgbws.HSIToRGB( r, g, b, ch0, ch1, ch2 ); break; } }