Add GrGLMakeNativeInterface factory that returns sk_sp<const GrGLInterface>.
Removes the concept of a configurable "default" interface and makes the default
always be the "native" interface.
Also removes unused functions: GrGLInterfaceAddTestDebugMarker and
GrGLInterface::NewClone.
Keeps around legacy GrGLCreateNativeInterface() until clients can be weened.
Change-Id: I4a3bdafa8cf8c68ed13318393abd55686b045ccb
Reviewed-on: https://skia-review.googlesource.com/83000
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
diff --git a/include/gpu/gl/GrGLAssembleInterface.h b/include/gpu/gl/GrGLAssembleInterface.h
index b9881a9..db44ce7 100644
--- a/include/gpu/gl/GrGLAssembleInterface.h
+++ b/include/gpu/gl/GrGLAssembleInterface.h
@@ -9,22 +9,21 @@
typedef GrGLFuncPtr (*GrGLGetProc)(void* ctx, const char name[]);
-
/**
* Generic function for creating a GrGLInterface for an either OpenGL or GLES. It calls
* get() to get each function address. ctx is a generic ptr passed to and interpreted by get().
*/
-SK_API const GrGLInterface* GrGLAssembleInterface(void* ctx, GrGLGetProc get);
+SK_API sk_sp<const GrGLInterface> GrGLAssembleInterface(void* ctx, GrGLGetProc get);
/**
* Generic function for creating a GrGLInterface for an OpenGL (but not GLES) context. It calls
* get() to get each function address. ctx is a generic ptr passed to and interpreted by get().
*/
-SK_API const GrGLInterface* GrGLAssembleGLInterface(void* ctx, GrGLGetProc get);
+SK_API sk_sp<const GrGLInterface> GrGLAssembleGLInterface(void* ctx, GrGLGetProc get);
/**
* Generic function for creating a GrGLInterface for an OpenGL ES (but not Open GL) context. It
* calls get() to get each function address. ctx is a generic ptr passed to and interpreted by
* get().
*/
-SK_API const GrGLInterface* GrGLAssembleGLESInterface(void* ctx, GrGLGetProc get);
+SK_API sk_sp<const GrGLInterface> GrGLAssembleGLESInterface(void* ctx, GrGLGetProc get);