Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #ifndef GrGLInterface_DEFINED | 10 #ifndef GrGLInterface_DEFINED |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 216 GLPtr<GrGLGetTexLevelParameterivProc> fGetTexLevelParameteriv; | 216 GLPtr<GrGLGetTexLevelParameterivProc> fGetTexLevelParameteriv; |
| 217 GLPtr<GrGLGetUniformLocationProc> fGetUniformLocation; | 217 GLPtr<GrGLGetUniformLocationProc> fGetUniformLocation; |
| 218 GLPtr<GrGLLineWidthProc> fLineWidth; | 218 GLPtr<GrGLLineWidthProc> fLineWidth; |
| 219 GLPtr<GrGLLinkProgramProc> fLinkProgram; | 219 GLPtr<GrGLLinkProgramProc> fLinkProgram; |
| 220 GLPtr<GrGLMapBufferProc> fMapBuffer; | 220 GLPtr<GrGLMapBufferProc> fMapBuffer; |
| 221 GLPtr<GrGLPixelStoreiProc> fPixelStorei; | 221 GLPtr<GrGLPixelStoreiProc> fPixelStorei; |
| 222 GLPtr<GrGLQueryCounterProc> fQueryCounter; | 222 GLPtr<GrGLQueryCounterProc> fQueryCounter; |
| 223 GLPtr<GrGLReadBufferProc> fReadBuffer; | 223 GLPtr<GrGLReadBufferProc> fReadBuffer; |
| 224 GLPtr<GrGLReadPixelsProc> fReadPixels; | 224 GLPtr<GrGLReadPixelsProc> fReadPixels; |
| 225 GLPtr<GrGLRenderbufferStorageProc> fRenderbufferStorage; | 225 GLPtr<GrGLRenderbufferStorageProc> fRenderbufferStorage; |
| 226 | |
| 227 #if !GR_GL_IGNORE_ES3_MSAA | |
| 228 // On OpenGL ES there are multiple incompatible extensions that add support for MSAA | |
| 229 // and ES3 adds MSAA support to the standard. On an ES3 driver we may still use the | |
| 230 // older extensions for performance reasons or due to ES3 driver bugs. We w ant the function | |
| 231 // that creates the GrGLInterface to provide all available functions and in ternally | |
| 232 // we will select among them. They all have a method called glRenderbufferS torageMultisample*. | |
| 233 // So we have separate function pointers for GL_IMG/EXT_multisampled_to_tex ture, | |
| 234 // GL_CHROMIUM/ANGLE_framebuffer_multisample/ES3, and GL_APPLE_framebuffer_ multisample | |
| 235 // variations. | |
| 236 // | |
| 237 // If a driver supports multiple GL_ARB_framebuffer_multisample-style exten sions then we will | |
| 238 // assume the function pointers for the standard (or equivalent GL_ARB) ver sion have | |
| 239 // been preferred over GL_EXT, GL_CHROMIUM, or GL_ANGLE variations that hav e reduced | |
| 240 // functionality. | |
| 241 | |
| 242 // GL_EXT_multisampled_render_to_texture (preferred) or GL_IMG_multisampled _render_to_texture | |
| 243 GLPtr<GrGLRenderbufferStorageMultisampleProc> fRenderbufferStorageMultisampl eES2EXT; | |
| 244 // GL_APPLE_framebuffer_multisample | |
| 245 GLPtr<GrGLRenderbufferStorageMultisampleProc> fRenderbufferStorageMultisampl eES2APPLE; | |
| 246 #endif | |
|
jvanverth1
2013/08/27 17:39:06
Maybe a comment here stating that this is where GL
bsalomon
2013/09/05 22:00:15
Done.
| |
| 226 GLPtr<GrGLRenderbufferStorageMultisampleProc> fRenderbufferStorageMultisampl e; | 247 GLPtr<GrGLRenderbufferStorageMultisampleProc> fRenderbufferStorageMultisampl e; |
| 248 | |
| 227 GLPtr<GrGLRenderbufferStorageMultisampleCoverageProc> fRenderbufferStorageMu ltisampleCoverage; | 249 GLPtr<GrGLRenderbufferStorageMultisampleCoverageProc> fRenderbufferStorageMu ltisampleCoverage; |
| 228 GLPtr<GrGLResolveMultisampleFramebufferProc> fResolveMultisampleFramebuffer; | 250 GLPtr<GrGLResolveMultisampleFramebufferProc> fResolveMultisampleFramebuffer; |
| 229 GLPtr<GrGLScissorProc> fScissor; | 251 GLPtr<GrGLScissorProc> fScissor; |
| 230 GLPtr<GrGLShaderSourceProc> fShaderSource; | 252 GLPtr<GrGLShaderSourceProc> fShaderSource; |
| 231 GLPtr<GrGLStencilFuncProc> fStencilFunc; | 253 GLPtr<GrGLStencilFuncProc> fStencilFunc; |
| 232 GLPtr<GrGLStencilFuncSeparateProc> fStencilFuncSeparate; | 254 GLPtr<GrGLStencilFuncSeparateProc> fStencilFuncSeparate; |
| 233 GLPtr<GrGLStencilMaskProc> fStencilMask; | 255 GLPtr<GrGLStencilMaskProc> fStencilMask; |
| 234 GLPtr<GrGLStencilMaskSeparateProc> fStencilMaskSeparate; | 256 GLPtr<GrGLStencilMaskSeparateProc> fStencilMaskSeparate; |
| 235 GLPtr<GrGLStencilOpProc> fStencilOp; | 257 GLPtr<GrGLStencilOpProc> fStencilOp; |
| 236 GLPtr<GrGLStencilOpSeparateProc> fStencilOpSeparate; | 258 GLPtr<GrGLStencilOpSeparateProc> fStencilOpSeparate; |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 323 | 345 |
| 324 // Per-GL func callback | 346 // Per-GL func callback |
| 325 #if GR_GL_PER_GL_FUNC_CALLBACK | 347 #if GR_GL_PER_GL_FUNC_CALLBACK |
| 326 GrGLInterfaceCallbackProc fCallback; | 348 GrGLInterfaceCallbackProc fCallback; |
| 327 GrGLInterfaceCallbackData fCallbackData; | 349 GrGLInterfaceCallbackData fCallbackData; |
| 328 #endif | 350 #endif |
| 329 | 351 |
| 330 }; | 352 }; |
| 331 | 353 |
| 332 #endif | 354 #endif |
| OLD | NEW |