aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkColorSpaceXform.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2017-05-22 13:41:36 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-05-22 18:08:13 +0000
commitedf8a762190eccc6d2a7ab3a095d131e9fd101bc (patch)
treeb9b9bc13a8f24168b34ab03a56da08c9bf9104df /src/core/SkColorSpaceXform.cpp
parentffc2e4b64db1bad164d630454d4ddde1ec75c859 (diff)
add helper static to SkColorSpaceXform
Bug: skia: Change-Id: I62525b392dfbae3d7075cf7f14e30780bad41279 Reviewed-on: https://skia-review.googlesource.com/17485 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src/core/SkColorSpaceXform.cpp')
-rw-r--r--src/core/SkColorSpaceXform.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/core/SkColorSpaceXform.cpp b/src/core/SkColorSpaceXform.cpp
index 56eadfc791..195de481bb 100644
--- a/src/core/SkColorSpaceXform.cpp
+++ b/src/core/SkColorSpaceXform.cpp
@@ -1137,6 +1137,18 @@ bool SkColorSpaceXform::apply(ColorFormat dstColorFormat, void* dst, ColorFormat
alphaType);
}
+bool SkColorSpaceXform::Apply(SkColorSpace* dstCS, ColorFormat dstFormat, void* dst,
+ SkColorSpace* srcCS, ColorFormat srcFormat, const void* src,
+ int count, AlphaOp op) {
+ SkAlphaType at;
+ switch (op) {
+ case kPreserve_AlphaOp: at = kUnpremul_SkAlphaType; break;
+ case kPremul_AlphaOp: at = kPremul_SkAlphaType; break;
+ case kSrcIsOpaque_AlphaOp: at = kOpaque_SkAlphaType; break;
+ }
+ return New(srcCS, dstCS)->apply(dstFormat, dst, srcFormat, src, count, at);
+}
+
///////////////////////////////////////////////////////////////////////////////////////////////////
template <ColorSpaceMatch kCSM>