15 : fXPFactory(that.fXPFactory)
16 , fTrivial(that.fTrivial)
17 , fColor(that.fColor) {
18 if (that.fColorFragmentProcessor) {
19 fColorFragmentProcessor = that.fColorFragmentProcessor->clone();
22 if (that.fCoverageFragmentProcessor) {
23 fCoverageFragmentProcessor = that.fCoverageFragmentProcessor->clone();
24 SkASSERT(fCoverageFragmentProcessor);
41 if (
kClear == fXPFactory) {
48 if (kSrc == fXPFactory || (!fXPFactory && fColor.
isOpaque())) {
49 *constantColor = fColor;
constexpr SkPMColor4f SK_PMColor4fTRANSPARENT
static const GrXPFactory * Get(SkRegion::Op regionOp, bool invertCoverage=false)
void setCoverageSetOpXPFactory(SkRegion::Op, bool invertCoverage=false)
void setXPFactory(const GrXPFactory *xpFactory)
bool isConstantBlendedColor(SkPMColor4f *constantColor) const
bool hasColorFragmentProcessor() const
void setPorterDuffXPFactory(SkBlendMode mode)
static const GrXPFactory * Get(SkBlendMode blendMode)