| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2010 Google Inc. | 3 * Copyright 2010 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 #include "GrDrawTarget.h" | 9 #include "GrDrawTarget.h" |
| 10 | 10 |
| (...skipping 520 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 531 } | 531 } |
| 532 | 532 |
| 533 /////////////////////////////////////////////////////////////////////////////// | 533 /////////////////////////////////////////////////////////////////////////////// |
| 534 | 534 |
| 535 void GrShaderCaps::reset() { | 535 void GrShaderCaps::reset() { |
| 536 fShaderDerivativeSupport = false; | 536 fShaderDerivativeSupport = false; |
| 537 fGeometryShaderSupport = false; | 537 fGeometryShaderSupport = false; |
| 538 fPathRenderingSupport = false; | 538 fPathRenderingSupport = false; |
| 539 fDstReadInShaderSupport = false; | 539 fDstReadInShaderSupport = false; |
| 540 fDualSourceBlendingSupport = false; | 540 fDualSourceBlendingSupport = false; |
| 541 fMixedSamplesSupport = false; |
| 541 | 542 |
| 542 fShaderPrecisionVaries = false; | 543 fShaderPrecisionVaries = false; |
| 543 } | 544 } |
| 544 | 545 |
| 545 GrShaderCaps& GrShaderCaps::operator=(const GrShaderCaps& other) { | 546 GrShaderCaps& GrShaderCaps::operator=(const GrShaderCaps& other) { |
| 546 fShaderDerivativeSupport = other.fShaderDerivativeSupport; | 547 fShaderDerivativeSupport = other.fShaderDerivativeSupport; |
| 547 fGeometryShaderSupport = other.fGeometryShaderSupport; | 548 fGeometryShaderSupport = other.fGeometryShaderSupport; |
| 548 fPathRenderingSupport = other.fPathRenderingSupport; | 549 fPathRenderingSupport = other.fPathRenderingSupport; |
| 549 fDstReadInShaderSupport = other.fDstReadInShaderSupport; | 550 fDstReadInShaderSupport = other.fDstReadInShaderSupport; |
| 550 fDualSourceBlendingSupport = other.fDualSourceBlendingSupport; | 551 fDualSourceBlendingSupport = other.fDualSourceBlendingSupport; |
| 552 fMixedSamplesSupport = other.fMixedSamplesSupport; |
| 551 | 553 |
| 552 fShaderPrecisionVaries = other.fShaderPrecisionVaries; | 554 fShaderPrecisionVaries = other.fShaderPrecisionVaries; |
| 553 for (int s = 0; s < kGrShaderTypeCount; ++s) { | 555 for (int s = 0; s < kGrShaderTypeCount; ++s) { |
| 554 for (int p = 0; p < kGrSLPrecisionCount; ++p) { | 556 for (int p = 0; p < kGrSLPrecisionCount; ++p) { |
| 555 fFloatPrecisions[s][p] = other.fFloatPrecisions[s][p]; | 557 fFloatPrecisions[s][p] = other.fFloatPrecisions[s][p]; |
| 556 } | 558 } |
| 557 } | 559 } |
| 558 return *this; | 560 return *this; |
| 559 } | 561 } |
| 560 | 562 |
| (...skipping 22 matching lines...) Expand all Loading... |
| 583 } | 585 } |
| 584 | 586 |
| 585 SkString GrShaderCaps::dump() const { | 587 SkString GrShaderCaps::dump() const { |
| 586 SkString r; | 588 SkString r; |
| 587 static const char* gNY[] = { "NO", "YES" }; | 589 static const char* gNY[] = { "NO", "YES" }; |
| 588 r.appendf("Shader Derivative Support : %s\n", gNY[fShaderDerivative
Support]); | 590 r.appendf("Shader Derivative Support : %s\n", gNY[fShaderDerivative
Support]); |
| 589 r.appendf("Geometry Shader Support : %s\n", gNY[fGeometryShaderSu
pport]); | 591 r.appendf("Geometry Shader Support : %s\n", gNY[fGeometryShaderSu
pport]); |
| 590 r.appendf("Path Rendering Support : %s\n", gNY[fPathRenderingSup
port]); | 592 r.appendf("Path Rendering Support : %s\n", gNY[fPathRenderingSup
port]); |
| 591 r.appendf("Dst Read In Shader Support : %s\n", gNY[fDstReadInShaderS
upport]); | 593 r.appendf("Dst Read In Shader Support : %s\n", gNY[fDstReadInShaderS
upport]); |
| 592 r.appendf("Dual Source Blending Support : %s\n", gNY[fDualSourceBlendi
ngSupport]); | 594 r.appendf("Dual Source Blending Support : %s\n", gNY[fDualSourceBlendi
ngSupport]); |
| 595 r.appendf("Mixed Samples Support : %s\n", gNY[fMixedSamplesSupp
ort]); |
| 593 | 596 |
| 594 r.appendf("Shader Float Precisions (varies: %s):\n", gNY[fShaderPrecisionVar
ies]); | 597 r.appendf("Shader Float Precisions (varies: %s):\n", gNY[fShaderPrecisionVar
ies]); |
| 595 | 598 |
| 596 for (int s = 0; s < kGrShaderTypeCount; ++s) { | 599 for (int s = 0; s < kGrShaderTypeCount; ++s) { |
| 597 GrShaderType shaderType = static_cast<GrShaderType>(s); | 600 GrShaderType shaderType = static_cast<GrShaderType>(s); |
| 598 r.appendf("\t%s:\n", shader_type_to_string(shaderType)); | 601 r.appendf("\t%s:\n", shader_type_to_string(shaderType)); |
| 599 for (int p = 0; p < kGrSLPrecisionCount; ++p) { | 602 for (int p = 0; p < kGrSLPrecisionCount; ++p) { |
| 600 if (fFloatPrecisions[s][p].supported()) { | 603 if (fFloatPrecisions[s][p].supported()) { |
| 601 GrSLPrecision precision = static_cast<GrSLPrecision>(p); | 604 GrSLPrecision precision = static_cast<GrSLPrecision>(p); |
| 602 r.appendf("\t\t%s: log_low: %d log_high: %d bits: %d\n", | 605 r.appendf("\t\t%s: log_low: %d log_high: %d bits: %d\n", |
| (...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 778 GrPipelineBuilder::AutoRestoreFragmentProcessors* a
rfp, | 781 GrPipelineBuilder::AutoRestoreFragmentProcessors* a
rfp, |
| 779 GrPipelineBuilder::AutoRestoreStencil* ars, | 782 GrPipelineBuilder::AutoRestoreStencil* ars, |
| 780 GrScissorState* scissorState, | 783 GrScissorState* scissorState, |
| 781 const SkRect* devBounds) { | 784 const SkRect* devBounds) { |
| 782 return fClipMaskManager.setupClipping(pipelineBuilder, | 785 return fClipMaskManager.setupClipping(pipelineBuilder, |
| 783 arfp, | 786 arfp, |
| 784 ars, | 787 ars, |
| 785 scissorState, | 788 scissorState, |
| 786 devBounds); | 789 devBounds); |
| 787 } | 790 } |
| OLD | NEW |