Restructure path tessellation shaders
Merges the GrStrokePathShader and GrFillPathShader classes together.
Creates a new base class called GrPathTessellationShader. Now they all
have a uniform color and can all be draw to stencil and color both.
This is necessary cleanup in general, but will also allow us to create
a convex tessellation op that bypasses the stencil buffer.
Bug: skia:10419
Change-Id: Ifc492c94d3de044a36bd9ea95b1d5aa22e007905
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/413696
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/tessellate/GrPathStencilFillOp.h b/src/gpu/tessellate/GrPathStencilFillOp.h
index ee5e0af..f31d416 100644
--- a/src/gpu/tessellate/GrPathStencilFillOp.h
+++ b/src/gpu/tessellate/GrPathStencilFillOp.h
@@ -9,8 +9,8 @@
#define GrPathStencilFillOp_DEFINED
#include "src/gpu/ops/GrDrawOp.h"
-#include "src/gpu/tessellate/GrPathShader.h"
#include "src/gpu/tessellate/GrTessellationPathRenderer.h"
+#include "src/gpu/tessellate/GrTessellationShader.h"
class GrPathTessellator;
@@ -41,7 +41,7 @@
// Chooses the rendering method we will use and creates the corresponding tessellator and
// stencil/fill programs.
- void prePreparePrograms(const GrPathShader::ProgramArgs&, GrAppliedClip&& clip);
+ void prePreparePrograms(const GrTessellationShader::ProgramArgs&, GrAppliedClip&& clip);
void onPrePrepare(GrRecordingContext*, const GrSurfaceProxyView&, GrAppliedClip*,
const GrXferProcessor::DstProxyView&, GrXferBarrierFlags,