From ff2103200bad7abcf8929ae22ac78a9f4f725142 Mon Sep 17 00:00:00 2001 From: ethannicholas Date: Tue, 24 Nov 2015 12:10:10 -0800 Subject: New API for computing optimization invariants. Review URL: https://codereview.chromium.org/1467553002 --- src/gpu/batches/GrTestBatch.h | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'src/gpu/batches/GrTestBatch.h') diff --git a/src/gpu/batches/GrTestBatch.h b/src/gpu/batches/GrTestBatch.h index 02881c9668..b070bbaf75 100644 --- a/src/gpu/batches/GrTestBatch.h +++ b/src/gpu/batches/GrTestBatch.h @@ -26,27 +26,27 @@ public: virtual const char* name() const override = 0; - void getInvariantOutputColor(GrInitInvariantOutput* out) const override { + void computePipelineOptimizations(GrInitInvariantOutput* color, + GrInitInvariantOutput* coverage, + GrBatchToXPOverrides* overrides) const override { // When this is called on a batch, there is only one geometry bundle - out->setKnownFourComponents(this->geoData(0)->fColor); + color->setKnownFourComponents(this->geoData(0)->fColor); + coverage->setUnknownSingleComponent(); + overrides->fUsePLSDstRead = false; } - void getInvariantOutputCoverage(GrInitInvariantOutput* out) const override { - out->setUnknownSingleComponent(); - } - - void initBatchTracker(const GrPipelineOptimizations& opt) override { + void initBatchTracker(const GrXPOverridesForBatch& overrides) override { // Handle any color overrides - if (!opt.readsColor()) { + if (!overrides.readsColor()) { this->geoData(0)->fColor = GrColor_ILLEGAL; } - opt.getOverrideColorIfSet(&this->geoData(0)->fColor); + overrides.getOverrideColorIfSet(&this->geoData(0)->fColor); // setup batch properties - fBatch.fColorIgnored = !opt.readsColor(); + fBatch.fColorIgnored = !overrides.readsColor(); fBatch.fColor = this->geoData(0)->fColor; - fBatch.fUsesLocalCoords = opt.readsLocalCoords(); - fBatch.fCoverageIgnored = !opt.readsCoverage(); + fBatch.fUsesLocalCoords = overrides.readsLocalCoords(); + fBatch.fCoverageIgnored = !overrides.readsCoverage(); } protected: -- cgit v1.2.3