| 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 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 276 | 276 |
| 277 /// Is there support for GL_KHR_debug? | 277 /// Is there support for GL_KHR_debug? |
| 278 bool debugSupport() const { return fDebugSupport; } | 278 bool debugSupport() const { return fDebugSupport; } |
| 279 | 279 |
| 280 /// Is there support for ES2 compatability? | 280 /// Is there support for ES2 compatability? |
| 281 bool ES2CompatibilitySupport() const { return fES2CompatibilitySupport; } | 281 bool ES2CompatibilitySupport() const { return fES2CompatibilitySupport; } |
| 282 | 282 |
| 283 /// Can we call glDisable(GL_MULTISAMPLE)? | 283 /// Can we call glDisable(GL_MULTISAMPLE)? |
| 284 bool multisampleDisableSupport() const { return fMultisampleDisableSupport;
} | 284 bool multisampleDisableSupport() const { return fMultisampleDisableSupport;
} |
| 285 | 285 |
| 286 /// Is there support for glDraw*Indirect? Note that the baseInstance fields
of indirect draw |
| 287 /// commands cannot be used unless we have base instance support. |
| 288 bool drawIndirectSupport() const { return fDrawIndirectSupport; } |
| 289 |
| 290 /// Is there support for glMultiDraw*Indirect? Note that the baseInstance fi
elds of indirect |
| 291 /// draw commands cannot be used unless we have base instance support. |
| 292 bool multiDrawIndirectSupport() const { return fMultiDrawIndirectSupport; } |
| 293 |
| 294 /// Are the baseInstance fields supported in indirect draw commands? |
| 295 bool baseInstanceSupport() const { return fBaseInstanceSupport; } |
| 296 |
| 286 /// Use indices or vertices in CPU arrays rather than VBOs for dynamic conte
nt. | 297 /// Use indices or vertices in CPU arrays rather than VBOs for dynamic conte
nt. |
| 287 bool useNonVBOVertexAndIndexDynamicData() const { return fUseNonVBOVertexAnd
IndexDynamicData; } | 298 bool useNonVBOVertexAndIndexDynamicData() const { return fUseNonVBOVertexAnd
IndexDynamicData; } |
| 288 | 299 |
| 289 /// Does ReadPixels support reading readConfig pixels from a FBO that is ren
derTargetConfig? | 300 /// Does ReadPixels support reading readConfig pixels from a FBO that is ren
derTargetConfig? |
| 290 bool readPixelsSupported(GrPixelConfig renderTargetConfig, | 301 bool readPixelsSupported(GrPixelConfig renderTargetConfig, |
| 291 GrPixelConfig readConfig, | 302 GrPixelConfig readConfig, |
| 292 std::function<void (GrGLenum, GrGLint*)> getInteger
v, | 303 std::function<void (GrGLenum, GrGLint*)> getInteger
v, |
| 293 std::function<bool ()> bindRenderTarget) const; | 304 std::function<bool ()> bindRenderTarget) const; |
| 294 | 305 |
| 295 bool isCoreProfile() const { return fIsCoreProfile; } | 306 bool isCoreProfile() const { return fIsCoreProfile; } |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 371 bool fPackFlipYSupport : 1; | 382 bool fPackFlipYSupport : 1; |
| 372 bool fTextureUsageSupport : 1; | 383 bool fTextureUsageSupport : 1; |
| 373 bool fTexStorageSupport : 1; | 384 bool fTexStorageSupport : 1; |
| 374 bool fTextureRedSupport : 1; | 385 bool fTextureRedSupport : 1; |
| 375 bool fImagingSupport : 1; | 386 bool fImagingSupport : 1; |
| 376 bool fVertexArrayObjectSupport : 1; | 387 bool fVertexArrayObjectSupport : 1; |
| 377 bool fDirectStateAccessSupport : 1; | 388 bool fDirectStateAccessSupport : 1; |
| 378 bool fDebugSupport : 1; | 389 bool fDebugSupport : 1; |
| 379 bool fES2CompatibilitySupport : 1; | 390 bool fES2CompatibilitySupport : 1; |
| 380 bool fMultisampleDisableSupport : 1; | 391 bool fMultisampleDisableSupport : 1; |
| 392 bool fDrawIndirectSupport : 1; |
| 393 bool fMultiDrawIndirectSupport : 1; |
| 394 bool fBaseInstanceSupport : 1; |
| 381 bool fUseNonVBOVertexAndIndexDynamicData : 1; | 395 bool fUseNonVBOVertexAndIndexDynamicData : 1; |
| 382 bool fIsCoreProfile : 1; | 396 bool fIsCoreProfile : 1; |
| 383 bool fBindFragDataLocationSupport : 1; | 397 bool fBindFragDataLocationSupport : 1; |
| 384 bool fSRGBWriteControl : 1; | 398 bool fSRGBWriteControl : 1; |
| 385 bool fRGBA8888PixelsOpsAreSlow : 1; | 399 bool fRGBA8888PixelsOpsAreSlow : 1; |
| 386 bool fPartialFBOReadIsSlow : 1; | 400 bool fPartialFBOReadIsSlow : 1; |
| 387 bool fBindUniformLocationSupport : 1; | 401 bool fBindUniformLocationSupport : 1; |
| 388 bool fExternalTextureSupport : 1; | 402 bool fExternalTextureSupport : 1; |
| 389 bool fRectangleTextureSupport : 1; | 403 bool fRectangleTextureSupport : 1; |
| 390 bool fTextureSwizzleSupport : 1; | 404 bool fTextureSwizzleSupport : 1; |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 456 | 470 |
| 457 GrSwizzle fSwizzle; | 471 GrSwizzle fSwizzle; |
| 458 }; | 472 }; |
| 459 | 473 |
| 460 ConfigInfo fConfigTable[kGrPixelConfigCnt]; | 474 ConfigInfo fConfigTable[kGrPixelConfigCnt]; |
| 461 | 475 |
| 462 typedef GrCaps INHERITED; | 476 typedef GrCaps INHERITED; |
| 463 }; | 477 }; |
| 464 | 478 |
| 465 #endif | 479 #endif |
| OLD | NEW |