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

Side by Side Diff: src/gpu/GrPathRenderer.h

Issue 1966903004: Remove clip from GrPipelineBuilder (Closed) Base URL: https://skia.googlesource.com/skia.git@fix2_nvpr
Patch Set: Created 4 years, 7 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
OLDNEW
1 /* 1 /*
2 * Copyright 2011 Google Inc. 2 * Copyright 2011 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 GrPathRenderer_DEFINED 8 #ifndef GrPathRenderer_DEFINED
9 #define GrPathRenderer_DEFINED 9 #define GrPathRenderer_DEFINED
10 10
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 SkDEBUGCODE(args.validate();) 104 SkDEBUGCODE(args.validate();)
105 return this->onCanDrawPath(args); 105 return this->onCanDrawPath(args);
106 } 106 }
107 107
108 /** 108 /**
109 * Args to drawPath() 109 * Args to drawPath()
110 * 110 *
111 * fTarget The target that the path will be rendered to 111 * fTarget The target that the path will be rendered to
112 * fResourceProvider The resource provider for creating gpu resources t o render the path 112 * fResourceProvider The resource provider for creating gpu resources t o render the path
113 * fPipelineBuilder The pipelineBuilder 113 * fPipelineBuilder The pipelineBuilder
114 * fClip The clip
114 * fColor Color to render with 115 * fColor Color to render with
115 * fViewMatrix The viewMatrix 116 * fViewMatrix The viewMatrix
116 * fPath the path to draw. 117 * fPath the path to draw.
117 * fStyle the style information (path effect, stroke info) 118 * fStyle the style information (path effect, stroke info)
118 * fAntiAlias true if anti-aliasing is required. 119 * fAntiAlias true if anti-aliasing is required.
119 * fGammaCorrect true if gamma-correct rendering is to be used. 120 * fGammaCorrect true if gamma-correct rendering is to be used.
120 */ 121 */
121 struct DrawPathArgs { 122 struct DrawPathArgs {
122 GrDrawTarget* fTarget; 123 GrDrawTarget* fTarget;
123 GrResourceProvider* fResourceProvider; 124 GrResourceProvider* fResourceProvider;
124 GrPipelineBuilder* fPipelineBuilder; 125 GrPipelineBuilder* fPipelineBuilder;
126 const GrClip* fClip;
125 GrColor fColor; 127 GrColor fColor;
126 const SkMatrix* fViewMatrix; 128 const SkMatrix* fViewMatrix;
127 const SkPath* fPath; 129 const SkPath* fPath;
128 const GrStyle* fStyle; 130 const GrStyle* fStyle;
129 bool fAntiAlias; 131 bool fAntiAlias;
130 bool fGammaCorrect; 132 bool fGammaCorrect;
131 133
132 void validate() const { 134 void validate() const {
133 SkASSERT(fTarget); 135 SkASSERT(fTarget);
134 SkASSERT(fResourceProvider); 136 SkASSERT(fResourceProvider);
135 SkASSERT(fPipelineBuilder); 137 SkASSERT(fPipelineBuilder);
138 SkASSERT(fClip);
136 SkASSERT(fViewMatrix); 139 SkASSERT(fViewMatrix);
137 SkASSERT(fPath); 140 SkASSERT(fPath);
138 SkASSERT(fStyle); 141 SkASSERT(fStyle);
139 SkASSERT(!fPath->isEmpty()); 142 SkASSERT(!fPath->isEmpty());
140 } 143 }
141 }; 144 };
142 145
143 /** 146 /**
144 * Draws the path into the draw target. If getStencilSupport() would return kNoRestriction then 147 * Draws the path into the draw target. If getStencilSupport() would return kNoRestriction then
145 * the subclass must respect the stencil settings of the GrPipelineBuilder. 148 * the subclass must respect the stencil settings of the GrPipelineBuilder.
(...skipping 25 matching lines...) Expand all
171 * fTarget The target that the path will be rendered to. 174 * fTarget The target that the path will be rendered to.
172 * fResourceProvider The resource provider for creating gpu resources t o render the path 175 * fResourceProvider The resource provider for creating gpu resources t o render the path
173 * fPipelineBuilder The pipeline builder. 176 * fPipelineBuilder The pipeline builder.
174 * fViewMatrix Matrix applied to the path. 177 * fViewMatrix Matrix applied to the path.
175 * fPath The path to draw. 178 * fPath The path to draw.
176 */ 179 */
177 struct StencilPathArgs { 180 struct StencilPathArgs {
178 GrDrawTarget* fTarget; 181 GrDrawTarget* fTarget;
179 GrResourceProvider* fResourceProvider; 182 GrResourceProvider* fResourceProvider;
180 GrPipelineBuilder* fPipelineBuilder; 183 GrPipelineBuilder* fPipelineBuilder;
184 const GrClip* fClip;
181 const SkMatrix* fViewMatrix; 185 const SkMatrix* fViewMatrix;
182 const SkPath* fPath; 186 const SkPath* fPath;
183 187
184 void validate() const { 188 void validate() const {
185 SkASSERT(fTarget); 189 SkASSERT(fTarget);
186 SkASSERT(fResourceProvider); 190 SkASSERT(fResourceProvider);
187 SkASSERT(fPipelineBuilder); 191 SkASSERT(fPipelineBuilder);
188 SkASSERT(fViewMatrix); 192 SkASSERT(fViewMatrix);
189 SkASSERT(fPath); 193 SkASSERT(fPath);
190 SkASSERT(!fPath->isEmpty()); 194 SkASSERT(!fPath->isEmpty());
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
280 drawArgs.fStyle = &GrStyle::SimpleFill(); 284 drawArgs.fStyle = &GrStyle::SimpleFill();
281 drawArgs.fAntiAlias = false; 285 drawArgs.fAntiAlias = false;
282 drawArgs.fGammaCorrect = false; 286 drawArgs.fGammaCorrect = false;
283 this->drawPath(drawArgs); 287 this->drawPath(drawArgs);
284 } 288 }
285 289
286 typedef SkRefCnt INHERITED; 290 typedef SkRefCnt INHERITED;
287 }; 291 };
288 292
289 #endif 293 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698