Switch GrMeshDrawOp::Target to be the stand alone GrMeshDrawTarget class
The Tessellator classes will survive in the NGA and they use
GrMeshDrawOp::Target - but GrMeshDrawOp will not survive.
This is a prelude to making all the remaining GrOp-derived classes OGA-only.
Bug: skia:11837
Change-Id: I62dc92e5f42d672342113f12dcedf3435fab993f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/419198
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
diff --git a/src/gpu/ops/GrMeshDrawOp.cpp b/src/gpu/ops/GrMeshDrawOp.cpp
index 0e2e923..da42d40 100644
--- a/src/gpu/ops/GrMeshDrawOp.cpp
+++ b/src/gpu/ops/GrMeshDrawOp.cpp
@@ -16,7 +16,7 @@
void GrMeshDrawOp::onPrepare(GrOpFlushState* state) { this->onPrepareDraws(state); }
-void GrMeshDrawOp::createProgramInfo(Target* target) {
+void GrMeshDrawOp::createProgramInfo(GrMeshDrawTarget* target) {
this->createProgramInfo(&target->caps(),
target->allocator(),
target->writeView(),
@@ -52,7 +52,7 @@
//////////////////////////////////////////////////////////////////////////////
-GrMeshDrawOp::PatternHelper::PatternHelper(Target* target, GrPrimitiveType primitiveType,
+GrMeshDrawOp::PatternHelper::PatternHelper(GrMeshDrawTarget* target, GrPrimitiveType primitiveType,
size_t vertexStride, sk_sp<const GrBuffer> indexBuffer,
int verticesPerRepetition, int indicesPerRepetition,
int repeatCount, int maxRepetitions) {
@@ -60,7 +60,7 @@
indicesPerRepetition, repeatCount, maxRepetitions);
}
-void GrMeshDrawOp::PatternHelper::init(Target* target, GrPrimitiveType primitiveType,
+void GrMeshDrawOp::PatternHelper::init(GrMeshDrawTarget* target, GrPrimitiveType primitiveType,
size_t vertexStride, sk_sp<const GrBuffer> indexBuffer,
int verticesPerRepetition, int indicesPerRepetition,
int repeatCount, int maxRepetitions) {
@@ -87,12 +87,13 @@
firstVertex);
}
-void GrMeshDrawOp::PatternHelper::recordDraw(Target* target, const GrGeometryProcessor* gp) const {
+void GrMeshDrawOp::PatternHelper::recordDraw(GrMeshDrawTarget* target,
+ const GrGeometryProcessor* gp) const {
target->recordDraw(gp, fMesh, 1, fPrimitiveType);
}
void GrMeshDrawOp::PatternHelper::recordDraw(
- Target* target,
+ GrMeshDrawTarget* target,
const GrGeometryProcessor* gp,
const GrSurfaceProxy* const primProcProxies[]) const {
target->recordDraw(gp, fMesh, 1, primProcProxies, fPrimitiveType);
@@ -100,7 +101,9 @@
//////////////////////////////////////////////////////////////////////////////
-GrMeshDrawOp::QuadHelper::QuadHelper(Target* target, size_t vertexStride, int quadsToDraw) {
+GrMeshDrawOp::QuadHelper::QuadHelper(GrMeshDrawTarget* target,
+ size_t vertexStride,
+ int quadsToDraw) {
sk_sp<const GrGpuBuffer> indexBuffer = target->resourceProvider()->refNonAAQuadIndexBuffer();
if (!indexBuffer) {
SkDebugf("Could not get quad index buffer.");