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

Side by Side Diff: cc/gl_renderer.h

Issue 11420079: Allow using a larger-than-necessary texture as cached render pass backing (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: seems to work Created 8 years 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 // Copyright 2010 The Chromium Authors. All rights reserved. 1 // Copyright 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CC_GL_RENDERER_H_ 5 #ifndef CC_GL_RENDERER_H_
6 #define CC_GL_RENDERER_H_ 6 #define CC_GL_RENDERER_H_
7 7
8 #include "cc/cc_export.h" 8 #include "cc/cc_export.h"
9 #include "cc/checkerboard_draw_quad.h" 9 #include "cc/checkerboard_draw_quad.h"
10 #include "cc/debug_border_draw_quad.h" 10 #include "cc/debug_border_draw_quad.h"
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 virtual void ensureScissorTestDisabled() OVERRIDE; 90 virtual void ensureScissorTestDisabled() OVERRIDE;
91 virtual void finishDrawingQuadList() OVERRIDE; 91 virtual void finishDrawingQuadList() OVERRIDE;
92 92
93 private: 93 private:
94 static void toGLMatrix(float*, const gfx::Transform&); 94 static void toGLMatrix(float*, const gfx::Transform&);
95 static int priorityCutoffValue(WebKit::WebGraphicsMemoryAllocation::Priority Cutoff); 95 static int priorityCutoffValue(WebKit::WebGraphicsMemoryAllocation::Priority Cutoff);
96 96
97 void drawCheckerboardQuad(const DrawingFrame&, const CheckerboardDrawQuad*); 97 void drawCheckerboardQuad(const DrawingFrame&, const CheckerboardDrawQuad*);
98 void drawDebugBorderQuad(const DrawingFrame&, const DebugBorderDrawQuad*); 98 void drawDebugBorderQuad(const DrawingFrame&, const DebugBorderDrawQuad*);
99 scoped_ptr<ScopedResource> drawBackgroundFilters( 99 scoped_ptr<ScopedResource> drawBackgroundFilters(
100 DrawingFrame&, const RenderPassDrawQuad*, const WebKit::WebFilterOperati ons&, 100 DrawingFrame&, const RenderPassDrawQuad*,
101 const WebKit::WebFilterOperations&,
101 const gfx::Transform& contentsDeviceTransform, 102 const gfx::Transform& contentsDeviceTransform,
102 const gfx::Transform& contentsDeviceTransformInverse); 103 const gfx::Transform& contentsDeviceTransformInverse);
103 void drawRenderPassQuad(DrawingFrame&, const RenderPassDrawQuad*); 104 void drawRenderPassQuad(DrawingFrame&, const RenderPassDrawQuad*);
104 void drawSolidColorQuad(const DrawingFrame&, const SolidColorDrawQuad*); 105 void drawSolidColorQuad(const DrawingFrame&, const SolidColorDrawQuad*);
105 void drawStreamVideoQuad(const DrawingFrame&, const StreamVideoDrawQuad*); 106 void drawStreamVideoQuad(const DrawingFrame&, const StreamVideoDrawQuad*);
106 void drawTextureQuad(const DrawingFrame&, const TextureDrawQuad*); 107 void drawTextureQuad(const DrawingFrame&, const TextureDrawQuad*);
107 void enqueueTextureQuad(const DrawingFrame&, const TextureDrawQuad*); 108 void enqueueTextureQuad(const DrawingFrame&, const TextureDrawQuad*);
108 void flushTextureQuadCache(); 109 void flushTextureQuadCache();
109 void drawIOSurfaceQuad(const DrawingFrame&, const IOSurfaceDrawQuad*); 110 void drawIOSurfaceQuad(const DrawingFrame&, const IOSurfaceDrawQuad*);
110 void drawTileQuad(const DrawingFrame&, const TileDrawQuad*); 111 void drawTileQuad(const DrawingFrame&, const TileDrawQuad*);
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 // Tiled layer shaders. 150 // Tiled layer shaders.
150 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexAlpha> TilePro gram; 151 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexAlpha> TilePro gram;
151 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexClampAlphaAA> TileProgramAA; 152 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexClampAlphaAA> TileProgramAA;
152 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexClampSwizzleAl phaAA> TileProgramSwizzleAA; 153 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexClampSwizzleAl phaAA> TileProgramSwizzleAA;
153 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexOpaque> TilePr ogramOpaque; 154 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexOpaque> TilePr ogramOpaque;
154 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexSwizzleAlpha> TileProgramSwizzle; 155 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexSwizzleAlpha> TileProgramSwizzle;
155 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexSwizzleOpaque> TileProgramSwizzleOpaque; 156 typedef ProgramBinding<VertexShaderTile, FragmentShaderRGBATexSwizzleOpaque> TileProgramSwizzleOpaque;
156 typedef ProgramBinding<VertexShaderPosTex, FragmentShaderCheckerboard> TileC heckerboardProgram; 157 typedef ProgramBinding<VertexShaderPosTex, FragmentShaderCheckerboard> TileC heckerboardProgram;
157 158
158 // Render surface shaders. 159 // Render surface shaders.
159 typedef ProgramBinding<VertexShaderPosTex, FragmentShaderRGBATexAlpha> Rende rPassProgram; 160 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexAlp ha> RenderPassProgram;
160 typedef ProgramBinding<VertexShaderPosTex, FragmentShaderRGBATexAlphaMask> R enderPassMaskProgram; 161 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexAlp haMask> RenderPassMaskProgram;
161 typedef ProgramBinding<VertexShaderQuad, FragmentShaderRGBATexAlphaAA> Rende rPassProgramAA; 162 typedef ProgramBinding<VertexShaderQuad, FragmentShaderRGBATexAlphaAA> Rende rPassProgramAA;
162 typedef ProgramBinding<VertexShaderQuad, FragmentShaderRGBATexAlphaMaskAA> R enderPassMaskProgramAA; 163 typedef ProgramBinding<VertexShaderQuad, FragmentShaderRGBATexAlphaMaskAA> R enderPassMaskProgramAA;
163 164
164 // Texture shaders. 165 // Texture shaders.
165 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexAlp ha> TextureProgram; 166 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexAlp ha> TextureProgram;
166 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexFli pAlpha> TextureProgramFlip; 167 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexFli pAlpha> TextureProgramFlip;
167 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexRec tAlpha> TextureIOSurfaceProgram; 168 typedef ProgramBinding<VertexShaderPosTexTransform, FragmentShaderRGBATexRec tAlpha> TextureIOSurfaceProgram;
168 169
169 // Video shaders. 170 // Video shaders.
170 typedef ProgramBinding<VertexShaderVideoTransform, FragmentShaderOESImageExt ernal> VideoStreamTextureProgram; 171 typedef ProgramBinding<VertexShaderVideoTransform, FragmentShaderOESImageExt ernal> VideoStreamTextureProgram;
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 #if DEBUG_GL_CALLS && !defined(NDEBUG) 246 #if DEBUG_GL_CALLS && !defined(NDEBUG)
246 #define GLC(context, x) (x, GLRenderer::debugGLCall(&*context, #x, __FILE__, __L INE__)) 247 #define GLC(context, x) (x, GLRenderer::debugGLCall(&*context, #x, __FILE__, __L INE__))
247 #else 248 #else
248 #define GLC(context, x) (x) 249 #define GLC(context, x) (x)
249 #endif 250 #endif
250 251
251 252
252 } 253 }
253 254
254 #endif // CC_GL_RENDERER_H_ 255 #endif // CC_GL_RENDERER_H_
OLDNEW
« no previous file with comments | « cc/draw_quad_unittest.cc ('k') | cc/gl_renderer.cc » ('j') | cc/gl_renderer.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698