gl/display: add get_handle_type
authorMatthew Waters <ystreet00@gmail.com>
Tue, 6 May 2014 07:27:15 +0000 (17:27 +1000)
committerTim-Philipp Müller <tim@centricular.com>
Sat, 9 Dec 2017 19:31:39 +0000 (19:31 +0000)
https://bugzilla.gnome.org/show_bug.cgi?id=729551

gst-libs/gst/gl/gstgldisplay.c
gst-libs/gst/gl/gstgldisplay.h

index 5f5627d..c99c1d2 100644 (file)
@@ -84,7 +84,6 @@ gst_gl_display_init (GstGLDisplay * display)
 {
   display->priv = GST_GL_DISPLAY_GET_PRIVATE (display);
 
-  display->gl_api = GST_GL_API_ANY;
   display->type = GST_GL_DISPLAY_TYPE_ANY;
 
   GST_TRACE ("init %p", display);
@@ -99,13 +98,6 @@ gst_gl_display_init (GstGLDisplay * display)
 static void
 gst_gl_display_finalize (GObject * object)
 {
-  GstGLDisplay *display = GST_GL_DISPLAY (object);
-
-  if (display->context) {
-    gst_object_unref (display->context);
-    display->context = NULL;
-  }
-
   GST_TRACE ("finalize %p", object);
 
   G_OBJECT_CLASS (gst_gl_display_parent_class)->finalize (object);
@@ -184,6 +176,20 @@ gst_gl_display_default_get_handle (GstGLDisplay * display)
 }
 
 /**
+ * gst_gl_display_get_handle_type:
+ * @display: a #GstGLDisplay
+ *
+ * Returns: the #GstGLDisplayType of @display
+ */
+GstGLDisplayType
+gst_gl_display_get_handle_type (GstGLDisplay * display)
+{
+  g_return_val_if_fail (GST_IS_GL_DISPLAY (display), GST_GL_DISPLAY_TYPE_NONE);
+
+  return display->type;
+}
+
+/**
  * gst_context_set_gl_display:
  * @context: a #GstContext
  * @display: resulting #GstGLDisplay
index 0d451f9..095aa80 100644 (file)
@@ -85,8 +85,8 @@ GstGLDisplay *gst_gl_display_new (void);
 #define gst_gl_display_unlock(display)      GST_OBJECT_UNLOCK (display)
 
 GstGLAPI       gst_gl_display_get_gl_api             (GstGLDisplay * display);
-gpointer       gst_gl_display_get_gl_vtable          (GstGLDisplay * display);
-guintptr       gst_gl_display_get_handle             (GstGLDisplay * display);
+guintptr         gst_gl_display_get_handle             (GstGLDisplay * display);
+GstGLDisplayType gst_gl_display_get_handle_type        (GstGLDisplay * display);
 
 #define GST_GL_DISPLAY_CONTEXT_TYPE "gst.gl.GLDisplay"
 void     gst_context_set_gl_display (GstContext * context, GstGLDisplay * display);