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

Side by Side Diff: src/gpu/effects/GrBezierEffect.h

Issue 659803004: Some cleanup in processor header files. (Closed) Base URL: https://skia.googlesource.com/skia.git@ccmat
Patch Set: rebase 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 | « src/gpu/GrOvalRenderer.cpp ('k') | src/gpu/effects/GrDitherEffect.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 * Copyright 2013 Google Inc. 2 * Copyright 2013 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef GrBezierEffect_DEFINED 8 #ifndef GrBezierEffect_DEFINED
9 #define GrBezierEffect_DEFINED 9 #define GrBezierEffect_DEFINED
10 10
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 * were "not too thin" curves and ellipses then 2nd order may have an advantage since 52 * were "not too thin" curves and ellipses then 2nd order may have an advantage since
53 * only one geometry would need to be rendered. However no benches were run comp aring 53 * only one geometry would need to be rendered. However no benches were run comp aring
54 * chopped first order and non chopped 2nd order. 54 * chopped first order and non chopped 2nd order.
55 */ 55 */
56 class GrGLConicEffect; 56 class GrGLConicEffect;
57 57
58 class GrConicEffect : public GrGeometryProcessor { 58 class GrConicEffect : public GrGeometryProcessor {
59 public: 59 public:
60 static GrGeometryProcessor* Create(const GrPrimitiveEdgeType edgeType, 60 static GrGeometryProcessor* Create(const GrPrimitiveEdgeType edgeType,
61 const GrDrawTargetCaps& caps) { 61 const GrDrawTargetCaps& caps) {
62 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gConicFillAA, GrConicEffect, 62 GR_CREATE_STATIC_PROCESSOR(gConicFillAA, GrConicEffect, (kFillAA_GrProce ssorEdgeType));
63 (kFillAA_GrProcessorEdgeType)); 63 GR_CREATE_STATIC_PROCESSOR(gConicHairAA, GrConicEffect, (kHairlineAA_GrP rocessorEdgeType));
64 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gConicHairAA, GrConicEffect, 64 GR_CREATE_STATIC_PROCESSOR(gConicFillBW, GrConicEffect, (kFillBW_GrProce ssorEdgeType));
65 (kHairlineAA_GrProcessorEdgeType));
66 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gConicFillBW, GrConicEffect,
67 (kFillBW_GrProcessorEdgeType));
68 switch (edgeType) { 65 switch (edgeType) {
69 case kFillAA_GrProcessorEdgeType: 66 case kFillAA_GrProcessorEdgeType:
70 if (!caps.shaderDerivativeSupport()) { 67 if (!caps.shaderDerivativeSupport()) {
71 return NULL; 68 return NULL;
72 } 69 }
73 gConicFillAA->ref(); 70 gConicFillAA->ref();
74 return gConicFillAA; 71 return gConicFillAA;
75 case kHairlineAA_GrProcessorEdgeType: 72 case kHairlineAA_GrProcessorEdgeType:
76 if (!caps.shaderDerivativeSupport()) { 73 if (!caps.shaderDerivativeSupport()) {
77 return NULL; 74 return NULL;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
124 * the Quadratic, u, v have the values {0,0}, {1/2, 0}, and {1, 1} respectively. 121 * the Quadratic, u, v have the values {0,0}, {1/2, 0}, and {1, 1} respectively.
125 * Coverage for AA is min(0, 1-distance). 3rd & 4th cimponent unused. 122 * Coverage for AA is min(0, 1-distance). 3rd & 4th cimponent unused.
126 * Requires shader derivative instruction support. 123 * Requires shader derivative instruction support.
127 */ 124 */
128 class GrGLQuadEffect; 125 class GrGLQuadEffect;
129 126
130 class GrQuadEffect : public GrGeometryProcessor { 127 class GrQuadEffect : public GrGeometryProcessor {
131 public: 128 public:
132 static GrGeometryProcessor* Create(const GrPrimitiveEdgeType edgeType, 129 static GrGeometryProcessor* Create(const GrPrimitiveEdgeType edgeType,
133 const GrDrawTargetCaps& caps) { 130 const GrDrawTargetCaps& caps) {
134 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gQuadFillAA, GrQuadEffect, 131 GR_CREATE_STATIC_PROCESSOR(gQuadFillAA, GrQuadEffect, (kFillAA_GrProcess orEdgeType));
135 (kFillAA_GrProcessorEdgeType)); 132 GR_CREATE_STATIC_PROCESSOR(gQuadHairAA, GrQuadEffect, (kHairlineAA_GrPro cessorEdgeType));
136 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gQuadHairAA, GrQuadEffect, 133 GR_CREATE_STATIC_PROCESSOR(gQuadFillBW, GrQuadEffect, (kFillBW_GrProcess orEdgeType));
137 (kHairlineAA_GrProcessorEdgeType));
138 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gQuadFillBW, GrQuadEffect,
139 (kFillBW_GrProcessorEdgeType));
140 switch (edgeType) { 134 switch (edgeType) {
141 case kFillAA_GrProcessorEdgeType: 135 case kFillAA_GrProcessorEdgeType:
142 if (!caps.shaderDerivativeSupport()) { 136 if (!caps.shaderDerivativeSupport()) {
143 return NULL; 137 return NULL;
144 } 138 }
145 gQuadFillAA->ref(); 139 gQuadFillAA->ref();
146 return gQuadFillAA; 140 return gQuadFillAA;
147 case kHairlineAA_GrProcessorEdgeType: 141 case kHairlineAA_GrProcessorEdgeType:
148 if (!caps.shaderDerivativeSupport()) { 142 if (!caps.shaderDerivativeSupport()) {
149 return NULL; 143 return NULL;
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 * the fourth value is not used. Distance is calculated using a 192 * the fourth value is not used. Distance is calculated using a
199 * first order approximation from the taylor series. 193 * first order approximation from the taylor series.
200 * Coverage for AA is max(0, 1-distance). 194 * Coverage for AA is max(0, 1-distance).
201 */ 195 */
202 class GrGLCubicEffect; 196 class GrGLCubicEffect;
203 197
204 class GrCubicEffect : public GrGeometryProcessor { 198 class GrCubicEffect : public GrGeometryProcessor {
205 public: 199 public:
206 static GrGeometryProcessor* Create(const GrPrimitiveEdgeType edgeType, 200 static GrGeometryProcessor* Create(const GrPrimitiveEdgeType edgeType,
207 const GrDrawTargetCaps& caps) { 201 const GrDrawTargetCaps& caps) {
208 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gCubicFillAA, GrCubicEffect, 202 GR_CREATE_STATIC_PROCESSOR(gCubicFillAA, GrCubicEffect, (kFillAA_GrProce ssorEdgeType));
209 (kFillAA_GrProcessorEdgeType)); 203 GR_CREATE_STATIC_PROCESSOR(gCubicHairAA, GrCubicEffect, (kHairlineAA_GrP rocessorEdgeType));
210 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gCubicHairAA, GrCubicEffect, 204 GR_CREATE_STATIC_PROCESSOR(gCubicFillBW, GrCubicEffect, (kFillBW_GrProce ssorEdgeType));
211 (kHairlineAA_GrProcessorEdgeType));
212 GR_CREATE_STATIC_GEOMETRY_PROCESSOR(gCubicFillBW, GrCubicEffect,
213 (kFillBW_GrProcessorEdgeType));
214 switch (edgeType) { 205 switch (edgeType) {
215 case kFillAA_GrProcessorEdgeType: 206 case kFillAA_GrProcessorEdgeType:
216 if (!caps.shaderDerivativeSupport()) { 207 if (!caps.shaderDerivativeSupport()) {
217 return NULL; 208 return NULL;
218 } 209 }
219 gCubicFillAA->ref(); 210 gCubicFillAA->ref();
220 return gCubicFillAA; 211 return gCubicFillAA;
221 case kHairlineAA_GrProcessorEdgeType: 212 case kHairlineAA_GrProcessorEdgeType:
222 if (!caps.shaderDerivativeSupport()) { 213 if (!caps.shaderDerivativeSupport()) {
223 return NULL; 214 return NULL;
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
256 247
257 GrPrimitiveEdgeType fEdgeType; 248 GrPrimitiveEdgeType fEdgeType;
258 const GrShaderVar& fInCubicCoeffs; 249 const GrShaderVar& fInCubicCoeffs;
259 250
260 GR_DECLARE_GEOMETRY_PROCESSOR_TEST; 251 GR_DECLARE_GEOMETRY_PROCESSOR_TEST;
261 252
262 typedef GrGeometryProcessor INHERITED; 253 typedef GrGeometryProcessor INHERITED;
263 }; 254 };
264 255
265 #endif 256 #endif
OLDNEW
« no previous file with comments | « src/gpu/GrOvalRenderer.cpp ('k') | src/gpu/effects/GrDitherEffect.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698