diff options
Diffstat (limited to 'src/gpu/ops/GrDrawPathOp.cpp')
-rw-r--r-- | src/gpu/ops/GrDrawPathOp.cpp | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/gpu/ops/GrDrawPathOp.cpp b/src/gpu/ops/GrDrawPathOp.cpp index 1c68fdf8a1..3632787e06 100644 --- a/src/gpu/ops/GrDrawPathOp.cpp +++ b/src/gpu/ops/GrDrawPathOp.cpp @@ -12,13 +12,15 @@ #include "SkTemplates.h" GrDrawPathOpBase::GrDrawPathOpBase(uint32_t classID, const SkMatrix& viewMatrix, GrPaint&& paint, - GrPathRendering::FillType fill, GrAA aa) + GrPathRendering::FillType fill, GrAAType aaType) : INHERITED(classID) , fViewMatrix(viewMatrix) + , fInputColor(paint.getColor()) , fProcessorSet(std::move(paint)) - , fAnalysis(paint.getColor()) , fFillType(fill) - , fAA(aa) {} + , fAAType(aaType) { + SkASSERT(fAAType != GrAAType::kCoverage); +} SkString GrDrawPathOp::dumpInfo() const { SkString string; @@ -38,16 +40,13 @@ void GrDrawPathOpBase::initPipeline(const GrOpFlushState& state, GrPipeline* pip 0xffff>() }; GrPipeline::InitArgs args; - auto analysis = this->processorAnalysis(); args.fProcessors = &this->processors(); - args.fFlags = GrAA::kYes == fAA ? GrPipeline::kHWAntialias_Flag : 0; + args.fFlags = GrAATypeIsHW(fAAType) ? GrPipeline::kHWAntialias_Flag : 0; args.fUserStencil = &kCoverPass; args.fAppliedClip = state.drawOpArgs().fAppliedClip; args.fRenderTarget = state.drawOpArgs().fRenderTarget; args.fCaps = &state.caps(); args.fDstTexture = state.drawOpArgs().fDstTexture; - args.fXPInputColor = analysis.outputColor(); - args.fXPInputCoverage = analysis.outputCoverage(); return pipeline->init(args); } @@ -90,9 +89,9 @@ SkString GrDrawPathRangeOp::dumpInfo() const { GrDrawPathRangeOp::GrDrawPathRangeOp(const SkMatrix& viewMatrix, SkScalar scale, SkScalar x, SkScalar y, GrPaint&& paint, GrPathRendering::FillType fill, - GrAA aa, GrPathRange* range, const InstanceData* instanceData, - const SkRect& bounds) - : INHERITED(ClassID(), viewMatrix, std::move(paint), fill, aa) + GrAAType aaType, GrPathRange* range, + const InstanceData* instanceData, const SkRect& bounds) + : INHERITED(ClassID(), viewMatrix, std::move(paint), fill, aaType) , fPathRange(range) , fTotalPathCount(instanceData->count()) , fScale(scale) { |