aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkColorSpaceXform.cpp
diff options
context:
space:
mode:
authorGravatar Brian Osman <brianosman@google.com>2018-03-12 15:44:22 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-03-12 20:26:19 +0000
commit67f62b1a61016ad07b44ae5a0bbf79d97adc9ba9 (patch)
tree4211f82ca909ca48a7d86baac4f646f28fba8fb7 /src/core/SkColorSpaceXform.cpp
parent501c17cb914ea7c0bba230789a9888f0b7889203 (diff)
Add SkColorSpaceXform_skcms
Currently only enabled in Skia dev builds. Passes all unit tests. Has some GM differences, but nothing major. Bug: skia: Change-Id: Ib87f8cff44649c731e829f063ccef448d67d1910 Reviewed-on: https://skia-review.googlesource.com/112520 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
Diffstat (limited to 'src/core/SkColorSpaceXform.cpp')
-rw-r--r--src/core/SkColorSpaceXform.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/SkColorSpaceXform.cpp b/src/core/SkColorSpaceXform.cpp
index 7c53ed52dc..a850767291 100644
--- a/src/core/SkColorSpaceXform.cpp
+++ b/src/core/SkColorSpaceXform.cpp
@@ -317,9 +317,14 @@ std::unique_ptr<SkColorSpaceXform> SkColorSpaceXform_Base::New(
}
if (src->toXYZD50()) {
+#if defined(SK_USE_SKCMS)
+ // TODO: Use this unconditionally, once A2B transform is implemented in skcms.
+ return MakeSkcmsXform(src, dst, premulBehavior);
+#else
return skstd::make_unique<SkColorSpaceXform_XYZ>(static_cast<SkColorSpace_XYZ*>(src),
static_cast<SkColorSpace_XYZ*>(dst),
premulBehavior);
+#endif
}
return skstd::make_unique<SkColorSpaceXform_A2B>(static_cast<SkColorSpace_A2B*>(src),
static_cast<SkColorSpace_XYZ*>(dst));