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 #include "GrGLCaps.h" | 9 #include "GrGLCaps.h" |
10 #include "GrGLContext.h" | 10 #include "GrGLContext.h" |
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
579 if (format.fInternalFormat == | 579 if (format.fInternalFormat == |
580 fStencilFormats[i].fInternalFormat) { | 580 fStencilFormats[i].fInternalFormat) { |
581 return fStencilVerifiedColorConfigs[i].isVerified(config); | 581 return fStencilVerifiedColorConfigs[i].isVerified(config); |
582 } | 582 } |
583 } | 583 } |
584 GrCrash("Why are we seeing a stencil format that " | 584 GrCrash("Why are we seeing a stencil format that " |
585 "GLCaps doesn't know about."); | 585 "GLCaps doesn't know about."); |
586 return false; | 586 return false; |
587 } | 587 } |
588 | 588 |
589 void GrGLCaps::print() const { | 589 SkString GrGLCaps::dump() const { |
590 | 590 |
591 INHERITED::print(); | 591 SkString r = INHERITED::dump(); |
592 | 592 |
593 GrPrintf("--- GL-Specific ---\n"); | 593 r.appendf("--- GL-Specific ---\n"); |
594 for (int i = 0; i < fStencilFormats.count(); ++i) { | 594 for (int i = 0; i < fStencilFormats.count(); ++i) { |
595 GrPrintf("Stencil Format %d, stencil bits: %02d, total bits: %02d\n", | 595 r.appendf("Stencil Format %d, stencil bits: %02d, total bits: %02d\n", |
596 i, | 596 i, |
597 fStencilFormats[i].fStencilBits, | 597 fStencilFormats[i].fStencilBits, |
598 fStencilFormats[i].fTotalBits); | 598 fStencilFormats[i].fTotalBits); |
599 } | 599 } |
600 | 600 |
601 static const char* kMSFBOExtStr[] = { | 601 static const char* kMSFBOExtStr[] = { |
602 "None", | 602 "None", |
603 "ARB", | 603 "ARB", |
604 "EXT", | 604 "EXT", |
605 "ES 3.0", | 605 "ES 3.0", |
(...skipping 14 matching lines...) Expand all Loading... |
620 "None", | 620 "None", |
621 "EXT", | 621 "EXT", |
622 "NV", | 622 "NV", |
623 }; | 623 }; |
624 GR_STATIC_ASSERT(0 == kNone_FBFetchType); | 624 GR_STATIC_ASSERT(0 == kNone_FBFetchType); |
625 GR_STATIC_ASSERT(1 == kEXT_FBFetchType); | 625 GR_STATIC_ASSERT(1 == kEXT_FBFetchType); |
626 GR_STATIC_ASSERT(2 == kNV_FBFetchType); | 626 GR_STATIC_ASSERT(2 == kNV_FBFetchType); |
627 GR_STATIC_ASSERT(GR_ARRAY_COUNT(kFBFetchTypeStr) == kLast_FBFetchType + 1); | 627 GR_STATIC_ASSERT(GR_ARRAY_COUNT(kFBFetchTypeStr) == kLast_FBFetchType + 1); |
628 | 628 |
629 | 629 |
630 GrPrintf("Core Profile: %s\n", (fIsCoreProfile ? "YES" : "NO")); | 630 r.appendf("Core Profile: %s\n", (fIsCoreProfile ? "YES" : "NO")); |
631 GrPrintf("Fixed Function Support: %s\n", (fFixedFunctionSupport ? "YES" : "N
O")); | 631 r.appendf("Fixed Function Support: %s\n", (fFixedFunctionSupport ? "YES" : "
NO")); |
632 GrPrintf("MSAA Type: %s\n", kMSFBOExtStr[fMSFBOType]); | 632 r.appendf("MSAA Type: %s\n", kMSFBOExtStr[fMSFBOType]); |
633 GrPrintf("FB Fetch Type: %s\n", kFBFetchTypeStr[fFBFetchType]); | 633 r.appendf("FB Fetch Type: %s\n", kFBFetchTypeStr[fFBFetchType]); |
634 GrPrintf("Max FS Uniform Vectors: %d\n", fMaxFragmentUniformVectors); | 634 r.appendf("Max FS Uniform Vectors: %d\n", fMaxFragmentUniformVectors); |
635 GrPrintf("Max FS Texture Units: %d\n", fMaxFragmentTextureUnits); | 635 r.appendf("Max FS Texture Units: %d\n", fMaxFragmentTextureUnits); |
636 if (fFixedFunctionSupport) { | 636 if (fFixedFunctionSupport) { |
637 GrPrintf("Max Fixed Function Texture Coords: %d\n", fMaxFixedFunctionTex
tureCoords); | 637 r.appendf("Max Fixed Function Texture Coords: %d\n", fMaxFixedFunctionTe
xtureCoords); |
638 } | 638 } |
639 GrPrintf("Max Vertex Attributes: %d\n", fMaxVertexAttributes); | 639 r.appendf("Max Vertex Attributes: %d\n", fMaxVertexAttributes); |
640 GrPrintf("Support RGBA8 Render Buffer: %s\n", (fRGBA8RenderbufferSupport ? "
YES": "NO")); | 640 r.appendf("Support RGBA8 Render Buffer: %s\n", (fRGBA8RenderbufferSupport ?
"YES": "NO")); |
641 GrPrintf("BGRA support: %s\n", (fBGRAFormatSupport ? "YES": "NO")); | 641 r.appendf("BGRA support: %s\n", (fBGRAFormatSupport ? "YES": "NO")); |
642 GrPrintf("BGRA is an internal format: %s\n", (fBGRAIsInternalFormat ? "YES":
"NO")); | 642 r.appendf("BGRA is an internal format: %s\n", (fBGRAIsInternalFormat ? "YES"
: "NO")); |
643 GrPrintf("Support texture swizzle: %s\n", (fTextureSwizzleSupport ? "YES": "
NO")); | 643 r.appendf("Support texture swizzle: %s\n", (fTextureSwizzleSupport ? "YES":
"NO")); |
644 GrPrintf("Unpack Row length support: %s\n", (fUnpackRowLengthSupport ? "YES"
: "NO")); | 644 r.appendf("Unpack Row length support: %s\n", (fUnpackRowLengthSupport ? "YES
": "NO")); |
645 GrPrintf("Unpack Flip Y support: %s\n", (fUnpackFlipYSupport ? "YES": "NO"))
; | 645 r.appendf("Unpack Flip Y support: %s\n", (fUnpackFlipYSupport ? "YES": "NO")
); |
646 GrPrintf("Pack Row length support: %s\n", (fPackRowLengthSupport ? "YES": "N
O")); | 646 r.appendf("Pack Row length support: %s\n", (fPackRowLengthSupport ? "YES": "
NO")); |
647 GrPrintf("Pack Flip Y support: %s\n", (fPackFlipYSupport ? "YES": "NO")); | 647 r.appendf("Pack Flip Y support: %s\n", (fPackFlipYSupport ? "YES": "NO")); |
648 | 648 |
649 GrPrintf("Texture Usage support: %s\n", (fTextureUsageSupport ? "YES": "NO")
); | 649 r.appendf("Texture Usage support: %s\n", (fTextureUsageSupport ? "YES": "NO"
)); |
650 GrPrintf("Texture Storage support: %s\n", (fTexStorageSupport ? "YES": "NO")
); | 650 r.appendf("Texture Storage support: %s\n", (fTexStorageSupport ? "YES": "NO"
)); |
651 GrPrintf("GL_R support: %s\n", (fTextureRedSupport ? "YES": "NO")); | 651 r.appendf("GL_R support: %s\n", (fTextureRedSupport ? "YES": "NO")); |
652 GrPrintf("GL_ARB_imaging support: %s\n", (fImagingSupport ? "YES": "NO")); | 652 r.appendf("GL_ARB_imaging support: %s\n", (fImagingSupport ? "YES": "NO")); |
653 GrPrintf("Two Format Limit: %s\n", (fTwoFormatLimit ? "YES": "NO")); | 653 r.appendf("Two Format Limit: %s\n", (fTwoFormatLimit ? "YES": "NO")); |
654 GrPrintf("Fragment coord conventions support: %s\n", | 654 r.appendf("Fragment coord conventions support: %s\n", |
655 (fFragCoordsConventionSupport ? "YES": "NO")); | 655 (fFragCoordsConventionSupport ? "YES": "NO")); |
656 GrPrintf("Vertex array object support: %s\n", (fVertexArrayObjectSupport ? "
YES": "NO")); | 656 r.appendf("Vertex array object support: %s\n", (fVertexArrayObjectSupport ?
"YES": "NO")); |
657 GrPrintf("Use non-VBO for dynamic data: %s\n", | 657 r.appendf("Use non-VBO for dynamic data: %s\n", |
658 (fUseNonVBOVertexAndIndexDynamicData ? "YES" : "NO")); | 658 (fUseNonVBOVertexAndIndexDynamicData ? "YES" : "NO")); |
659 GrPrintf("Discard FrameBuffer support: %s\n", (fDiscardFBSupport ? "YES" : "
NO")); | 659 r.appendf("Discard FrameBuffer support: %s\n", (fDiscardFBSupport ? "YES" :
"NO")); |
660 GrPrintf("Full screen clear is free: %s\n", (fFullClearIsFree ? "YES" : "NO"
)); | 660 r.appendf("Full screen clear is free: %s\n", (fFullClearIsFree ? "YES" : "NO
")); |
| 661 return r; |
661 } | 662 } |
OLD | NEW |