Index: include/gpu/GrInvariantOutput.h |
diff --git a/include/gpu/GrInvariantOutput.h b/include/gpu/GrInvariantOutput.h |
index 8cf4bf59c3244d2552e45b926ade4535061ee1b4..6e2cbe84f9a07dce127be0113836afd35d50f5c4 100644 |
--- a/include/gpu/GrInvariantOutput.h |
+++ b/include/gpu/GrInvariantOutput.h |
@@ -197,6 +197,18 @@ public: |
SkDEBUGCODE(this->validate()); |
} |
+ void premulFourChannelColor() { |
+ SkDEBUGCODE(this->validate()); |
+ SkASSERT(!fIsSingleComponent); |
+ fNonMulStageFound = true; |
+ if (!(fValidFlags & kA_GrColorComponentFlag)) { |
+ fValidFlags = kNone_GrColorComponentFlags; |
+ } else { |
+ fColor = GrPremulColor(fColor); |
+ } |
+ SkDEBUGCODE(this->validate()); |
+ } |
+ |
void invalidateComponents(GrColorComponentFlags invalidateFlags, ReadInput readsInput) { |
SkDEBUGCODE(this->validate()); |
fValidFlags = (fValidFlags & ~invalidateFlags); |