mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
removed cothread-specific code from gstinfo.c because the new cothreads has no cothread_self()
Original commit message from CVS: * removed cothread-specific code from gstinfo.c because the new cothreads has no cothread_self() * added a new scheduler, untested but it does compile :-) * cothreads links to the scheduler, not core now * no installation of cothreads headers
This commit is contained in:
parent
767d5c53a7
commit
8af369ecf6
7 changed files with 1337 additions and 9 deletions
|
@ -107,7 +107,6 @@ distclean-local:
|
|||
|
||||
libgstreamerincludedir = $(includedir)/gstreamer
|
||||
libgstreamerinclude_HEADERS = \
|
||||
cothreads.h \
|
||||
gst.h \
|
||||
gstconfig.h \
|
||||
gstmarshal.h \
|
||||
|
@ -158,7 +157,7 @@ libgstreamer_la_CFLAGS = -D_GNU_SOURCE -DGST_CONFIG_DIR=\""$(GST_CONFIG_DIR)"\"
|
|||
# the compiler shoots cothreads.c in the head at -O6
|
||||
libcothreads_la_CFLAGS = $(libgstreamer_la_CFLAGS) -O2
|
||||
|
||||
libgstreamer_la_LIBADD = $(LIBGST_LIBS) libcothreads.la
|
||||
libgstreamer_la_LIBADD = $(LIBGST_LIBS)
|
||||
libgstreamer_la_LDFLAGS = @GST_LT_LDFLAGS@ -version-info @GST_LIBVERSION@
|
||||
|
||||
EXTRA_DIST = ROADMAP
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
*/
|
||||
|
||||
#include <gst/gst.h>
|
||||
#include "../cothreads.h"
|
||||
|
||||
GstElementDetails gst_autoplugcache_details = {
|
||||
"AutoplugCache",
|
||||
|
@ -235,7 +236,7 @@ gst_autoplugcache_loop (GstElement *element)
|
|||
if (GST_STATE(cache) != oldstate) {
|
||||
gst_object_ref (GST_OBJECT (cache));
|
||||
GST_DEBUG(GST_CAT_AUTOPLUG, "state changed during signal, aborting\n");
|
||||
cothread_switch(cothread_current_main());
|
||||
gst_element_yield (cache);
|
||||
}
|
||||
gst_object_unref (GST_OBJECT (cache));
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include "gst_private.h"
|
||||
#include "gstelement.h"
|
||||
#include "gstpad.h"
|
||||
#include "gstscheduler.h"
|
||||
|
||||
#if defined __sgi__
|
||||
#include <rld_interface.h>
|
||||
|
@ -188,7 +189,7 @@ gst_default_debug_handler (gint category, gboolean incore,
|
|||
gchar *empty = "";
|
||||
gchar *elementname = empty,*location = empty;
|
||||
int pthread_id = getpid();
|
||||
int cothread_id = cothread_getcurrent();
|
||||
int cothread_id = 0; /*FIXME*/
|
||||
#ifdef GST_DEBUG_COLOR
|
||||
int pthread_color = pthread_id%6 + 31;
|
||||
int cothread_color = (cothread_id < 0) ? 37 : (cothread_id%6 + 31);
|
||||
|
@ -306,7 +307,7 @@ gst_default_info_handler (gint category, gboolean incore,
|
|||
gchar *empty = "";
|
||||
gchar *elementname = empty,*location = empty;
|
||||
int pthread_id = getpid();
|
||||
int cothread_id = cothread_getcurrent();
|
||||
int cothread_id = 0; /*FIXME*/
|
||||
#ifdef GST_DEBUG_COLOR
|
||||
int pthread_color = pthread_id%6 + 31;
|
||||
int cothread_color = (cothread_id < 0) ? 37 : (cothread_id%6 + 31);
|
||||
|
|
|
@ -31,8 +31,6 @@
|
|||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include "cothreads.h"
|
||||
|
||||
|
||||
/***** are we in the core or not? *****/
|
||||
#ifdef __GST_PRIVATE_H__
|
||||
|
|
|
@ -1,8 +1,13 @@
|
|||
plugindir = $(libdir)/gst
|
||||
|
||||
plugin_LTLIBRARIES = libgstbasicscheduler.la
|
||||
plugin_LTLIBRARIES = libgstbasicscheduler.la libgststandardscheduler.la
|
||||
|
||||
libgstbasicscheduler_la_SOURCES = gstbasicscheduler.c
|
||||
libgstbasicscheduler_la_CFLAGS = $(GST_CFLAGS)
|
||||
libgstbasicscheduler_la_LIBADD = $(GST_LIBS)
|
||||
libgstbasicscheduler_la_LIBADD = $(GST_LIBS) ../libcothreads.la
|
||||
libgstbasicscheduler_la_LDFLAGS = @GST_LT_LDFLAGS@
|
||||
|
||||
libgststandardscheduler_la_SOURCES = gststandardscheduler.c
|
||||
libgststandardscheduler_la_CFLAGS = $(GST_CFLAGS) -I$(top_srcdir)/libs/ext/cothreads
|
||||
libgststandardscheduler_la_LIBADD = $(GST_LIBS) $(top_builddir)/libs/ext/cothreads/cothreads/libcothreads-gthreads.la
|
||||
libgststandardscheduler_la_LDFLAGS = @GST_LT_LDFLAGS@
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
|
||||
/*#define GST_DEBUG_ENABLED */
|
||||
#include <gst/gst.h>
|
||||
#include <../cothreads.h>
|
||||
|
||||
typedef struct _GstSchedulerChain GstSchedulerChain;
|
||||
|
||||
|
|
1323
gst/schedulers/gststandardscheduler.c
Normal file
1323
gst/schedulers/gststandardscheduler.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue