| Index: src/gpu/batches/GrAAConvexPathRenderer.cpp
|
| diff --git a/src/gpu/batches/GrAAConvexPathRenderer.cpp b/src/gpu/batches/GrAAConvexPathRenderer.cpp
|
| index e875f1c3ec296c6fde341d35acd5df0d76f0b69f..390162ede2f24acf0d08640601e0f0de29aa419f 100644
|
| --- a/src/gpu/batches/GrAAConvexPathRenderer.cpp
|
| +++ b/src/gpu/batches/GrAAConvexPathRenderer.cpp
|
| @@ -526,9 +526,9 @@ static void create_vertices(const SegmentArray& segments,
|
| class QuadEdgeEffect : public GrGeometryProcessor {
|
| public:
|
|
|
| - static GrGeometryProcessor* Create(GrColor color, const SkMatrix& localMatrix,
|
| - bool usesLocalCoords) {
|
| - return new QuadEdgeEffect(color, localMatrix, usesLocalCoords);
|
| + static sk_sp<GrGeometryProcessor> Make(GrColor color, const SkMatrix& localMatrix,
|
| + bool usesLocalCoords) {
|
| + return sk_sp<GrGeometryProcessor>(new QuadEdgeEffect(color, localMatrix, usesLocalCoords));
|
| }
|
|
|
| virtual ~QuadEdgeEffect() {}
|
| @@ -669,12 +669,12 @@ private:
|
|
|
| GR_DEFINE_GEOMETRY_PROCESSOR_TEST(QuadEdgeEffect);
|
|
|
| -const GrGeometryProcessor* QuadEdgeEffect::TestCreate(GrProcessorTestData* d) {
|
| +sk_sp<GrGeometryProcessor> QuadEdgeEffect::TestCreate(GrProcessorTestData* d) {
|
| // Doesn't work without derivative instructions.
|
| return d->fCaps->shaderCaps()->shaderDerivativeSupport() ?
|
| - QuadEdgeEffect::Create(GrRandomColor(d->fRandom),
|
| - GrTest::TestMatrix(d->fRandom),
|
| - d->fRandom->nextBool()) : nullptr;
|
| + QuadEdgeEffect::Make(GrRandomColor(d->fRandom),
|
| + GrTest::TestMatrix(d->fRandom),
|
| + d->fRandom->nextBool()) : nullptr;
|
| }
|
|
|
| ///////////////////////////////////////////////////////////////////////////////
|
| @@ -718,7 +718,7 @@ static void extract_verts(const GrAAConvexTessellator& tess,
|
| }
|
| }
|
|
|
| -static const GrGeometryProcessor* create_fill_gp(bool tweakAlphaForCoverage,
|
| +static sk_sp<GrGeometryProcessor> create_fill_gp(bool tweakAlphaForCoverage,
|
| const SkMatrix& viewMatrix,
|
| bool usesLocalCoords,
|
| bool coverageIgnored) {
|
| @@ -737,7 +737,7 @@ static const GrGeometryProcessor* create_fill_gp(bool tweakAlphaForCoverage,
|
| Coverage coverage(coverageType);
|
| LocalCoords localCoords(usesLocalCoords ? LocalCoords::kUsePosition_Type :
|
| LocalCoords::kUnused_Type);
|
| - return CreateForDeviceSpace(color, coverage, localCoords, viewMatrix);
|
| + return MakeForDeviceSpace(color, coverage, localCoords, viewMatrix);
|
| }
|
|
|
| class AAConvexPathBatch : public GrVertexBatch {
|
| @@ -782,10 +782,10 @@ private:
|
| bool canTweakAlphaForCoverage = this->canTweakAlphaForCoverage();
|
|
|
| // Setup GrGeometryProcessor
|
| - SkAutoTUnref<const GrGeometryProcessor> gp(create_fill_gp(canTweakAlphaForCoverage,
|
| - this->viewMatrix(),
|
| - this->usesLocalCoords(),
|
| - this->coverageIgnored()));
|
| + sk_sp<GrGeometryProcessor> gp(create_fill_gp(canTweakAlphaForCoverage,
|
| + this->viewMatrix(),
|
| + this->usesLocalCoords(),
|
| + this->coverageIgnored()));
|
| if (!gp) {
|
| SkDebugf("Could not create GrGeometryProcessor\n");
|
| return;
|
| @@ -836,7 +836,7 @@ private:
|
| vertexBuffer, indexBuffer,
|
| firstVertex, firstIndex,
|
| tess.numPts(), tess.numIndices());
|
| - target->draw(gp, mesh);
|
| + target->draw(gp.get(), mesh);
|
| }
|
| }
|
|
|
| @@ -857,8 +857,8 @@ private:
|
| }
|
|
|
| // Setup GrGeometryProcessor
|
| - SkAutoTUnref<GrGeometryProcessor> quadProcessor(
|
| - QuadEdgeEffect::Create(this->color(), invert, this->usesLocalCoords()));
|
| + sk_sp<GrGeometryProcessor> quadProcessor(
|
| + QuadEdgeEffect::Make(this->color(), invert, this->usesLocalCoords()));
|
|
|
| // TODO generate all segments for all paths and use one vertex buffer
|
| for (int i = 0; i < instanceCount; i++) {
|
| @@ -924,7 +924,7 @@ private:
|
| const Draw& draw = draws[j];
|
| mesh.initIndexed(kTriangles_GrPrimitiveType, vertexBuffer, indexBuffer,
|
| firstVertex, firstIndex, draw.fVertexCnt, draw.fIndexCnt);
|
| - target->draw(quadProcessor, mesh);
|
| + target->draw(quadProcessor.get(), mesh);
|
| firstVertex += draw.fVertexCnt;
|
| firstIndex += draw.fIndexCnt;
|
| }
|
|
|