Index: src/gpu/GrProcessor.cpp |
diff --git a/src/gpu/GrProcessor.cpp b/src/gpu/GrProcessor.cpp |
index ccd4d7f7e86bae2bb64350f8839991ae24000cc8..f5f4765fe0dc2382f0fe9beb0fcb709016cd150d 100644 |
--- a/src/gpu/GrProcessor.cpp |
+++ b/src/gpu/GrProcessor.cpp |
@@ -145,10 +145,6 @@ bool GrProcessor::hasSameTextureAccesses(const GrProcessor& that) const { |
return true; |
} |
-void GrProcessor::computeInvariantOutput(GrInvariantOutput* inout) const { |
- this->onComputeInvariantOutput(inout); |
-} |
- |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
void GrFragmentProcessor::addCoordTransform(const GrCoordTransform* transform) { |
@@ -169,10 +165,36 @@ bool GrFragmentProcessor::hasSameTransforms(const GrFragmentProcessor& that) con |
return true; |
} |
+void GrFragmentProcessor::computeInvariantOutput(GrInvariantOutput* inout) const { |
+ this->onComputeInvariantOutput(inout); |
+} |
+ |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
-void GrGeometryProcessor::computeInvariantColor(GrInvariantOutput* intout) const { |
+void GrGeometryProcessor::computeOutputColor(GrInitInvariantOutput* out) const { |
+ if (fHasVertexColor) { |
+ out->setIsUnknownFourComponents(); |
+ } else { |
+ out->setIsKnownFourComponents(fColor); |
+ } |
+ this->onComputeOutputColor(out); |
+} |
+void GrGeometryProcessor::computeOutputCoverage(GrInitInvariantOutput* out) const { |
+ this->onComputeOutputCoverage(out); |
+} |
+ |
+/////////////////////////////////////////////////////////////////////////////////////////////////// |
+ |
+void GrPathProcessor::computeOutputColor(GrInitInvariantOutput* out) const { |
+ out->setIsKnownFourComponents(fColor); |
+} |
+ |
+void GrPathProcessor::computeOutputCoverage(GrInitInvariantOutput* out) const { |
+ out->setIsKnownSingleComponent(0xff); |
+ out->fValidFlags = kRGBA_GrColorComponentFlags; |
+ out->fColor = GrColor_WHITE; |
+ //out->setIsSingleComponent(); |
bsalomon
2014/12/10 15:27:00
why commented out? why calling helper and setting
|
} |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
@@ -194,3 +216,9 @@ void GrGeometryData::operator delete(void* target) { |
int32_t GrXPFactory::gCurrXPFClassID = |
GrXPFactory::kIllegalXPFClassID; |
+/////////////////////////////////////////////////////////////////////////////////////////////////// |
+ |
+void GrXferProcessor::computeInvariantOutput(GrInvariantOutput* inout) const { |
+ this->onComputeInvariantOutput(inout); |
+} |
+ |