Add utility for creating test-only GrProgramInfos

This is complete overkill for what these GMs require but it will help centralize things.

Change-Id: If30cbd9a9cfc8fcc1fe96fc9ca1b4cb17cdeb4bd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255824
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/tools/gpu/ProxyUtils.h b/tools/gpu/ProxyUtils.h
index ed4c625..28bf011 100644
--- a/tools/gpu/ProxyUtils.h
+++ b/tools/gpu/ProxyUtils.h
@@ -10,8 +10,11 @@
 
 #include "include/private/GrTypesPriv.h"
 #include "src/gpu/GrImageInfo.h"
+#include "src/gpu/GrPipeline.h"
 #include "src/gpu/GrTextureProxy.h"
 
+class GrProgramInfo;
+
 namespace sk_gpu_test {
 
 /** Makes a texture proxy containing the passed in color data. */
@@ -22,6 +25,18 @@
                                                const void* data,
                                                size_t rowBytes);
 
+GrProgramInfo* CreateProgramInfo(const GrCaps*,
+                                 SkArenaAlloc*,
+                                 const GrSurfaceProxyView* dstView,
+                                 GrAppliedClip&&,
+                                 const GrXferProcessor::DstProxyView& dstProxyView,
+                                 GrGeometryProcessor*, SkBlendMode,
+                                 GrPrimitiveType,
+                                 GrPipeline::InputFlags flags = GrPipeline::InputFlags::kNone,
+                                 const GrUserStencilSettings* stencil =
+                                                                &GrUserStencilSettings::kUnused);
+
+
 }  // namespace sk_gpu_test
 
 #endif