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

Side by Side Diff: src/gpu/GrPaint.cpp

Issue 1225363002: Move GrProcessorDataManager to GrMemoryPool (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: tweaks Created 5 years, 5 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/GrProcessorDataManager.h ('k') | src/gpu/GrPipelineBuilder.h » ('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 2013 Google Inc. 3 * Copyright 2013 Google Inc.
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 #include "GrPaint.h" 9 #include "GrPaint.h"
10 10
11 #include "GrProcOptInfo.h" 11 #include "GrProcOptInfo.h"
12 #include "effects/GrCoverageSetOpXP.h" 12 #include "effects/GrCoverageSetOpXP.h"
13 #include "effects/GrPorterDuffXferProcessor.h" 13 #include "effects/GrPorterDuffXferProcessor.h"
14 #include "effects/GrSimpleTextureEffect.h" 14 #include "effects/GrSimpleTextureEffect.h"
15 15
16 GrPaint::GrPaint() 16 GrPaint::GrPaint()
17 : fAntiAlias(false) 17 : fAntiAlias(false)
18 , fDither(false) 18 , fDither(false)
19 , fColor(GrColor_WHITE) { 19 , fColor(GrColor_WHITE)
20 , fProcDataManager(SkNEW(GrProcessorDataManager)) {
20 } 21 }
21 22
22 void GrPaint::setCoverageSetOpXPFactory(SkRegion::Op regionOp, bool invertCovera ge) { 23 void GrPaint::setCoverageSetOpXPFactory(SkRegion::Op regionOp, bool invertCovera ge) {
23 fXPFactory.reset(GrCoverageSetOpXPFactory::Create(regionOp, invertCoverage)) ; 24 fXPFactory.reset(GrCoverageSetOpXPFactory::Create(regionOp, invertCoverage)) ;
24 } 25 }
25 26
26 void GrPaint::addColorTextureProcessor(GrTexture* texture, const SkMatrix& matri x) { 27 void GrPaint::addColorTextureProcessor(GrTexture* texture, const SkMatrix& matri x) {
27 this->addColorProcessor(GrSimpleTextureEffect::Create(&fProcDataManager, tex ture, 28 this->addColorProcessor(GrSimpleTextureEffect::Create(fProcDataManager, text ure,
28 matrix))->unref(); 29 matrix))->unref();
29 } 30 }
30 31
31 void GrPaint::addCoverageTextureProcessor(GrTexture* texture, const SkMatrix& ma trix) { 32 void GrPaint::addCoverageTextureProcessor(GrTexture* texture, const SkMatrix& ma trix) {
32 this->addCoverageProcessor(GrSimpleTextureEffect::Create(&fProcDataManager, texture, 33 this->addCoverageProcessor(GrSimpleTextureEffect::Create(fProcDataManager, t exture,
33 matrix))->unref(); 34 matrix))->unref();
34 } 35 }
35 36
36 void GrPaint::addColorTextureProcessor(GrTexture* texture, 37 void GrPaint::addColorTextureProcessor(GrTexture* texture,
37 const SkMatrix& matrix, 38 const SkMatrix& matrix,
38 const GrTextureParams& params) { 39 const GrTextureParams& params) {
39 this->addColorProcessor(GrSimpleTextureEffect::Create(&fProcDataManager, tex ture, matrix, 40 this->addColorProcessor(GrSimpleTextureEffect::Create(fProcDataManager, text ure, matrix,
40 params))->unref(); 41 params))->unref();
41 } 42 }
42 43
43 void GrPaint::addCoverageTextureProcessor(GrTexture* texture, 44 void GrPaint::addCoverageTextureProcessor(GrTexture* texture,
44 const SkMatrix& matrix, 45 const SkMatrix& matrix,
45 const GrTextureParams& params) { 46 const GrTextureParams& params) {
46 this->addCoverageProcessor(GrSimpleTextureEffect::Create(&fProcDataManager, texture, matrix, 47 this->addCoverageProcessor(GrSimpleTextureEffect::Create(fProcDataManager, t exture, matrix,
47 params))->unref(); 48 params))->unref();
48 } 49 }
49 50
50 bool GrPaint::isConstantBlendedColor(GrColor* color) const { 51 bool GrPaint::isConstantBlendedColor(GrColor* color) const {
51 GrProcOptInfo colorProcInfo; 52 GrProcOptInfo colorProcInfo;
52 colorProcInfo.calcWithInitialValues(fColorStages.begin(), this->numColorStag es(), fColor, 53 colorProcInfo.calcWithInitialValues(fColorStages.begin(), this->numColorStag es(), fColor,
53 kRGBA_GrColorComponentFlags, false); 54 kRGBA_GrColorComponentFlags, false);
54 55
55 GrXPFactory::InvariantBlendedColor blendedColor; 56 GrXPFactory::InvariantBlendedColor blendedColor;
56 fXPFactory->getInvariantBlendedColor(colorProcInfo, &blendedColor); 57 fXPFactory->getInvariantBlendedColor(colorProcInfo, &blendedColor);
57 58
58 if (kRGBA_GrColorComponentFlags == blendedColor.fKnownColorFlags) { 59 if (kRGBA_GrColorComponentFlags == blendedColor.fKnownColorFlags) {
59 *color = blendedColor.fKnownColor; 60 *color = blendedColor.fKnownColor;
60 return true; 61 return true;
61 } 62 }
62 return false; 63 return false;
63 } 64 }
OLDNEW
« no previous file with comments | « include/gpu/GrProcessorDataManager.h ('k') | src/gpu/GrPipelineBuilder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698