| 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 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 164 /// ES requires an extension to support RGBA8 in RenderBufferStorage | 164 /// ES requires an extension to support RGBA8 in RenderBufferStorage |
| 165 bool rgba8RenderbufferSupport() const { return fRGBA8RenderbufferSupport; } | 165 bool rgba8RenderbufferSupport() const { return fRGBA8RenderbufferSupport; } |
| 166 | 166 |
| 167 /** | 167 /** |
| 168 * Depending on the ES extensions present the BGRA external format may | 168 * Depending on the ES extensions present the BGRA external format may |
| 169 * correspond either a BGRA or RGBA internalFormat. On desktop GL it is | 169 * correspond either a BGRA or RGBA internalFormat. On desktop GL it is |
| 170 * RGBA. | 170 * RGBA. |
| 171 */ | 171 */ |
| 172 bool bgraIsInternalFormat() const { return fBGRAIsInternalFormat; } | 172 bool bgraIsInternalFormat() const { return fBGRAIsInternalFormat; } |
| 173 | 173 |
| 174 /// GL_ARB_texture_swizzle support | |
| 175 bool textureSwizzleSupport() const { return fTextureSwizzleSupport; } | |
| 176 | |
| 177 /// Is there support for GL_UNPACK_ROW_LENGTH | 174 /// Is there support for GL_UNPACK_ROW_LENGTH |
| 178 bool unpackRowLengthSupport() const { return fUnpackRowLengthSupport; } | 175 bool unpackRowLengthSupport() const { return fUnpackRowLengthSupport; } |
| 179 | 176 |
| 180 /// Is there support for GL_UNPACK_FLIP_Y | 177 /// Is there support for GL_UNPACK_FLIP_Y |
| 181 bool unpackFlipYSupport() const { return fUnpackFlipYSupport; } | 178 bool unpackFlipYSupport() const { return fUnpackFlipYSupport; } |
| 182 | 179 |
| 183 /// Is there support for GL_PACK_ROW_LENGTH | 180 /// Is there support for GL_PACK_ROW_LENGTH |
| 184 bool packRowLengthSupport() const { return fPackRowLengthSupport; } | 181 bool packRowLengthSupport() const { return fPackRowLengthSupport; } |
| 185 | 182 |
| 186 /// Is there support for GL_PACK_REVERSE_ROW_ORDER | 183 /// Is there support for GL_PACK_REVERSE_ROW_ORDER |
| 187 bool packFlipYSupport() const { return fPackFlipYSupport; } | 184 bool packFlipYSupport() const { return fPackFlipYSupport; } |
| 188 | 185 |
| 189 /// Is there support for texture parameter GL_TEXTURE_USAGE | 186 /// Is there support for texture parameter GL_TEXTURE_USAGE |
| 190 bool textureUsageSupport() const { return fTextureUsageSupport; } | 187 bool textureUsageSupport() const { return fTextureUsageSupport; } |
| 191 | 188 |
| 192 /// Is there support for glTexStorage | 189 /// Is there support for glTexStorage |
| 193 bool texStorageSupport() const { return fTexStorageSupport; } | 190 bool texStorageSupport() const { return fTexStorageSupport; } |
| 194 | 191 |
| 195 /// Is there support for GL_RED and GL_R8 | |
| 196 bool textureRedSupport() const { return fTextureRedSupport; } | |
| 197 | |
| 198 /// Is GL_ARB_IMAGING supported | 192 /// Is GL_ARB_IMAGING supported |
| 199 bool imagingSupport() const { return fImagingSupport; } | 193 bool imagingSupport() const { return fImagingSupport; } |
| 200 | 194 |
| 201 /// Is GL_ARB_fragment_coord_conventions supported? | 195 /// Is GL_ARB_fragment_coord_conventions supported? |
| 202 bool fragCoordConventionsSupport() const { return fFragCoordsConventionSuppo
rt; } | 196 bool fragCoordConventionsSupport() const { return fFragCoordsConventionSuppo
rt; } |
| 203 | 197 |
| 204 /// Is there support for Vertex Array Objects? | 198 /// Is there support for Vertex Array Objects? |
| 205 bool vertexArrayObjectSupport() const { return fVertexArrayObjectSupport; } | 199 bool vertexArrayObjectSupport() const { return fVertexArrayObjectSupport; } |
| 206 | 200 |
| 207 /// Is there support for glDraw*Instanced and glVertexAttribDivisor? | 201 /// Is there support for glDraw*Instanced and glVertexAttribDivisor? |
| (...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 333 int fMaxVertexAttributes; | 327 int fMaxVertexAttributes; |
| 334 int fMaxFragmentTextureUnits; | 328 int fMaxFragmentTextureUnits; |
| 335 | 329 |
| 336 MSFBOType fMSFBOType; | 330 MSFBOType fMSFBOType; |
| 337 InvalidateFBType fInvalidateFBType; | 331 InvalidateFBType fInvalidateFBType; |
| 338 MapBufferType fMapBufferType; | 332 MapBufferType fMapBufferType; |
| 339 LATCAlias fLATCAlias; | 333 LATCAlias fLATCAlias; |
| 340 | 334 |
| 341 bool fRGBA8RenderbufferSupport : 1; | 335 bool fRGBA8RenderbufferSupport : 1; |
| 342 bool fBGRAIsInternalFormat : 1; | 336 bool fBGRAIsInternalFormat : 1; |
| 343 bool fTextureSwizzleSupport : 1; | |
| 344 bool fUnpackRowLengthSupport : 1; | 337 bool fUnpackRowLengthSupport : 1; |
| 345 bool fUnpackFlipYSupport : 1; | 338 bool fUnpackFlipYSupport : 1; |
| 346 bool fPackRowLengthSupport : 1; | 339 bool fPackRowLengthSupport : 1; |
| 347 bool fPackFlipYSupport : 1; | 340 bool fPackFlipYSupport : 1; |
| 348 bool fTextureUsageSupport : 1; | 341 bool fTextureUsageSupport : 1; |
| 349 bool fTexStorageSupport : 1; | 342 bool fTexStorageSupport : 1; |
| 350 bool fTextureRedSupport : 1; | |
| 351 bool fImagingSupport : 1; | 343 bool fImagingSupport : 1; |
| 352 bool fTwoFormatLimit : 1; | 344 bool fTwoFormatLimit : 1; |
| 353 bool fFragCoordsConventionSupport : 1; | 345 bool fFragCoordsConventionSupport : 1; |
| 354 bool fVertexArrayObjectSupport : 1; | 346 bool fVertexArrayObjectSupport : 1; |
| 355 bool fInstancedDrawingSupport : 1; | 347 bool fInstancedDrawingSupport : 1; |
| 356 bool fDirectStateAccessSupport : 1; | 348 bool fDirectStateAccessSupport : 1; |
| 357 bool fDebugSupport : 1; | 349 bool fDebugSupport : 1; |
| 358 bool fES2CompatibilitySupport : 1; | 350 bool fES2CompatibilitySupport : 1; |
| 359 bool fMultisampleDisableSupport : 1; | 351 bool fMultisampleDisableSupport : 1; |
| 360 bool fUseNonVBOVertexAndIndexDynamicData : 1; | 352 bool fUseNonVBOVertexAndIndexDynamicData : 1; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 375 && fType == rhs.fType | 367 && fType == rhs.fType |
| 376 && fFboFormat == rhs.fFboFormat; | 368 && fFboFormat == rhs.fFboFormat; |
| 377 } | 369 } |
| 378 }; | 370 }; |
| 379 mutable SkTHashMap<ReadPixelsSupportedFormat, bool> fReadPixelsSupportedCach
e; | 371 mutable SkTHashMap<ReadPixelsSupportedFormat, bool> fReadPixelsSupportedCach
e; |
| 380 | 372 |
| 381 typedef GrCaps INHERITED; | 373 typedef GrCaps INHERITED; |
| 382 }; | 374 }; |
| 383 | 375 |
| 384 #endif | 376 #endif |
| OLD | NEW |