Index: include/gpu/GrProcessor.h |
diff --git a/include/gpu/GrProcessor.h b/include/gpu/GrProcessor.h |
index 5afd8ea3882b0ee9086945a6648658cca409a215..3e892c6e3e25f3a8e71ce8ccca7d583bb779c5b5 100644 |
--- a/include/gpu/GrProcessor.h |
+++ b/include/gpu/GrProcessor.h |
@@ -84,7 +84,8 @@ public: |
*/ |
enum RequiredFeatures { |
kNone_RequiredFeatures = 0, |
- kFragmentPosition_RequiredFeature = 1 |
+ kFragmentPosition_RequiredFeature = 1 << 0, |
+ kSampleLocations_RequiredFeature = 1 << 1 |
}; |
GR_DECL_BITFIELD_OPS_FRIENDS(RequiredFeatures); |
@@ -122,11 +123,12 @@ protected: |
bool hasSameTextureAccesses(const GrProcessor&) const; |
/** |
- * If the prcoessor will generate a backend-specific processor that will read the fragment |
- * position in the FS then it must call this method from its constructor. Otherwise, the |
- * request to access the fragment position will be denied. |
+ * If the prcoessor will generate code that uses platform specific built-in features, then it |
+ * must call these methods from its constructor. Otherwise, requests to use these features will |
+ * be denied. |
*/ |
void setWillReadFragmentPosition() { fRequiredFeatures |= kFragmentPosition_RequiredFeature; } |
+ void setWillUseSampleLocations() { fRequiredFeatures |= kSampleLocations_RequiredFeature; } |
void combineRequiredFeatures(const GrProcessor& other) { |
fRequiredFeatures |= other.fRequiredFeatures; |