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

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

Issue 1541903002: 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
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 GrGpu_DEFINED 8 #ifndef GrGpu_DEFINED
9 #define GrGpu_DEFINED 9 #define GrGpu_DEFINED
10 10
(...skipping 17 matching lines...) Expand all
28 class GrPipeline; 28 class GrPipeline;
29 class GrPrimitiveProcessor; 29 class GrPrimitiveProcessor;
30 class GrRenderTarget; 30 class GrRenderTarget;
31 class GrStencilAttachment; 31 class GrStencilAttachment;
32 class GrSurface; 32 class GrSurface;
33 class GrTexture; 33 class GrTexture;
34 class GrTransferBuffer; 34 class GrTransferBuffer;
35 class GrVertexBuffer; 35 class GrVertexBuffer;
36 class GrVertices; 36 class GrVertices;
37 37
38 //#define ENABLE_PLS
bsalomon 2016/01/13 19:15:34 Since this macro spans multiple files maybe prefix
39
38 class GrGpu : public SkRefCnt { 40 class GrGpu : public SkRefCnt {
39 public: 41 public:
40 /** 42 /**
41 * Create an instance of GrGpu that matches the specified backend. If the re quested backend is 43 * Create an instance of GrGpu that matches the specified backend. If the re quested backend is
42 * not supported (at compile-time or run-time) this returns nullptr. The con text will not be 44 * not supported (at compile-time or run-time) this returns nullptr. The con text will not be
43 * fully constructed and should not be used by GrGpu until after this functi on returns. 45 * fully constructed and should not be used by GrGpu until after this functi on returns.
44 */ 46 */
45 static GrGpu* Create(GrBackend, GrBackendContext, const GrContextOptions&, G rContext* context); 47 static GrGpu* Create(GrBackend, GrBackendContext, const GrContextOptions&, G rContext* context);
46 48
47 //////////////////////////////////////////////////////////////////////////// 49 ////////////////////////////////////////////////////////////////////////////
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 , fDesc(desc) { 340 , fDesc(desc) {
339 SkASSERT(primProc && pipeline && desc); 341 SkASSERT(primProc && pipeline && desc);
340 } 342 }
341 const GrPrimitiveProcessor* fPrimitiveProcessor; 343 const GrPrimitiveProcessor* fPrimitiveProcessor;
342 const GrPipeline* fPipeline; 344 const GrPipeline* fPipeline;
343 const GrProgramDesc* fDesc; 345 const GrProgramDesc* fDesc;
344 }; 346 };
345 347
346 void draw(const DrawArgs&, const GrVertices&); 348 void draw(const DrawArgs&, const GrVertices&);
347 349
350 // Called by drawtarget when flushing. Provides a hook for working around an ARM PLS driver bug.
351 virtual void performFlushWorkaround();
352
348 /////////////////////////////////////////////////////////////////////////// 353 ///////////////////////////////////////////////////////////////////////////
349 // Debugging and Stats 354 // Debugging and Stats
350 355
351 class Stats { 356 class Stats {
352 public: 357 public:
353 #if GR_GPU_STATS 358 #if GR_GPU_STATS
354 Stats() { this->reset(); } 359 Stats() { this->reset(); }
355 360
356 void reset() { 361 void reset() {
357 fRenderTargetBinds = 0; 362 fRenderTargetBinds = 0;
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
551 ResetTimestamp fResetTi mestamp; 556 ResetTimestamp fResetTi mestamp;
552 uint32_t fResetBi ts; 557 uint32_t fResetBi ts;
553 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu. 558 // The context owns us, not vice-versa, so this ptr is not ref'ed by Gpu.
554 GrContext* fContext ; 559 GrContext* fContext ;
555 560
556 friend class GrPathRendering; 561 friend class GrPathRendering;
557 typedef SkRefCnt INHERITED; 562 typedef SkRefCnt INHERITED;
558 }; 563 };
559 564
560 #endif 565 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698