OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2014 Google Inc. | 3 * Copyright 2014 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 "SkTwoPointConicalGradient_gpu.h" | 9 #include "SkTwoPointConicalGradient_gpu.h" |
10 | 10 |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 | 59 |
60 static GrFragmentProcessor* Create(GrContext* ctx, | 60 static GrFragmentProcessor* Create(GrContext* ctx, |
61 const SkTwoPointConicalGradient& shader, | 61 const SkTwoPointConicalGradient& shader, |
62 const SkMatrix& matrix, | 62 const SkMatrix& matrix, |
63 SkShader::TileMode tm) { | 63 SkShader::TileMode tm) { |
64 return SkNEW_ARGS(Edge2PtConicalEffect, (ctx, shader, matrix, tm)); | 64 return SkNEW_ARGS(Edge2PtConicalEffect, (ctx, shader, matrix, tm)); |
65 } | 65 } |
66 | 66 |
67 virtual ~Edge2PtConicalEffect() {} | 67 virtual ~Edge2PtConicalEffect() {} |
68 | 68 |
69 const char* name() const SK_OVERRIDE { | 69 const char* name() const override { |
70 return "Two-Point Conical Gradient Edge Touching"; | 70 return "Two-Point Conical Gradient Edge Touching"; |
71 } | 71 } |
72 | 72 |
73 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const SK_OVE
RRIDE; | 73 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const overri
de; |
74 | 74 |
75 GrGLFragmentProcessor* createGLInstance() const SK_OVERRIDE; | 75 GrGLFragmentProcessor* createGLInstance() const override; |
76 | 76 |
77 // The radial gradient parameters can collapse to a linear (instead of quadr
atic) equation. | 77 // The radial gradient parameters can collapse to a linear (instead of quadr
atic) equation. |
78 SkScalar center() const { return fCenterX1; } | 78 SkScalar center() const { return fCenterX1; } |
79 SkScalar diffRadius() const { return fDiffRadius; } | 79 SkScalar diffRadius() const { return fDiffRadius; } |
80 SkScalar radius() const { return fRadius0; } | 80 SkScalar radius() const { return fRadius0; } |
81 | 81 |
82 private: | 82 private: |
83 bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { | 83 bool onIsEqual(const GrFragmentProcessor& sBase) const override { |
84 const Edge2PtConicalEffect& s = sBase.cast<Edge2PtConicalEffect>(); | 84 const Edge2PtConicalEffect& s = sBase.cast<Edge2PtConicalEffect>(); |
85 return (INHERITED::onIsEqual(sBase) && | 85 return (INHERITED::onIsEqual(sBase) && |
86 this->fCenterX1 == s.fCenterX1 && | 86 this->fCenterX1 == s.fCenterX1 && |
87 this->fRadius0 == s.fRadius0 && | 87 this->fRadius0 == s.fRadius0 && |
88 this->fDiffRadius == s.fDiffRadius); | 88 this->fDiffRadius == s.fDiffRadius); |
89 } | 89 } |
90 | 90 |
91 Edge2PtConicalEffect(GrContext* ctx, | 91 Edge2PtConicalEffect(GrContext* ctx, |
92 const SkTwoPointConicalGradient& shader, | 92 const SkTwoPointConicalGradient& shader, |
93 const SkMatrix& matrix, | 93 const SkMatrix& matrix, |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 class GLEdge2PtConicalEffect : public GrGLGradientEffect { | 139 class GLEdge2PtConicalEffect : public GrGLGradientEffect { |
140 public: | 140 public: |
141 GLEdge2PtConicalEffect(const GrProcessor&); | 141 GLEdge2PtConicalEffect(const GrProcessor&); |
142 virtual ~GLEdge2PtConicalEffect() { } | 142 virtual ~GLEdge2PtConicalEffect() { } |
143 | 143 |
144 virtual void emitCode(GrGLFPBuilder*, | 144 virtual void emitCode(GrGLFPBuilder*, |
145 const GrFragmentProcessor&, | 145 const GrFragmentProcessor&, |
146 const char* outputColor, | 146 const char* outputColor, |
147 const char* inputColor, | 147 const char* inputColor, |
148 const TransformedCoordsArray&, | 148 const TransformedCoordsArray&, |
149 const TextureSamplerArray&) SK_OVERRIDE; | 149 const TextureSamplerArray&) override; |
150 void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE; | 150 void setData(const GrGLProgramDataManager&, const GrProcessor&) override; |
151 | 151 |
152 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); | 152 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); |
153 | 153 |
154 protected: | 154 protected: |
155 UniformHandle fParamUni; | 155 UniformHandle fParamUni; |
156 | 156 |
157 const char* fVSVaryingName; | 157 const char* fVSVaryingName; |
158 const char* fFSVaryingName; | 158 const char* fFSVaryingName; |
159 | 159 |
160 // @{ | 160 // @{ |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
381 static GrFragmentProcessor* Create(GrContext* ctx, | 381 static GrFragmentProcessor* Create(GrContext* ctx, |
382 const SkTwoPointConicalGradient& shader, | 382 const SkTwoPointConicalGradient& shader, |
383 const SkMatrix& matrix, | 383 const SkMatrix& matrix, |
384 SkShader::TileMode tm, | 384 SkShader::TileMode tm, |
385 SkScalar focalX) { | 385 SkScalar focalX) { |
386 return SkNEW_ARGS(FocalOutside2PtConicalEffect, (ctx, shader, matrix, tm
, focalX)); | 386 return SkNEW_ARGS(FocalOutside2PtConicalEffect, (ctx, shader, matrix, tm
, focalX)); |
387 } | 387 } |
388 | 388 |
389 virtual ~FocalOutside2PtConicalEffect() { } | 389 virtual ~FocalOutside2PtConicalEffect() { } |
390 | 390 |
391 const char* name() const SK_OVERRIDE { | 391 const char* name() const override { |
392 return "Two-Point Conical Gradient Focal Outside"; | 392 return "Two-Point Conical Gradient Focal Outside"; |
393 } | 393 } |
394 | 394 |
395 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const SK_OVE
RRIDE; | 395 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const overri
de; |
396 | 396 |
397 GrGLFragmentProcessor* createGLInstance() const SK_OVERRIDE; | 397 GrGLFragmentProcessor* createGLInstance() const override; |
398 | 398 |
399 bool isFlipped() const { return fIsFlipped; } | 399 bool isFlipped() const { return fIsFlipped; } |
400 SkScalar focal() const { return fFocalX; } | 400 SkScalar focal() const { return fFocalX; } |
401 | 401 |
402 private: | 402 private: |
403 bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { | 403 bool onIsEqual(const GrFragmentProcessor& sBase) const override { |
404 const FocalOutside2PtConicalEffect& s = sBase.cast<FocalOutside2PtConica
lEffect>(); | 404 const FocalOutside2PtConicalEffect& s = sBase.cast<FocalOutside2PtConica
lEffect>(); |
405 return (INHERITED::onIsEqual(sBase) && | 405 return (INHERITED::onIsEqual(sBase) && |
406 this->fFocalX == s.fFocalX && | 406 this->fFocalX == s.fFocalX && |
407 this->fIsFlipped == s.fIsFlipped); | 407 this->fIsFlipped == s.fIsFlipped); |
408 } | 408 } |
409 | 409 |
410 FocalOutside2PtConicalEffect(GrContext* ctx, | 410 FocalOutside2PtConicalEffect(GrContext* ctx, |
411 const SkTwoPointConicalGradient& shader, | 411 const SkTwoPointConicalGradient& shader, |
412 const SkMatrix& matrix, | 412 const SkMatrix& matrix, |
413 SkShader::TileMode tm, | 413 SkShader::TileMode tm, |
(...skipping 13 matching lines...) Expand all Loading... |
427 class GLFocalOutside2PtConicalEffect : public GrGLGradientEffect { | 427 class GLFocalOutside2PtConicalEffect : public GrGLGradientEffect { |
428 public: | 428 public: |
429 GLFocalOutside2PtConicalEffect(const GrProcessor&); | 429 GLFocalOutside2PtConicalEffect(const GrProcessor&); |
430 virtual ~GLFocalOutside2PtConicalEffect() { } | 430 virtual ~GLFocalOutside2PtConicalEffect() { } |
431 | 431 |
432 virtual void emitCode(GrGLFPBuilder*, | 432 virtual void emitCode(GrGLFPBuilder*, |
433 const GrFragmentProcessor&, | 433 const GrFragmentProcessor&, |
434 const char* outputColor, | 434 const char* outputColor, |
435 const char* inputColor, | 435 const char* inputColor, |
436 const TransformedCoordsArray&, | 436 const TransformedCoordsArray&, |
437 const TextureSamplerArray&) SK_OVERRIDE; | 437 const TextureSamplerArray&) override; |
438 void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE; | 438 void setData(const GrGLProgramDataManager&, const GrProcessor&) override; |
439 | 439 |
440 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); | 440 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); |
441 | 441 |
442 protected: | 442 protected: |
443 UniformHandle fParamUni; | 443 UniformHandle fParamUni; |
444 | 444 |
445 const char* fVSVaryingName; | 445 const char* fVSVaryingName; |
446 const char* fFSVaryingName; | 446 const char* fFSVaryingName; |
447 | 447 |
448 bool fIsFlipped; | 448 bool fIsFlipped; |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
603 static GrFragmentProcessor* Create(GrContext* ctx, | 603 static GrFragmentProcessor* Create(GrContext* ctx, |
604 const SkTwoPointConicalGradient& shader, | 604 const SkTwoPointConicalGradient& shader, |
605 const SkMatrix& matrix, | 605 const SkMatrix& matrix, |
606 SkShader::TileMode tm, | 606 SkShader::TileMode tm, |
607 SkScalar focalX) { | 607 SkScalar focalX) { |
608 return SkNEW_ARGS(FocalInside2PtConicalEffect, (ctx, shader, matrix, tm,
focalX)); | 608 return SkNEW_ARGS(FocalInside2PtConicalEffect, (ctx, shader, matrix, tm,
focalX)); |
609 } | 609 } |
610 | 610 |
611 virtual ~FocalInside2PtConicalEffect() {} | 611 virtual ~FocalInside2PtConicalEffect() {} |
612 | 612 |
613 const char* name() const SK_OVERRIDE { | 613 const char* name() const override { |
614 return "Two-Point Conical Gradient Focal Inside"; | 614 return "Two-Point Conical Gradient Focal Inside"; |
615 } | 615 } |
616 | 616 |
617 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const SK_OVE
RRIDE; | 617 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const overri
de; |
618 | 618 |
619 GrGLFragmentProcessor* createGLInstance() const SK_OVERRIDE; | 619 GrGLFragmentProcessor* createGLInstance() const override; |
620 | 620 |
621 SkScalar focal() const { return fFocalX; } | 621 SkScalar focal() const { return fFocalX; } |
622 | 622 |
623 typedef GLFocalInside2PtConicalEffect GLProcessor; | 623 typedef GLFocalInside2PtConicalEffect GLProcessor; |
624 | 624 |
625 private: | 625 private: |
626 bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { | 626 bool onIsEqual(const GrFragmentProcessor& sBase) const override { |
627 const FocalInside2PtConicalEffect& s = sBase.cast<FocalInside2PtConicalE
ffect>(); | 627 const FocalInside2PtConicalEffect& s = sBase.cast<FocalInside2PtConicalE
ffect>(); |
628 return (INHERITED::onIsEqual(sBase) && | 628 return (INHERITED::onIsEqual(sBase) && |
629 this->fFocalX == s.fFocalX); | 629 this->fFocalX == s.fFocalX); |
630 } | 630 } |
631 | 631 |
632 FocalInside2PtConicalEffect(GrContext* ctx, | 632 FocalInside2PtConicalEffect(GrContext* ctx, |
633 const SkTwoPointConicalGradient& shader, | 633 const SkTwoPointConicalGradient& shader, |
634 const SkMatrix& matrix, | 634 const SkMatrix& matrix, |
635 SkShader::TileMode tm, | 635 SkShader::TileMode tm, |
636 SkScalar focalX) | 636 SkScalar focalX) |
(...skipping 11 matching lines...) Expand all Loading... |
648 class GLFocalInside2PtConicalEffect : public GrGLGradientEffect { | 648 class GLFocalInside2PtConicalEffect : public GrGLGradientEffect { |
649 public: | 649 public: |
650 GLFocalInside2PtConicalEffect(const GrProcessor&); | 650 GLFocalInside2PtConicalEffect(const GrProcessor&); |
651 virtual ~GLFocalInside2PtConicalEffect() {} | 651 virtual ~GLFocalInside2PtConicalEffect() {} |
652 | 652 |
653 virtual void emitCode(GrGLFPBuilder*, | 653 virtual void emitCode(GrGLFPBuilder*, |
654 const GrFragmentProcessor&, | 654 const GrFragmentProcessor&, |
655 const char* outputColor, | 655 const char* outputColor, |
656 const char* inputColor, | 656 const char* inputColor, |
657 const TransformedCoordsArray&, | 657 const TransformedCoordsArray&, |
658 const TextureSamplerArray&) SK_OVERRIDE; | 658 const TextureSamplerArray&) override; |
659 void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE; | 659 void setData(const GrGLProgramDataManager&, const GrProcessor&) override; |
660 | 660 |
661 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); | 661 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); |
662 | 662 |
663 protected: | 663 protected: |
664 UniformHandle fFocalUni; | 664 UniformHandle fFocalUni; |
665 | 665 |
666 const char* fVSVaryingName; | 666 const char* fVSVaryingName; |
667 const char* fFSVaryingName; | 667 const char* fFSVaryingName; |
668 | 668 |
669 // @{ | 669 // @{ |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
850 static GrFragmentProcessor* Create(GrContext* ctx, | 850 static GrFragmentProcessor* Create(GrContext* ctx, |
851 const SkTwoPointConicalGradient& shader, | 851 const SkTwoPointConicalGradient& shader, |
852 const SkMatrix& matrix, | 852 const SkMatrix& matrix, |
853 SkShader::TileMode tm, | 853 SkShader::TileMode tm, |
854 const CircleConicalInfo& info) { | 854 const CircleConicalInfo& info) { |
855 return SkNEW_ARGS(CircleInside2PtConicalEffect, (ctx, shader, matrix, tm
, info)); | 855 return SkNEW_ARGS(CircleInside2PtConicalEffect, (ctx, shader, matrix, tm
, info)); |
856 } | 856 } |
857 | 857 |
858 virtual ~CircleInside2PtConicalEffect() {} | 858 virtual ~CircleInside2PtConicalEffect() {} |
859 | 859 |
860 const char* name() const SK_OVERRIDE { return "Two-Point Conical Gradient In
side"; } | 860 const char* name() const override { return "Two-Point Conical Gradient Insid
e"; } |
861 | 861 |
862 virtual void getGLProcessorKey(const GrGLCaps& caps, | 862 virtual void getGLProcessorKey(const GrGLCaps& caps, |
863 GrProcessorKeyBuilder* b) const SK_OVERRIDE; | 863 GrProcessorKeyBuilder* b) const override; |
864 | 864 |
865 GrGLFragmentProcessor* createGLInstance() const SK_OVERRIDE; | 865 GrGLFragmentProcessor* createGLInstance() const override; |
866 | 866 |
867 SkScalar centerX() const { return fInfo.fCenterEnd.fX; } | 867 SkScalar centerX() const { return fInfo.fCenterEnd.fX; } |
868 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } | 868 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } |
869 SkScalar A() const { return fInfo.fA; } | 869 SkScalar A() const { return fInfo.fA; } |
870 SkScalar B() const { return fInfo.fB; } | 870 SkScalar B() const { return fInfo.fB; } |
871 SkScalar C() const { return fInfo.fC; } | 871 SkScalar C() const { return fInfo.fC; } |
872 | 872 |
873 private: | 873 private: |
874 bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { | 874 bool onIsEqual(const GrFragmentProcessor& sBase) const override { |
875 const CircleInside2PtConicalEffect& s = sBase.cast<CircleInside2PtConica
lEffect>(); | 875 const CircleInside2PtConicalEffect& s = sBase.cast<CircleInside2PtConica
lEffect>(); |
876 return (INHERITED::onIsEqual(sBase) && | 876 return (INHERITED::onIsEqual(sBase) && |
877 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && | 877 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && |
878 this->fInfo.fA == s.fInfo.fA && | 878 this->fInfo.fA == s.fInfo.fA && |
879 this->fInfo.fB == s.fInfo.fB && | 879 this->fInfo.fB == s.fInfo.fB && |
880 this->fInfo.fC == s.fInfo.fC); | 880 this->fInfo.fC == s.fInfo.fC); |
881 } | 881 } |
882 | 882 |
883 CircleInside2PtConicalEffect(GrContext* ctx, | 883 CircleInside2PtConicalEffect(GrContext* ctx, |
884 const SkTwoPointConicalGradient& shader, | 884 const SkTwoPointConicalGradient& shader, |
(...skipping 14 matching lines...) Expand all Loading... |
899 class GLCircleInside2PtConicalEffect : public GrGLGradientEffect { | 899 class GLCircleInside2PtConicalEffect : public GrGLGradientEffect { |
900 public: | 900 public: |
901 GLCircleInside2PtConicalEffect(const GrProcessor&); | 901 GLCircleInside2PtConicalEffect(const GrProcessor&); |
902 virtual ~GLCircleInside2PtConicalEffect() {} | 902 virtual ~GLCircleInside2PtConicalEffect() {} |
903 | 903 |
904 virtual void emitCode(GrGLFPBuilder*, | 904 virtual void emitCode(GrGLFPBuilder*, |
905 const GrFragmentProcessor&, | 905 const GrFragmentProcessor&, |
906 const char* outputColor, | 906 const char* outputColor, |
907 const char* inputColor, | 907 const char* inputColor, |
908 const TransformedCoordsArray&, | 908 const TransformedCoordsArray&, |
909 const TextureSamplerArray&) SK_OVERRIDE; | 909 const TextureSamplerArray&) override; |
910 void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE; | 910 void setData(const GrGLProgramDataManager&, const GrProcessor&) override; |
911 | 911 |
912 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); | 912 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); |
913 | 913 |
914 protected: | 914 protected: |
915 UniformHandle fCenterUni; | 915 UniformHandle fCenterUni; |
916 UniformHandle fParamUni; | 916 UniformHandle fParamUni; |
917 | 917 |
918 const char* fVSVaryingName; | 918 const char* fVSVaryingName; |
919 const char* fFSVaryingName; | 919 const char* fFSVaryingName; |
920 | 920 |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1074 static GrFragmentProcessor* Create(GrContext* ctx, | 1074 static GrFragmentProcessor* Create(GrContext* ctx, |
1075 const SkTwoPointConicalGradient& shader, | 1075 const SkTwoPointConicalGradient& shader, |
1076 const SkMatrix& matrix, | 1076 const SkMatrix& matrix, |
1077 SkShader::TileMode tm, | 1077 SkShader::TileMode tm, |
1078 const CircleConicalInfo& info) { | 1078 const CircleConicalInfo& info) { |
1079 return SkNEW_ARGS(CircleOutside2PtConicalEffect, (ctx, shader, matrix, t
m, info)); | 1079 return SkNEW_ARGS(CircleOutside2PtConicalEffect, (ctx, shader, matrix, t
m, info)); |
1080 } | 1080 } |
1081 | 1081 |
1082 virtual ~CircleOutside2PtConicalEffect() {} | 1082 virtual ~CircleOutside2PtConicalEffect() {} |
1083 | 1083 |
1084 const char* name() const SK_OVERRIDE { return "Two-Point Conical Gradient Ou
tside"; } | 1084 const char* name() const override { return "Two-Point Conical Gradient Outsi
de"; } |
1085 | 1085 |
1086 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const SK_OVE
RRIDE; | 1086 void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const overri
de; |
1087 | 1087 |
1088 GrGLFragmentProcessor* createGLInstance() const SK_OVERRIDE; | 1088 GrGLFragmentProcessor* createGLInstance() const override; |
1089 | 1089 |
1090 SkScalar centerX() const { return fInfo.fCenterEnd.fX; } | 1090 SkScalar centerX() const { return fInfo.fCenterEnd.fX; } |
1091 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } | 1091 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } |
1092 SkScalar A() const { return fInfo.fA; } | 1092 SkScalar A() const { return fInfo.fA; } |
1093 SkScalar B() const { return fInfo.fB; } | 1093 SkScalar B() const { return fInfo.fB; } |
1094 SkScalar C() const { return fInfo.fC; } | 1094 SkScalar C() const { return fInfo.fC; } |
1095 SkScalar tLimit() const { return fTLimit; } | 1095 SkScalar tLimit() const { return fTLimit; } |
1096 bool isFlipped() const { return fIsFlipped; } | 1096 bool isFlipped() const { return fIsFlipped; } |
1097 | 1097 |
1098 private: | 1098 private: |
1099 bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { | 1099 bool onIsEqual(const GrFragmentProcessor& sBase) const override { |
1100 const CircleOutside2PtConicalEffect& s = sBase.cast<CircleOutside2PtConi
calEffect>(); | 1100 const CircleOutside2PtConicalEffect& s = sBase.cast<CircleOutside2PtConi
calEffect>(); |
1101 return (INHERITED::onIsEqual(sBase) && | 1101 return (INHERITED::onIsEqual(sBase) && |
1102 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && | 1102 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && |
1103 this->fInfo.fA == s.fInfo.fA && | 1103 this->fInfo.fA == s.fInfo.fA && |
1104 this->fInfo.fB == s.fInfo.fB && | 1104 this->fInfo.fB == s.fInfo.fB && |
1105 this->fInfo.fC == s.fInfo.fC && | 1105 this->fInfo.fC == s.fInfo.fC && |
1106 this->fTLimit == s.fTLimit && | 1106 this->fTLimit == s.fTLimit && |
1107 this->fIsFlipped == s.fIsFlipped); | 1107 this->fIsFlipped == s.fIsFlipped); |
1108 } | 1108 } |
1109 | 1109 |
(...skipping 26 matching lines...) Expand all Loading... |
1136 class GLCircleOutside2PtConicalEffect : public GrGLGradientEffect { | 1136 class GLCircleOutside2PtConicalEffect : public GrGLGradientEffect { |
1137 public: | 1137 public: |
1138 GLCircleOutside2PtConicalEffect(const GrProcessor&); | 1138 GLCircleOutside2PtConicalEffect(const GrProcessor&); |
1139 virtual ~GLCircleOutside2PtConicalEffect() {} | 1139 virtual ~GLCircleOutside2PtConicalEffect() {} |
1140 | 1140 |
1141 virtual void emitCode(GrGLFPBuilder*, | 1141 virtual void emitCode(GrGLFPBuilder*, |
1142 const GrFragmentProcessor&, | 1142 const GrFragmentProcessor&, |
1143 const char* outputColor, | 1143 const char* outputColor, |
1144 const char* inputColor, | 1144 const char* inputColor, |
1145 const TransformedCoordsArray&, | 1145 const TransformedCoordsArray&, |
1146 const TextureSamplerArray&) SK_OVERRIDE; | 1146 const TextureSamplerArray&) override; |
1147 void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE; | 1147 void setData(const GrGLProgramDataManager&, const GrProcessor&) override; |
1148 | 1148 |
1149 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); | 1149 static void GenKey(const GrProcessor&, const GrGLCaps& caps, GrProcessorKeyB
uilder* b); |
1150 | 1150 |
1151 protected: | 1151 protected: |
1152 UniformHandle fCenterUni; | 1152 UniformHandle fCenterUni; |
1153 UniformHandle fParamUni; | 1153 UniformHandle fParamUni; |
1154 | 1154 |
1155 const char* fVSVaryingName; | 1155 const char* fVSVaryingName; |
1156 const char* fFSVaryingName; | 1156 const char* fFSVaryingName; |
1157 | 1157 |
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1372 return CircleInside2PtConicalEffect::Create(ctx, shader, matrix, tm, inf
o); | 1372 return CircleInside2PtConicalEffect::Create(ctx, shader, matrix, tm, inf
o); |
1373 } else if (type == kEdge_ConicalType) { | 1373 } else if (type == kEdge_ConicalType) { |
1374 set_matrix_edge_conical(shader, &matrix); | 1374 set_matrix_edge_conical(shader, &matrix); |
1375 return Edge2PtConicalEffect::Create(ctx, shader, matrix, tm); | 1375 return Edge2PtConicalEffect::Create(ctx, shader, matrix, tm); |
1376 } else { | 1376 } else { |
1377 return CircleOutside2PtConicalEffect::Create(ctx, shader, matrix, tm, in
fo); | 1377 return CircleOutside2PtConicalEffect::Create(ctx, shader, matrix, tm, in
fo); |
1378 } | 1378 } |
1379 } | 1379 } |
1380 | 1380 |
1381 #endif | 1381 #endif |
OLD | NEW |