Index: src/gpu/GrPrimitiveProcessor.h |
diff --git a/src/gpu/GrPrimitiveProcessor.h b/src/gpu/GrPrimitiveProcessor.h |
index cba869eb3f9b7c116ea38984a7b5ba051863e2b2..54155a6d5f43566751954cb1a5529785ee07fa4b 100644 |
--- a/src/gpu/GrPrimitiveProcessor.h |
+++ b/src/gpu/GrPrimitiveProcessor.h |
@@ -42,30 +42,6 @@ |
* it emits the appropriate color, or none at all, as directed. |
*/ |
-/* |
- * A struct for tracking batching decisions. While this lives on GrOptState, it is managed |
- * entirely by the derived classes of the GP. |
- * // TODO this was an early attempt at handling out of order batching. It should be |
- * used carefully as it is being replaced by GrBatch |
- */ |
-class GrBatchTracker { |
-public: |
- template <typename T> const T& cast() const { |
- SkASSERT(sizeof(T) <= kMaxSize); |
- return *reinterpret_cast<const T*>(fData.get()); |
- } |
- |
- template <typename T> T* cast() { |
- SkASSERT(sizeof(T) <= kMaxSize); |
- return reinterpret_cast<T*>(fData.get()); |
- } |
- |
- static const size_t kMaxSize = 32; |
- |
-private: |
- SkAlignedSStorage<kMaxSize> fData; |
-}; |
- |
class GrGLSLCaps; |
class GrGLPrimitiveProcessor; |
@@ -155,28 +131,12 @@ private: |
}; |
/* |
- * This enum is shared by GrPrimitiveProcessors and GrGLPrimitiveProcessors to coordinate shaders |
- * with vertex attributes / uniforms. |
- */ |
-enum GrGPInput { |
- kAllOnes_GrGPInput, |
- kAttribute_GrGPInput, |
- kUniform_GrGPInput, |
- kIgnored_GrGPInput, |
-}; |
- |
-/* |
* GrPrimitiveProcessor defines an interface which all subclasses must implement. All |
* GrPrimitiveProcessors must proivide seed color and coverage for the Ganesh color / coverage |
* pipelines, and they must provide some notion of equality |
*/ |
class GrPrimitiveProcessor : public GrProcessor { |
public: |
- virtual void initBatchTracker(GrBatchTracker*, const GrPipelineOptimizations&) const = 0; |
- |
- virtual void getInvariantOutputColor(GrInitInvariantOutput* out) const = 0; |
- virtual void getInvariantOutputCoverage(GrInitInvariantOutput* out) const = 0; |
- |
// Only the GrGeometryProcessor subclass actually has a geo shader or vertex attributes, but |
// we put these calls on the base class to prevent having to cast |
virtual bool willUseGeoShader() const = 0; |
@@ -230,16 +190,14 @@ public: |
* |
* TODO: A better name for this function would be "compute" instead of "get". |
*/ |
- virtual void getGLProcessorKey(const GrBatchTracker& bt, |
- const GrGLSLCaps& caps, |
+ virtual void getGLProcessorKey(const GrGLSLCaps& caps, |
GrProcessorKeyBuilder* b) const = 0; |
/** Returns a new instance of the appropriate *GL* implementation class |
for the given GrProcessor; caller is responsible for deleting |
the object. */ |
- virtual GrGLPrimitiveProcessor* createGLInstance(const GrBatchTracker& bt, |
- const GrGLSLCaps& caps) const = 0; |
+ virtual GrGLPrimitiveProcessor* createGLInstance(const GrGLSLCaps& caps) const = 0; |
bool isPathRendering() const { return fIsPathRendering; } |