Index: include/gpu/GrGeometryProcessor.h |
diff --git a/include/gpu/GrGeometryProcessor.h b/include/gpu/GrGeometryProcessor.h |
index 60928f2f10be706fb1702dd179727a140187c925..287d7e11845b97edb2cbb96c2ac9a079b2130bca 100644 |
--- a/include/gpu/GrGeometryProcessor.h |
+++ b/include/gpu/GrGeometryProcessor.h |
@@ -23,7 +23,8 @@ |
*/ |
class GrGeometryProcessor : public GrProcessor { |
public: |
- GrGeometryProcessor() {} |
+ GrGeometryProcessor() |
+ : fWillUseGeoShader(false) {} |
virtual const GrBackendGeometryProcessorFactory& getFactory() const = 0; |
@@ -37,6 +38,8 @@ public: |
const VertexAttribArray& getVertexAttribs() const { return fVertexAttribs; } |
+ bool willUseGeoShader() const { return fWillUseGeoShader; } |
+ |
/** Returns true if this and other processor conservatively draw identically. It can only return |
true when the two prcoessors are of the same subclass (i.e. they return the same object from |
from getFactory()). |
@@ -61,10 +64,13 @@ protected: |
return fVertexAttribs.push_back(var); |
} |
+ void setWillUseGeoShader() { fWillUseGeoShader = true; } |
+ |
private: |
virtual bool onIsEqual(const GrGeometryProcessor&) const = 0; |
SkSTArray<kMaxVertexAttribs, GrShaderVar, true> fVertexAttribs; |
+ bool fWillUseGeoShader; |
typedef GrProcessor INHERITED; |
}; |