summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Waters <matthew@centricular.com>2015-09-26 19:19:50 +1000
committerMatthew Waters <matthew@centricular.com>2015-09-28 16:44:05 +1000
commit27422da0569b448c7db6a65b79e79bd0862d5b29 (patch)
tree497dd881b058e67373964638849ec7ad3db42b72
parent0e18ae586b10a26409ec2fb14fc65903a5d6fe2d (diff)
downloadgstreamer-plugins-bad-27422da0569b448c7db6a65b79e79bd0862d5b29.tar.gz
glwindow: remove unused draw_unlocked function
The functionality is provided by draw anyway and is leftover from X11's specific threading requirements that no longer apply.
-rw-r--r--docs/libs/gst-plugins-bad-libs-sections.txt1
-rw-r--r--gst-libs/gst/gl/android/gstglwindow_android_egl.c2
-rw-r--r--gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m1
-rw-r--r--gst-libs/gst/gl/eagl/gstglwindow_eagl.m1
-rw-r--r--gst-libs/gst/gl/gstglwindow.c24
-rw-r--r--gst-libs/gst/gl/gstglwindow.h3
-rw-r--r--gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c2
-rw-r--r--gst-libs/gst/gl/win32/gstglwindow_win32.c1
-rw-r--r--gst-libs/gst/gl/x11/gstglwindow_x11.c52
9 files changed, 20 insertions, 67 deletions
diff --git a/docs/libs/gst-plugins-bad-libs-sections.txt b/docs/libs/gst-plugins-bad-libs-sections.txt
index 3b7cc0549..94c4aa8e0 100644
--- a/docs/libs/gst-plugins-bad-libs-sections.txt
+++ b/docs/libs/gst-plugins-bad-libs-sections.txt
@@ -1274,7 +1274,6 @@ GstGLWindow
GstGLWindowClass
gst_gl_window_new
gst_gl_window_draw
-gst_gl_window_draw_unlocked
gst_gl_window_is_running
gst_gl_window_quit
gst_gl_window_run
diff --git a/gst-libs/gst/gl/android/gstglwindow_android_egl.c b/gst-libs/gst/gl/android/gstglwindow_android_egl.c
index 983775613..798a80036 100644
--- a/gst-libs/gst/gl/android/gstglwindow_android_egl.c
+++ b/gst-libs/gst/gl/android/gstglwindow_android_egl.c
@@ -57,8 +57,6 @@ gst_gl_window_android_egl_class_init (GstGLWindowAndroidEGLClass * klass)
GST_DEBUG_FUNCPTR (gst_gl_window_android_egl_get_window_handle);
window_class->set_window_handle =
GST_DEBUG_FUNCPTR (gst_gl_window_android_egl_set_window_handle);
- window_class->draw_unlocked =
- GST_DEBUG_FUNCPTR (gst_gl_window_android_egl_draw);
window_class->draw = GST_DEBUG_FUNCPTR (gst_gl_window_android_egl_draw);
}
diff --git a/gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m b/gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m
index 9c37e6c53..0d027c5a1 100644
--- a/gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m
+++ b/gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m
@@ -106,7 +106,6 @@ gst_gl_window_cocoa_class_init (GstGLWindowCocoaClass * klass)
GST_DEBUG_FUNCPTR (gst_gl_window_cocoa_get_window_handle);
window_class->set_window_handle =
GST_DEBUG_FUNCPTR (gst_gl_window_cocoa_set_window_handle);
- window_class->draw_unlocked = GST_DEBUG_FUNCPTR (gst_gl_window_cocoa_draw);
window_class->draw = GST_DEBUG_FUNCPTR (gst_gl_window_cocoa_draw);
window_class->set_preferred_size =
GST_DEBUG_FUNCPTR (gst_gl_window_cocoa_set_preferred_size);
diff --git a/gst-libs/gst/gl/eagl/gstglwindow_eagl.m b/gst-libs/gst/gl/eagl/gstglwindow_eagl.m
index dfd889fa8..eb9d4f7f4 100644
--- a/gst-libs/gst/gl/eagl/gstglwindow_eagl.m
+++ b/gst-libs/gst/gl/eagl/gstglwindow_eagl.m
@@ -69,7 +69,6 @@ gst_gl_window_eagl_class_init (GstGLWindowEaglClass * klass)
GST_DEBUG_FUNCPTR (gst_gl_window_eagl_get_window_handle);
window_class->set_window_handle =
GST_DEBUG_FUNCPTR (gst_gl_window_eagl_set_window_handle);
- window_class->draw_unlocked = GST_DEBUG_FUNCPTR (gst_gl_window_eagl_draw);
window_class->draw = GST_DEBUG_FUNCPTR (gst_gl_window_eagl_draw);
window_class->set_preferred_size =
GST_DEBUG_FUNCPTR (gst_gl_window_eagl_set_preferred_size);
diff --git a/gst-libs/gst/gl/gstglwindow.c b/gst-libs/gst/gl/gstglwindow.c
index 4f27cd000..8e049cab1 100644
--- a/gst-libs/gst/gl/gstglwindow.c
+++ b/gst-libs/gst/gl/gstglwindow.c
@@ -209,7 +209,6 @@ gst_gl_window_class_init (GstGLWindowClass * klass)
klass->close = GST_DEBUG_FUNCPTR (gst_gl_window_default_close);
klass->run = GST_DEBUG_FUNCPTR (gst_gl_window_default_run);
klass->quit = GST_DEBUG_FUNCPTR (gst_gl_window_default_quit);
- klass->draw_unlocked = GST_DEBUG_FUNCPTR (gst_gl_window_default_draw);
klass->draw = GST_DEBUG_FUNCPTR (gst_gl_window_default_draw);
klass->send_message = GST_DEBUG_FUNCPTR (gst_gl_window_default_send_message);
klass->send_message_async =
@@ -462,29 +461,6 @@ gst_gl_window_default_draw (GstGLWindow * window)
gst_gl_window_send_message (window, (GstGLWindowCB) draw_cb, window);
}
-
-/**
- * gst_gl_window_draw_unlocked:
- * @window: a #GstGLWindow
- *
- * Redraw the window contents. Implementations should invoke the draw callback.
- *
- * Since: 1.4
- */
-void
-gst_gl_window_draw_unlocked (GstGLWindow * window)
-{
- GstGLWindowClass *window_class;
-
- g_return_if_fail (GST_GL_IS_WINDOW (window));
- window_class = GST_GL_WINDOW_GET_CLASS (window);
- g_return_if_fail (window_class->draw_unlocked != NULL);
-
- window_class->draw_unlocked (window);
-
- window->queue_resize = FALSE;
-}
-
/**
* gst_gl_window_draw:
* @window: a #GstGLWindow
diff --git a/gst-libs/gst/gl/gstglwindow.h b/gst-libs/gst/gl/gstglwindow.h
index e4781c7b9..a45ac5e46 100644
--- a/gst-libs/gst/gl/gstglwindow.h
+++ b/gst-libs/gst/gl/gstglwindow.h
@@ -108,7 +108,6 @@ struct _GstGLWindow {
* @set_window_handle: Set a window to render into
* @get_window_handle: Gets the current window that this #GstGLWindow is
* rendering into
- * @draw_unlocked: redraw the window with the specified dimensions
* @draw: redraw the window with the specified dimensions
* @run: run the mainloop
* @quit: send a quit to the mainloop
@@ -131,7 +130,6 @@ struct _GstGLWindowClass {
guintptr (*get_display) (GstGLWindow *window);
void (*set_window_handle) (GstGLWindow *window, guintptr id);
guintptr (*get_window_handle) (GstGLWindow *window);
- void (*draw_unlocked) (GstGLWindow *window);
void (*draw) (GstGLWindow *window);
void (*run) (GstGLWindow *window);
void (*quit) (GstGLWindow *window);
@@ -216,7 +214,6 @@ void gst_gl_window_send_mouse_event (GstGLWindow * window,
/* surfaces/rendering */
void gst_gl_window_queue_resize (GstGLWindow *window);
-void gst_gl_window_draw_unlocked (GstGLWindow *window);
void gst_gl_window_draw (GstGLWindow *window);
void gst_gl_window_show (GstGLWindow *window);
void gst_gl_window_set_preferred_size (GstGLWindow * window,
diff --git a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c
index b34ad4239..6e1f0c5b8 100644
--- a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c
+++ b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c
@@ -334,8 +334,6 @@ gst_gl_window_wayland_egl_class_init (GstGLWindowWaylandEGLClass * klass)
GST_DEBUG_FUNCPTR (gst_gl_window_wayland_egl_get_window_handle);
window_class->set_window_handle =
GST_DEBUG_FUNCPTR (gst_gl_window_wayland_egl_set_window_handle);
- window_class->draw_unlocked =
- GST_DEBUG_FUNCPTR (gst_gl_window_wayland_egl_draw);
window_class->show = GST_DEBUG_FUNCPTR (gst_gl_window_wayland_egl_show);
window_class->draw = GST_DEBUG_FUNCPTR (gst_gl_window_wayland_egl_draw);
window_class->close = GST_DEBUG_FUNCPTR (gst_gl_window_wayland_egl_close);
diff --git a/gst-libs/gst/gl/win32/gstglwindow_win32.c b/gst-libs/gst/gl/win32/gstglwindow_win32.c
index a2ed3e677..1ff18bbad 100644
--- a/gst-libs/gst/gl/win32/gstglwindow_win32.c
+++ b/gst-libs/gst/gl/win32/gstglwindow_win32.c
@@ -74,7 +74,6 @@ gst_gl_window_win32_class_init (GstGLWindowWin32Class * klass)
window_class->set_window_handle =
GST_DEBUG_FUNCPTR (gst_gl_window_win32_set_window_handle);
- window_class->draw_unlocked = GST_DEBUG_FUNCPTR (gst_gl_window_win32_draw);
window_class->draw = GST_DEBUG_FUNCPTR (gst_gl_window_win32_draw);
window_class->get_display =
GST_DEBUG_FUNCPTR (gst_gl_window_win32_get_display);
diff --git a/gst-libs/gst/gl/x11/gstglwindow_x11.c b/gst-libs/gst/gl/x11/gstglwindow_x11.c
index 29c2aead4..f9fc4da80 100644
--- a/gst-libs/gst/gl/x11/gstglwindow_x11.c
+++ b/gst-libs/gst/gl/x11/gstglwindow_x11.c
@@ -74,7 +74,6 @@ guintptr gst_gl_window_x11_get_window_handle (GstGLWindow * window);
static void gst_gl_window_x11_set_preferred_size (GstGLWindow * window,
gint width, gint height);
void gst_gl_window_x11_show (GstGLWindow * window);
-void gst_gl_window_x11_draw_unlocked (GstGLWindow * window);
void gst_gl_window_x11_draw (GstGLWindow * window);
gboolean gst_gl_window_x11_create_context (GstGLWindow * window,
GstGLAPI gl_api, guintptr external_gl_context, GError ** error);
@@ -104,8 +103,6 @@ gst_gl_window_x11_class_init (GstGLWindowX11Class * klass)
GST_DEBUG_FUNCPTR (gst_gl_window_x11_set_window_handle);
window_class->get_window_handle =
GST_DEBUG_FUNCPTR (gst_gl_window_x11_get_window_handle);
- window_class->draw_unlocked =
- GST_DEBUG_FUNCPTR (gst_gl_window_x11_draw_unlocked);
window_class->draw = GST_DEBUG_FUNCPTR (gst_gl_window_x11_draw);
window_class->open = GST_DEBUG_FUNCPTR (gst_gl_window_x11_open);
window_class->close = GST_DEBUG_FUNCPTR (gst_gl_window_x11_close);
@@ -387,39 +384,13 @@ gst_gl_window_x11_show (GstGLWindow * window)
gst_gl_window_send_message (window, (GstGLWindowCB) _show_window, window);
}
-/* Called in the gl thread */
-void
-gst_gl_window_x11_draw_unlocked (GstGLWindow * window)
-{
- GstGLWindowX11 *window_x11 = GST_GL_WINDOW_X11 (window);
-
- if (gst_gl_window_is_running (GST_GL_WINDOW (window_x11))
- && window_x11->allow_extra_expose_events) {
- if (window->queue_resize) {
- guint width, height;
-
- gst_gl_window_get_surface_dimensions (window, &width, &height);
- gst_gl_window_resize (window, width, height);
- }
-
- if (window->draw) {
- GstGLContext *context = gst_gl_window_get_context (window);
- GstGLContextClass *context_class = GST_GL_CONTEXT_GET_CLASS (context);
-
- window->draw (window->draw_data);
- context_class->swap_buffers (context);
-
- gst_object_unref (context);
- }
- }
-}
-
static void
draw_cb (gpointer data)
{
GstGLWindowX11 *window_x11 = data;
+ GstGLWindow *window = GST_GL_WINDOW (window_x11);
- if (gst_gl_window_is_running (GST_GL_WINDOW (window_x11))) {
+ if (gst_gl_window_is_running (window)) {
XWindowAttributes attr;
XGetWindowAttributes (window_x11->device, window_x11->internal_win_id,
@@ -443,7 +414,24 @@ draw_cb (gpointer data)
}
}
- gst_gl_window_x11_draw_unlocked (GST_GL_WINDOW (window_x11));
+ if (window_x11->allow_extra_expose_events) {
+ if (window->queue_resize) {
+ guint width, height;
+
+ gst_gl_window_get_surface_dimensions (window, &width, &height);
+ gst_gl_window_resize (window, width, height);
+ }
+
+ if (window->draw) {
+ GstGLContext *context = gst_gl_window_get_context (window);
+ GstGLContextClass *context_class = GST_GL_CONTEXT_GET_CLASS (context);
+
+ window->draw (window->draw_data);
+ context_class->swap_buffers (context);
+
+ gst_object_unref (context);
+ }
+ }
}
}