| Index: src/core/SkColorSpaceXform.cpp
|
| diff --git a/src/core/SkColorSpaceXform.cpp b/src/core/SkColorSpaceXform.cpp
|
| index e6bde616c3211e8a387b4ae4e5df5e85a5e1d59e..2f852e462d0a662e22a076def2ffc106cdae8444 100644
|
| --- a/src/core/SkColorSpaceXform.cpp
|
| +++ b/src/core/SkColorSpaceXform.cpp
|
| @@ -502,25 +502,47 @@ SkFastXform<Dst>::SkFastXform(const sk_sp<SkColorSpace>& srcSpace, const SkMatri
|
|
|
| template <>
|
| void SkFastXform<SkColorSpace::kSRGB_GammaNamed>
|
| -::applyTo8888(SkPMColor* dst, const RGBA32* src, int len) const
|
| +::applyToRGBA(SkPMColor* dst, const RGBA32* src, int len) const
|
| {
|
| SkOpts::color_xform_RGB1_to_srgb(dst, src, len, fSrcGammaTables, fSrcToDst);
|
| }
|
|
|
| template <>
|
| void SkFastXform<SkColorSpace::k2Dot2Curve_GammaNamed>
|
| -::applyTo8888(SkPMColor* dst, const RGBA32* src, int len) const
|
| +::applyToRGBA(SkPMColor* dst, const RGBA32* src, int len) const
|
| {
|
| SkOpts::color_xform_RGB1_to_2dot2(dst, src, len, fSrcGammaTables, fSrcToDst);
|
| }
|
|
|
| template <>
|
| void SkFastXform<SkColorSpace::kNonStandard_GammaNamed>
|
| -::applyTo8888(SkPMColor* dst, const RGBA32* src, int len) const
|
| +::applyToRGBA(SkPMColor* dst, const RGBA32* src, int len) const
|
| {
|
| SkOpts::color_xform_RGB1_to_table(dst, src, len, fSrcGammaTables, fSrcToDst, fDstGammaTables);
|
| }
|
|
|
| +template <>
|
| +void SkFastXform<SkColorSpace::kSRGB_GammaNamed>
|
| +::applyToBGRA(SkPMColor* dst, const RGBA32* src, int len) const
|
| +{
|
| + SkOpts::color_xform_RGB1_to_srgb_swaprb(dst, src, len, fSrcGammaTables, fSrcToDst);
|
| +}
|
| +
|
| +template <>
|
| +void SkFastXform<SkColorSpace::k2Dot2Curve_GammaNamed>
|
| +::applyToBGRA(SkPMColor* dst, const RGBA32* src, int len) const
|
| +{
|
| + SkOpts::color_xform_RGB1_to_2dot2_swaprb(dst, src, len, fSrcGammaTables, fSrcToDst);
|
| +}
|
| +
|
| +template <>
|
| +void SkFastXform<SkColorSpace::kNonStandard_GammaNamed>
|
| +::applyToBGRA(SkPMColor* dst, const RGBA32* src, int len) const
|
| +{
|
| + SkOpts::color_xform_RGB1_to_table_swaprb(dst, src, len, fSrcGammaTables, fSrcToDst,
|
| + fDstGammaTables);
|
| +}
|
| +
|
| template <SkColorSpace::GammaNamed T>
|
| void SkFastXform<T>
|
| ::applyToF16(RGBAF16* dst, const RGBA32* src, int len) const
|
| @@ -647,7 +669,7 @@ static void interp_3d_clut(float dst[3], float src[3], const SkColorLookUpTable*
|
| }
|
| }
|
|
|
| -void SkDefaultXform::applyTo8888(SkPMColor* dst, const RGBA32* src, int len) const {
|
| +void SkDefaultXform::applyToRGBA(RGBA32* dst, const RGBA32* src, int len) const {
|
| while (len-- > 0) {
|
| uint8_t r = (*src >> 0) & 0xFF,
|
| g = (*src >> 8) & 0xFF,
|
| @@ -696,13 +718,20 @@ void SkDefaultXform::applyTo8888(SkPMColor* dst, const RGBA32* src, int len) con
|
| g = fDstGammaTables[1][sk_float_round2int((kDstGammaTableSize - 1) * dstFloats[1])];
|
| b = fDstGammaTables[2][sk_float_round2int((kDstGammaTableSize - 1) * dstFloats[2])];
|
|
|
| - *dst = SkPackARGB32NoCheck(0xFF, r, g, b);
|
| + *dst = SkPackARGB_as_RGBA(0xFF, r, g, b);
|
|
|
| dst++;
|
| src++;
|
| }
|
| }
|
|
|
| +void SkDefaultXform::applyToBGRA(RGBA32* dst, const RGBA32* src, int len) const {
|
| + // FIXME (msarett):
|
| + // Really tired of not having deleted SkDefaultXform yet.
|
| + this->applyToRGBA(dst, src, len);
|
| + SkOpts::RGBA_to_BGRA(dst, dst, len);
|
| +}
|
| +
|
| void SkDefaultXform::applyToF16(RGBAF16* dst, const RGBA32* src, int len) const {
|
| // FIXME (msarett):
|
| // Planning to delete SkDefaultXform. Not going to bother to implement this.
|
|
|