OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2014 Google Inc. | 2 * Copyright 2014 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 #include "GrRRectEffect.h" | 8 #include "GrRRectEffect.h" |
9 | 9 |
10 #include "GrConvexPolyEffect.h" | 10 #include "GrConvexPolyEffect.h" |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 void CircularRRectEffect::onComputeInvariantOutput(GrInvariantOutput* inout) con
st { | 90 void CircularRRectEffect::onComputeInvariantOutput(GrInvariantOutput* inout) con
st { |
91 inout->mulByUnknownSingleComponent(); | 91 inout->mulByUnknownSingleComponent(); |
92 } | 92 } |
93 | 93 |
94 CircularRRectEffect::CircularRRectEffect(GrPrimitiveEdgeType edgeType, uint32_t
circularCornerFlags, | 94 CircularRRectEffect::CircularRRectEffect(GrPrimitiveEdgeType edgeType, uint32_t
circularCornerFlags, |
95 const SkRRect& rrect) | 95 const SkRRect& rrect) |
96 : fRRect(rrect) | 96 : fRRect(rrect) |
97 , fEdgeType(edgeType) | 97 , fEdgeType(edgeType) |
98 , fCircularCornerFlags(circularCornerFlags) { | 98 , fCircularCornerFlags(circularCornerFlags) { |
99 this->initClassID<CircularRRectEffect>(); | 99 this->initClassID<CircularRRectEffect>(); |
100 this->setWillReadFragmentPosition(); | 100 this->enableBuiltInState(kFragmentPosition_BuiltInState); |
101 } | 101 } |
102 | 102 |
103 bool CircularRRectEffect::onIsEqual(const GrFragmentProcessor& other) const { | 103 bool CircularRRectEffect::onIsEqual(const GrFragmentProcessor& other) const { |
104 const CircularRRectEffect& crre = other.cast<CircularRRectEffect>(); | 104 const CircularRRectEffect& crre = other.cast<CircularRRectEffect>(); |
105 // The corner flags are derived from fRRect, so no need to check them. | 105 // The corner flags are derived from fRRect, so no need to check them. |
106 return fEdgeType == crre.fEdgeType && fRRect == crre.fRRect; | 106 return fEdgeType == crre.fEdgeType && fRRect == crre.fRRect; |
107 } | 107 } |
108 | 108 |
109 ////////////////////////////////////////////////////////////////////////////// | 109 ////////////////////////////////////////////////////////////////////////////// |
110 | 110 |
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
425 } | 425 } |
426 | 426 |
427 void EllipticalRRectEffect::onComputeInvariantOutput(GrInvariantOutput* inout) c
onst { | 427 void EllipticalRRectEffect::onComputeInvariantOutput(GrInvariantOutput* inout) c
onst { |
428 inout->mulByUnknownSingleComponent(); | 428 inout->mulByUnknownSingleComponent(); |
429 } | 429 } |
430 | 430 |
431 EllipticalRRectEffect::EllipticalRRectEffect(GrPrimitiveEdgeType edgeType, const
SkRRect& rrect) | 431 EllipticalRRectEffect::EllipticalRRectEffect(GrPrimitiveEdgeType edgeType, const
SkRRect& rrect) |
432 : fRRect(rrect) | 432 : fRRect(rrect) |
433 , fEdgeType(edgeType) { | 433 , fEdgeType(edgeType) { |
434 this->initClassID<EllipticalRRectEffect>(); | 434 this->initClassID<EllipticalRRectEffect>(); |
435 this->setWillReadFragmentPosition(); | 435 this->enableBuiltInState(kFragmentPosition_BuiltInState); |
436 } | 436 } |
437 | 437 |
438 bool EllipticalRRectEffect::onIsEqual(const GrFragmentProcessor& other) const { | 438 bool EllipticalRRectEffect::onIsEqual(const GrFragmentProcessor& other) const { |
439 const EllipticalRRectEffect& erre = other.cast<EllipticalRRectEffect>(); | 439 const EllipticalRRectEffect& erre = other.cast<EllipticalRRectEffect>(); |
440 return fEdgeType == erre.fEdgeType && fRRect == erre.fRRect; | 440 return fEdgeType == erre.fEdgeType && fRRect == erre.fRRect; |
441 } | 441 } |
442 | 442 |
443 ////////////////////////////////////////////////////////////////////////////// | 443 ////////////////////////////////////////////////////////////////////////////// |
444 | 444 |
445 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(EllipticalRRectEffect); | 445 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(EllipticalRRectEffect); |
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
769 if (rrect.isNinePatch()) { | 769 if (rrect.isNinePatch()) { |
770 return EllipticalRRectEffect::Create(edgeType, rrect); | 770 return EllipticalRRectEffect::Create(edgeType, rrect); |
771 } | 771 } |
772 return nullptr; | 772 return nullptr; |
773 } | 773 } |
774 } | 774 } |
775 } | 775 } |
776 | 776 |
777 return nullptr; | 777 return nullptr; |
778 } | 778 } |
OLD | NEW |