aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2017-07-26 13:11:51 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-07-26 17:52:00 +0000
commit1a2a7abe96d258399cca111ea55594599b461c33 (patch)
tree84e6a556766931cb8df890b8fa03c981fddac42e /src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp
parentdf6660f64e4d915de7471c3daa67f9b68037ff3f (diff)
More GrFragmentProcessor::clone() implementations.
GrSRGBEffect EllipticalRRectEffect CircularRRectEffect GrNonlinearColorSpaceXformEffect GrDeviceSpaceTextureDecalFragmentProcessor Change-Id: I701fb7ed36e66414adba2eea73f6eed306691b49 Reviewed-on: https://skia-review.googlesource.com/26942 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp')
-rw-r--r--src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp b/src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp
index c0573e915a..8153725460 100644
--- a/src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp
+++ b/src/gpu/effects/GrNonlinearColorSpaceXformEffect.cpp
@@ -164,6 +164,20 @@ GrNonlinearColorSpaceXformEffect::GrNonlinearColorSpaceXformEffect(
fDstTransferFnCoeffs[6] = dstTransferFn.fG;
}
+GrNonlinearColorSpaceXformEffect::GrNonlinearColorSpaceXformEffect(
+ const GrNonlinearColorSpaceXformEffect& that)
+ : INHERITED(kPreservesOpaqueInput_OptimizationFlag)
+ , fGamutXform(that.fGamutXform)
+ , fOps(that.fOps) {
+ this->initClassID<GrNonlinearColorSpaceXformEffect>();
+ memcpy(fSrcTransferFnCoeffs, that.fSrcTransferFnCoeffs, sizeof(fSrcTransferFnCoeffs));
+ memcpy(fDstTransferFnCoeffs, that.fDstTransferFnCoeffs, sizeof(fDstTransferFnCoeffs));
+}
+
+sk_sp<GrFragmentProcessor> GrNonlinearColorSpaceXformEffect::clone() const {
+ return sk_sp<GrFragmentProcessor>(new GrNonlinearColorSpaceXformEffect(*this));
+}
+
bool GrNonlinearColorSpaceXformEffect::onIsEqual(const GrFragmentProcessor& s) const {
const GrNonlinearColorSpaceXformEffect& other = s.cast<GrNonlinearColorSpaceXformEffect>();
if (other.fOps != fOps) {