add API for Op creation

Introduce three calls on GrOp: Make, MakeWithExtraMemory,
and MakeWithProcessorSet. Instead of returning
unique_ptr<GrOp>, they return a type of GrOp::OpOwner.
GrOp::OpOwner safely deletes the op when it goes out
of scope for either new/delete or GrOpMemoryPool
allocations.

In order to make the code easier to refactor, I
eliminated MakeArg from the helpers.

Change-Id: Icfd697906f3147a8734575d08bd7195e7517383a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/323778
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Herb Derby <herb@google.com>
diff --git a/src/gpu/GrOnFlushResourceProvider.cpp b/src/gpu/GrOnFlushResourceProvider.cpp
index cca7a5e..4ac8538 100644
--- a/src/gpu/GrOnFlushResourceProvider.cpp
+++ b/src/gpu/GrOnFlushResourceProvider.cpp
@@ -139,8 +139,8 @@
     return fDrawingMgr->getContext()->priv().caps();
 }
 
-GrOpMemoryPool* GrOnFlushResourceProvider::opMemoryPool() const {
-    return fDrawingMgr->getContext()->priv().opMemoryPool();
+GrRecordingContext* GrOnFlushResourceProvider::recordingContext() const {
+    return fDrawingMgr->getContext();
 }
 
 void GrOnFlushResourceProvider::printWarningMessage(const char* msg) const {