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

Side by Side Diff: src/gpu/gl/GrGLGpu.h

Issue 1626553002: Revert of added support for PLS path rendering (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 11 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/gl/GrGLDefines.h ('k') | src/gpu/gl/GrGLGpu.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 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 GrGLGpu_DEFINED 8 #ifndef GrGLGpu_DEFINED
9 #define GrGLGpu_DEFINED 9 #define GrGLGpu_DEFINED
10 10
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 127
128 GrBackendObject createTestingOnlyBackendTexture(void* pixels, int w, int h, 128 GrBackendObject createTestingOnlyBackendTexture(void* pixels, int w, int h,
129 GrPixelConfig config) const override; 129 GrPixelConfig config) const override;
130 bool isTestingOnlyBackendTexture(GrBackendObject) const override; 130 bool isTestingOnlyBackendTexture(GrBackendObject) const override;
131 void deleteTestingOnlyBackendTexture(GrBackendObject, bool abandonTexture) c onst override; 131 void deleteTestingOnlyBackendTexture(GrBackendObject, bool abandonTexture) c onst override;
132 132
133 void resetShaderCacheForTesting() const override; 133 void resetShaderCacheForTesting() const override;
134 134
135 void drawDebugWireRect(GrRenderTarget*, const SkIRect&, GrColor) override; 135 void drawDebugWireRect(GrRenderTarget*, const SkIRect&, GrColor) override;
136 136
137 void performFlushWorkaround() override;
138
139 private: 137 private:
140 GrGLGpu(GrGLContext* ctx, GrContext* context); 138 GrGLGpu(GrGLContext* ctx, GrContext* context);
141 139
142 // GrGpu overrides 140 // GrGpu overrides
143 void onResetContext(uint32_t resetBits) override; 141 void onResetContext(uint32_t resetBits) override;
144 142
145 void xferBarrier(GrRenderTarget*, GrXferBarrierType) override; 143 void xferBarrier(GrRenderTarget*, GrXferBarrierType) override;
146 144
147 GrTexture* onCreateTexture(const GrSurfaceDesc& desc, GrGpuResource::LifeCyc le lifeCycle, 145 GrTexture* onCreateTexture(const GrSurfaceDesc& desc, GrGpuResource::LifeCyc le lifeCycle,
148 const void* srcData, size_t rowBytes) override; 146 const void* srcData, size_t rowBytes) override;
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
229 const SkIPoint& dstPoint); 227 const SkIPoint& dstPoint);
230 void copySurfaceAsCopyTexSubImage(GrSurface* dst, 228 void copySurfaceAsCopyTexSubImage(GrSurface* dst,
231 GrSurface* src, 229 GrSurface* src,
232 const SkIRect& srcRect, 230 const SkIRect& srcRect,
233 const SkIPoint& dstPoint); 231 const SkIPoint& dstPoint);
234 bool copySurfaceAsBlitFramebuffer(GrSurface* dst, 232 bool copySurfaceAsBlitFramebuffer(GrSurface* dst,
235 GrSurface* src, 233 GrSurface* src,
236 const SkIRect& srcRect, 234 const SkIRect& srcRect,
237 const SkIPoint& dstPoint); 235 const SkIPoint& dstPoint);
238 236
239 void stampRectUsingProgram(GrGLuint program, const SkRect& bounds, GrGLint p osXformUniform,
240 GrGLuint arrayBuffer);
241
242 void setupPixelLocalStorage(const DrawArgs& args);
243
244 static bool BlendCoeffReferencesConstant(GrBlendCoeff coeff); 237 static bool BlendCoeffReferencesConstant(GrBlendCoeff coeff);
245 238
246 class ProgramCache : public ::SkNoncopyable { 239 class ProgramCache : public ::SkNoncopyable {
247 public: 240 public:
248 ProgramCache(GrGLGpu* gpu); 241 ProgramCache(GrGLGpu* gpu);
249 ~ProgramCache(); 242 ~ProgramCache();
250 243
251 void reset(); 244 void reset();
252 void abandon(); 245 void abandon();
253 GrGLProgram* refProgram(const DrawArgs&); 246 GrGLProgram* refProgram(const DrawArgs&);
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 348
356 // Must be called if bindSurfaceFBOForCopy was used to bind a surface for co pying. 349 // Must be called if bindSurfaceFBOForCopy was used to bind a surface for co pying.
357 void unbindTextureFBOForCopy(GrGLenum fboTarget, GrSurface* surface); 350 void unbindTextureFBOForCopy(GrGLenum fboTarget, GrSurface* surface);
358 351
359 SkAutoTUnref<GrGLContext> fGLContext; 352 SkAutoTUnref<GrGLContext> fGLContext;
360 353
361 void createCopyPrograms(); 354 void createCopyPrograms();
362 void createWireRectProgram(); 355 void createWireRectProgram();
363 void createUnitRectBuffer(); 356 void createUnitRectBuffer();
364 357
365 void createPLSSetupProgram();
366
367 // GL program-related state 358 // GL program-related state
368 ProgramCache* fProgramCache; 359 ProgramCache* fProgramCache;
369 360
370 /////////////////////////////////////////////////////////////////////////// 361 ///////////////////////////////////////////////////////////////////////////
371 ///@name Caching of GL State 362 ///@name Caching of GL State
372 ///@{ 363 ///@{
373 int fHWActiveTextureUnitIdx; 364 int fHWActiveTextureUnitIdx;
374 GrGLuint fHWProgramID; 365 GrGLuint fHWProgramID;
375 366
376 enum TriState { 367 enum TriState {
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
567 case GR_GL_TEXTURE_EXTERNAL: 558 case GR_GL_TEXTURE_EXTERNAL:
568 return 1; 559 return 1;
569 case GR_GL_TEXTURE_RECTANGLE: 560 case GR_GL_TEXTURE_RECTANGLE:
570 return 2; 561 return 2;
571 default: 562 default:
572 SkFAIL("Unexpected texture target type."); 563 SkFAIL("Unexpected texture target type.");
573 return 0; 564 return 0;
574 } 565 }
575 } 566 }
576 567
577 struct {
578 GrGLuint fProgram;
579 GrGLint fPosXformUniform;
580 GrGLuint fArrayBuffer;
581 } fPLSSetupProgram;
582
583 bool fHWPLSEnabled;
584 bool fPLSHasBeenUsed;
585
586 typedef GrGpu INHERITED; 568 typedef GrGpu INHERITED;
587 friend class GrGLPathRendering; // For accessing setTextureUnit. 569 friend class GrGLPathRendering; // For accessing setTextureUnit.
588 }; 570 };
589 571
590 #endif 572 #endif
OLDNEW
« no previous file with comments | « src/gpu/gl/GrGLDefines.h ('k') | src/gpu/gl/GrGLGpu.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698