OLD | NEW |
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 Loading... |
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 Loading... |
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 Loading... |
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_ |
OLD | NEW |