| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright 2012 Google Inc. | 2  * Copyright 2012 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 | 8 | 
| 9 #ifndef GrGLCaps_DEFINED | 9 #ifndef GrGLCaps_DEFINED | 
| 10 #define GrGLCaps_DEFINED | 10 #define GrGLCaps_DEFINED | 
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 49      * semantics of how / when a resolve is performed. | 49      * semantics of how / when a resolve is performed. | 
| 50      */ | 50      */ | 
| 51     enum MSFBOType { | 51     enum MSFBOType { | 
| 52         /** | 52         /** | 
| 53          * no support for MSAA FBOs | 53          * no support for MSAA FBOs | 
| 54          */ | 54          */ | 
| 55         kNone_MSFBOType = 0, | 55         kNone_MSFBOType = 0, | 
| 56         /** | 56         /** | 
| 57          * GL3.0-style MSAA FBO (GL_ARB_framebuffer_object) | 57          * GL3.0-style MSAA FBO (GL_ARB_framebuffer_object) | 
| 58          */ | 58          */ | 
| 59         kDesktopARB_MSFBOType, | 59         kDesktop_ARB_MSFBOType, | 
| 60         /** | 60         /** | 
| 61          * earlier GL_EXT_framebuffer* extensions | 61          * earlier GL_EXT_framebuffer* extensions | 
| 62          */ | 62          */ | 
| 63         kDesktopEXT_MSFBOType, | 63         kDesktop_EXT_MSFBOType, | 
| 64         /** | 64         /** | 
| 65          * GL_APPLE_framebuffer_multisample ES extension | 65          * GL_APPLE_framebuffer_multisample ES extension | 
| 66          */ | 66          */ | 
| 67         kAppleES_MSFBOType, | 67         kES_Apple_MSFBOType, | 
| 68         /** | 68         /** | 
| 69          * GL_IMG_multisampled_render_to_texture | 69          * GL_IMG_multisampled_render_to_texture. This variation does not have M
     SAA renderbuffers. | 
|  | 70          * Instead the texture is multisampled when bound to the FBO and then re
     solved automatically | 
|  | 71          * when read. It also defines an alternate value for GL_MAX_SAMPLES (whi
     ch we call | 
|  | 72          * GR_GL_MAX_SAMPLES_IMG). | 
| 70          */ | 73          */ | 
| 71         kImaginationES_MSFBOType, | 74         kES_IMG_MsToTexture_MSFBOType, | 
|  | 75         /** | 
|  | 76          * GL_EXT_multisampled_render_to_texture. Same as the IMG one above but 
     uses the standard | 
|  | 77          * GL_MAX_SAMPLES value. | 
|  | 78          */ | 
|  | 79         kES_EXT_MsToTexture_MSFBOType, | 
| 72     }; | 80     }; | 
| 73 | 81 | 
| 74     enum CoverageAAType { | 82     enum CoverageAAType { | 
| 75         /** | 83         /** | 
| 76          * No coverage sample support | 84          * No coverage sample support | 
| 77          */ | 85          */ | 
| 78         kNone_CoverageAAType, | 86         kNone_CoverageAAType, | 
| 79 | 87 | 
| 80         /** | 88         /** | 
| 81          * GL_NV_framebuffer_multisample_coverage | 89          * GL_NV_framebuffer_multisample_coverage | 
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 138     bool isColorConfigAndStencilFormatVerified( | 146     bool isColorConfigAndStencilFormatVerified( | 
| 139                     GrPixelConfig config, | 147                     GrPixelConfig config, | 
| 140                     const GrGLStencilBuffer::Format& format) const; | 148                     const GrGLStencilBuffer::Format& format) const; | 
| 141 | 149 | 
| 142     /** | 150     /** | 
| 143      * Reports the type of MSAA FBO support. | 151      * Reports the type of MSAA FBO support. | 
| 144      */ | 152      */ | 
| 145     MSFBOType msFBOType() const { return fMSFBOType; } | 153     MSFBOType msFBOType() const { return fMSFBOType; } | 
| 146 | 154 | 
| 147     /** | 155     /** | 
|  | 156      * Does the supported MSAA FBO extension have MSAA renderbuffers? | 
|  | 157      */ | 
|  | 158     bool usesMSAARenderBuffers() const { | 
|  | 159         return kNone_MSFBOType != fMSFBOType && | 
|  | 160                kES_IMG_MsToTexture_MSFBOType != fMSFBOType && | 
|  | 161                kES_EXT_MsToTexture_MSFBOType != fMSFBOType; | 
|  | 162     } | 
|  | 163 | 
|  | 164     /** | 
|  | 165      * Is the MSAA FBO extension one where the texture is multisampled when boun
     d to an FBO and | 
|  | 166      * then implicitly resolved when read. | 
|  | 167      */ | 
|  | 168     bool usesImplicitMSAAResolve() const { | 
|  | 169         return kES_IMG_MsToTexture_MSFBOType == fMSFBOType || | 
|  | 170                kES_EXT_MsToTexture_MSFBOType == fMSFBOType; | 
|  | 171     } | 
|  | 172 | 
|  | 173     /** | 
| 148      * Reports the type of coverage sample AA support. | 174      * Reports the type of coverage sample AA support. | 
| 149      */ | 175      */ | 
| 150     CoverageAAType coverageAAType() const { return fCoverageAAType; } | 176     CoverageAAType coverageAAType() const { return fCoverageAAType; } | 
| 151 | 177 | 
| 152     /** | 178     /** | 
| 153      * Chooses a supported coverage mode based on a desired sample count. The | 179      * Chooses a supported coverage mode based on a desired sample count. The | 
| 154      * desired sample count is rounded up the next supported coverage sample | 180      * desired sample count is rounded up the next supported coverage sample | 
| 155      * count unless a it is larger than the max in which case it is rounded | 181      * count unless a it is larger than the max in which case it is rounded | 
| 156      * down. Once a coverage sample count is decided, the supported mode with | 182      * down. Once a coverage sample count is decided, the supported mode with | 
| 157      * the fewest color samples is chosen. | 183      * the fewest color samples is chosen. | 
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 313     bool fFragCoordsConventionSupport : 1; | 339     bool fFragCoordsConventionSupport : 1; | 
| 314     bool fVertexArrayObjectSupport : 1; | 340     bool fVertexArrayObjectSupport : 1; | 
| 315     bool fUseNonVBOVertexAndIndexDynamicData : 1; | 341     bool fUseNonVBOVertexAndIndexDynamicData : 1; | 
| 316     bool fIsCoreProfile : 1; | 342     bool fIsCoreProfile : 1; | 
| 317     bool fDiscardFBSupport : 1; | 343     bool fDiscardFBSupport : 1; | 
| 318 | 344 | 
| 319     typedef GrDrawTargetCaps INHERITED; | 345     typedef GrDrawTargetCaps INHERITED; | 
| 320 }; | 346 }; | 
| 321 | 347 | 
| 322 #endif | 348 #endif | 
| OLD | NEW | 
|---|