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

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

Issue 481443002: Add GrResourceCache2. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: fix leaks Created 6 years, 4 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/GrResourceCache2.cpp ('k') | src/gpu/gl/GrGpuGL.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 GrGpuGL_DEFINED 8 #ifndef GrGpuGL_DEFINED
9 #define GrGpuGL_DEFINED 9 #define GrGpuGL_DEFINED
10 10
(...skipping 12 matching lines...) Expand all
23 23
24 #ifdef SK_DEVELOPER 24 #ifdef SK_DEVELOPER
25 #define PROGRAM_CACHE_STATS 25 #define PROGRAM_CACHE_STATS
26 #endif 26 #endif
27 27
28 class GrGpuGL : public GrGpu { 28 class GrGpuGL : public GrGpu {
29 public: 29 public:
30 GrGpuGL(const GrGLContext& ctx, GrContext* context); 30 GrGpuGL(const GrGLContext& ctx, GrContext* context);
31 virtual ~GrGpuGL(); 31 virtual ~GrGpuGL();
32 32
33 virtual void contextAbandonded() SK_OVERRIDE;
34
33 const GrGLContext& glContext() const { return fGLContext; } 35 const GrGLContext& glContext() const { return fGLContext; }
34 36
35 const GrGLInterface* glInterface() const { return fGLContext.interface(); } 37 const GrGLInterface* glInterface() const { return fGLContext.interface(); }
36 const GrGLContextInfo& ctxInfo() const { return fGLContext; } 38 const GrGLContextInfo& ctxInfo() const { return fGLContext; }
37 GrGLStandard glStandard() const { return fGLContext.standard(); } 39 GrGLStandard glStandard() const { return fGLContext.standard(); }
38 GrGLVersion glVersion() const { return fGLContext.version(); } 40 GrGLVersion glVersion() const { return fGLContext.version(); }
39 GrGLSLGeneration glslGeneration() const { return fGLContext.glslGeneration() ; } 41 GrGLSLGeneration glslGeneration() const { return fGLContext.glslGeneration() ; }
40 const GrGLCaps& glCaps() const { return *fGLContext.caps(); } 42 const GrGLCaps& glCaps() const { return *fGLContext.caps(); }
41 43
42 GrGLPathRendering* glPathRendering() { 44 GrGLPathRendering* glPathRendering() {
(...skipping 25 matching lines...) Expand all
68 virtual bool readPixelsWillPayForYFlip( 70 virtual bool readPixelsWillPayForYFlip(
69 GrRenderTarget* renderTarget, 71 GrRenderTarget* renderTarget,
70 int left, int top, 72 int left, int top,
71 int width, int height, 73 int width, int height,
72 GrPixelConfig config, 74 GrPixelConfig config,
73 size_t rowBytes) const SK_OVERRIDE; 75 size_t rowBytes) const SK_OVERRIDE;
74 virtual bool fullReadPixelsIsFasterThanPartial() const SK_OVERRIDE; 76 virtual bool fullReadPixelsIsFasterThanPartial() const SK_OVERRIDE;
75 77
76 virtual void initCopySurfaceDstDesc(const GrSurface* src, GrTextureDesc* des c) SK_OVERRIDE; 78 virtual void initCopySurfaceDstDesc(const GrSurface* src, GrTextureDesc* des c) SK_OVERRIDE;
77 79
78 virtual void abandonResources() SK_OVERRIDE;
79
80 // These functions should be used to bind GL objects. They track the GL stat e and skip redundant 80 // These functions should be used to bind GL objects. They track the GL stat e and skip redundant
81 // bindings. Making the equivalent glBind calls directly will confuse the st ate tracking. 81 // bindings. Making the equivalent glBind calls directly will confuse the st ate tracking.
82 void bindVertexArray(GrGLuint id) { 82 void bindVertexArray(GrGLuint id) {
83 fHWGeometryState.setVertexArrayID(this, id); 83 fHWGeometryState.setVertexArrayID(this, id);
84 } 84 }
85 void bindIndexBufferAndDefaultVertexArray(GrGLuint id) { 85 void bindIndexBufferAndDefaultVertexArray(GrGLuint id) {
86 fHWGeometryState.setIndexBufferIDOnDefaultVertexArray(this, id); 86 fHWGeometryState.setIndexBufferIDOnDefaultVertexArray(this, id);
87 } 87 }
88 void bindVertexBuffer(GrGLuint id) { 88 void bindVertexBuffer(GrGLuint id) {
89 fHWGeometryState.setVertexBufferID(this, id); 89 fHWGeometryState.setVertexBufferID(this, id);
(...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after
442 442
443 // we record what stencil format worked last time to hopefully exit early 443 // we record what stencil format worked last time to hopefully exit early
444 // from our loop that tries stencil formats and calls check fb status. 444 // from our loop that tries stencil formats and calls check fb status.
445 int fLastSuccessfulStencilFmtIdx; 445 int fLastSuccessfulStencilFmtIdx;
446 446
447 typedef GrGpu INHERITED; 447 typedef GrGpu INHERITED;
448 friend class GrGLPathRendering; // For accessing setTextureUnit. 448 friend class GrGLPathRendering; // For accessing setTextureUnit.
449 }; 449 };
450 450
451 #endif 451 #endif
OLDNEW
« no previous file with comments | « src/gpu/GrResourceCache2.cpp ('k') | src/gpu/gl/GrGpuGL.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698