Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(131)

Side by Side Diff: src/core/SkXfermode.cpp

Issue 656503002: Move willUseInputColor check to computeInvariantOutput (Closed) Base URL: https://skia.googlesource.com/skia.git@addMultFlag
Patch Set: Rebase2 Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « include/gpu/GrProcessor.h ('k') | src/effects/SkArithmeticMode.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 1
2 /* 2 /*
3 * Copyright 2006 The Android Open Source Project 3 * Copyright 2006 The Android Open Source Project
4 * 4 *
5 * Use of this source code is governed by a BSD-style license that can be 5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file. 6 * found in the LICENSE file.
7 */ 7 */
8 8
9 9
10 #include "SkXfermode.h" 10 #include "SkXfermode.h"
(...skipping 1195 matching lines...) Expand 10 before | Expand all | Expand 10 after
1206 this->setWillReadDstColor(); 1206 this->setWillReadDstColor();
1207 } 1207 }
1208 } 1208 }
1209 virtual bool onIsEqual(const GrFragmentProcessor& other) const SK_OVERRIDE { 1209 virtual bool onIsEqual(const GrFragmentProcessor& other) const SK_OVERRIDE {
1210 const XferEffect& s = other.cast<XferEffect>(); 1210 const XferEffect& s = other.cast<XferEffect>();
1211 return fMode == s.fMode && 1211 return fMode == s.fMode &&
1212 fBackgroundAccess.getTexture() == s.fBackgroundAccess.getTexture( ); 1212 fBackgroundAccess.getTexture() == s.fBackgroundAccess.getTexture( );
1213 } 1213 }
1214 1214
1215 virtual void onComputeInvariantOutput(InvariantOutput* inout) const SK_OVERR IDE { 1215 virtual void onComputeInvariantOutput(InvariantOutput* inout) const SK_OVERR IDE {
1216 inout->setToUnknown(); 1216 inout->setToUnknown(InvariantOutput::kWill_ReadInput);
1217 } 1217 }
1218 1218
1219 SkXfermode::Mode fMode; 1219 SkXfermode::Mode fMode;
1220 GrCoordTransform fBackgroundTransform; 1220 GrCoordTransform fBackgroundTransform;
1221 GrTextureAccess fBackgroundAccess; 1221 GrTextureAccess fBackgroundAccess;
1222 1222
1223 typedef GrFragmentProcessor INHERITED; 1223 typedef GrFragmentProcessor INHERITED;
1224 }; 1224 };
1225 1225
1226 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(XferEffect); 1226 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(XferEffect);
(...skipping 727 matching lines...) Expand 10 before | Expand all | Expand 10 after
1954 } else { 1954 } else {
1955 proc16 = rec.fProc16_General; 1955 proc16 = rec.fProc16_General;
1956 } 1956 }
1957 } 1957 }
1958 return proc16; 1958 return proc16;
1959 } 1959 }
1960 1960
1961 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkXfermode) 1961 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkXfermode)
1962 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkProcCoeffXfermode) 1962 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkProcCoeffXfermode)
1963 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END 1963 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END
OLDNEW
« no previous file with comments | « include/gpu/GrProcessor.h ('k') | src/effects/SkArithmeticMode.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698