Index: src/gpu/batches/GrAAFillRectBatch.cpp |
diff --git a/src/gpu/batches/GrAAFillRectBatch.cpp b/src/gpu/batches/GrAAFillRectBatch.cpp |
index e2b088c541f45330f1b22f4b2a9690f5ff464fd5..9ec8ffdc4a2a46046b4545f612b50e9ab8b5b9ac 100644 |
--- a/src/gpu/batches/GrAAFillRectBatch.cpp |
+++ b/src/gpu/batches/GrAAFillRectBatch.cpp |
@@ -46,7 +46,7 @@ const GrIndexBuffer* get_index_buffer(GrResourceProvider* resourceProvider) { |
static const GrGeometryProcessor* create_fill_rect_gp( |
const SkMatrix& viewMatrix, |
- const GrPipelineOptimizations& opts, |
+ const GrXPOverridesForBatch& overrides, |
GrDefaultGeoProcFactory::LocalCoords::Type localCoordsType) { |
using namespace GrDefaultGeoProcFactory; |
@@ -55,7 +55,7 @@ static const GrGeometryProcessor* create_fill_rect_gp( |
// TODO remove coverage if coverage is ignored |
/*if (coverageIgnored) { |
coverageType = Coverage::kNone_Type; |
- } else*/ if (opts.canTweakAlphaForCoverage()) { |
+ } else*/ if (overrides.canTweakAlphaForCoverage()) { |
coverageType = Coverage::kSolid_Type; |
} else { |
coverageType = Coverage::kAttribute_Type; |
@@ -67,8 +67,8 @@ static const GrGeometryProcessor* create_fill_rect_gp( |
LocalCoords localCoords(localCoordsType); |
return GrDefaultGeoProcFactory::Create(color, coverage, localCoords, SkMatrix::I()); |
} else { |
- LocalCoords localCoords(opts.readsLocalCoords() ? localCoordsType : |
- LocalCoords::kUnused_Type); |
+ LocalCoords localCoords(overrides.readsLocalCoords() ? localCoordsType : |
+ LocalCoords::kUnused_Type); |
return CreateForDeviceSpace(color, coverage, localCoords, viewMatrix); |
} |
} |
@@ -79,7 +79,7 @@ static void generate_aa_fill_rect_geometry(intptr_t verts, |
const SkMatrix& viewMatrix, |
const SkRect& rect, |
const SkRect& devRect, |
- const GrPipelineOptimizations& opts, |
+ const GrXPOverridesForBatch& overrides, |
const SkMatrix* localMatrix) { |
SkPoint* fan0Pos = reinterpret_cast<SkPoint*>(verts); |
SkPoint* fan1Pos = reinterpret_cast<SkPoint*>(verts + 4 * vertexStride); |
@@ -140,7 +140,7 @@ static void generate_aa_fill_rect_geometry(intptr_t verts, |
localCoordMatrix.mapPointsWithStride(fan0Loc, fan0Pos, vertexStride, 8); |
} |
- bool tweakAlphaForCoverage = opts.canTweakAlphaForCoverage(); |
+ bool tweakAlphaForCoverage = overrides.canTweakAlphaForCoverage(); |
// Make verts point to vertex color and then set all the color and coverage vertex attrs |
// values. |
@@ -227,20 +227,20 @@ public: |
} |
static bool CanCombine(const Geometry& mine, const Geometry& theirs, |
- const GrPipelineOptimizations& opts) { |
+ const GrXPOverridesForBatch& overrides) { |
// We apply the viewmatrix to the rect points on the cpu. However, if the pipeline uses |
// local coords then we won't be able to batch. We could actually upload the viewmatrix |
// using vertex attributes in these cases, but haven't investigated that |
- return !opts.readsLocalCoords() || mine.fViewMatrix.cheapEqualTo(theirs.fViewMatrix); |
+ return !overrides.readsLocalCoords() || mine.fViewMatrix.cheapEqualTo(theirs.fViewMatrix); |
} |
static const GrGeometryProcessor* CreateGP(const Geometry& geo, |
- const GrPipelineOptimizations& opts) { |
+ const GrXPOverridesForBatch& overrides) { |
const GrGeometryProcessor* gp = |
- create_fill_rect_gp(geo.fViewMatrix, opts, |
+ create_fill_rect_gp(geo.fViewMatrix, overrides, |
GrDefaultGeoProcFactory::LocalCoords::kUsePosition_Type); |
- SkASSERT(opts.canTweakAlphaForCoverage() ? |
+ SkASSERT(overrides.canTweakAlphaForCoverage() ? |
gp->getVertexStride() == sizeof(GrDefaultGeoProcFactory::PositionColorAttr) : |
gp->getVertexStride() == |
sizeof(GrDefaultGeoProcFactory::PositionColorCoverageAttr)); |
@@ -248,10 +248,10 @@ public: |
} |
static void Tesselate(intptr_t vertices, size_t vertexStride, const Geometry& geo, |
- const GrPipelineOptimizations& opts) { |
+ const GrXPOverridesForBatch& overrides) { |
generate_aa_fill_rect_geometry(vertices, vertexStride, |
- geo.fColor, geo.fViewMatrix, geo.fRect, geo.fDevRect, opts, |
- nullptr); |
+ geo.fColor, geo.fViewMatrix, geo.fRect, geo.fDevRect, |
+ overrides, nullptr); |
} |
}; |
@@ -277,17 +277,17 @@ public: |
} |
static bool CanCombine(const Geometry& mine, const Geometry& theirs, |
- const GrPipelineOptimizations&) { |
+ const GrXPOverridesForBatch& overrides) { |
return true; |
} |
static const GrGeometryProcessor* CreateGP(const Geometry& geo, |
- const GrPipelineOptimizations& opts) { |
+ const GrXPOverridesForBatch& overrides) { |
const GrGeometryProcessor* gp = |
- create_fill_rect_gp(geo.fViewMatrix, opts, |
+ create_fill_rect_gp(geo.fViewMatrix, overrides, |
GrDefaultGeoProcFactory::LocalCoords::kHasExplicit_Type); |
- SkASSERT(opts.canTweakAlphaForCoverage() ? |
+ SkASSERT(overrides.canTweakAlphaForCoverage() ? |
gp->getVertexStride() == |
sizeof(GrDefaultGeoProcFactory::PositionColorLocalCoordAttr) : |
gp->getVertexStride() == |
@@ -296,10 +296,10 @@ public: |
} |
static void Tesselate(intptr_t vertices, size_t vertexStride, const Geometry& geo, |
- const GrPipelineOptimizations& opts) { |
+ const GrXPOverridesForBatch& overrides) { |
generate_aa_fill_rect_geometry(vertices, vertexStride, |
- geo.fColor, geo.fViewMatrix, geo.fRect, geo.fDevRect, opts, |
- &geo.fLocalMatrix); |
+ geo.fColor, geo.fViewMatrix, geo.fRect, geo.fDevRect, |
+ overrides, &geo.fLocalMatrix); |
} |
}; |