Remove GrStagedProcessor, remove the word Stage as it applies to FPs
Committed: https://skia.googlesource.com/skia/+/24243446cdf7b7e4e132c2a0c387c7723777e0c7
Review URL: https://codereview.chromium.org/1307223004
diff --git a/include/gpu/GrFragmentProcessor.h b/include/gpu/GrFragmentProcessor.h
index 097925b..e4d9151 100644
--- a/include/gpu/GrFragmentProcessor.h
+++ b/include/gpu/GrFragmentProcessor.h
@@ -9,7 +9,6 @@
#define GrFragmentProcessor_DEFINED
#include "GrProcessor.h"
-#include "GrStagedProcessor.h"
class GrCoordTransform;
class GrGLSLCaps;
@@ -29,12 +28,14 @@
, fNumTexturesExclChildren(0)
, fNumTransformsExclChildren(0) {}
+ ~GrFragmentProcessor() override;
+
GrGLFragmentProcessor* createGLInstance() const;
void getGLProcessorKey(const GrGLSLCaps& caps, GrProcessorKeyBuilder* b) const {
this->onGetGLProcessorKey(caps, b);
for (int i = 0; i < fChildProcessors.count(); ++i) {
- fChildProcessors[i].processor()->getGLProcessorKey(caps, b);
+ fChildProcessors[i]->getGLProcessorKey(caps, b);
}
}
@@ -60,9 +61,7 @@
int numChildProcessors() const { return fChildProcessors.count(); }
- const GrFragmentProcessor& childProcessor(int index) const {
- return *fChildProcessors[index].processor();
- }
+ const GrFragmentProcessor& childProcessor(int index) const { return *fChildProcessors[index]; }
/** Do any of the coordtransforms for this processor require local coords? */
bool usesLocalCoords() const { return fUsesLocalCoords; }
@@ -176,7 +175,9 @@
int fNumTexturesExclChildren;
int fNumTransformsExclChildren;
- SkTArray<GrFragmentStage, false> fChildProcessors;
+ // TODO: These must convert their processors to pending-execution refs when the parent is
+ // converted (do this automatically in GrProgramElement?).
+ SkTArray<const GrFragmentProcessor*, true> fChildProcessors;
typedef GrProcessor INHERITED;
};