Add a .def file for win32 builds (and make check-exports).
Fix LDFLAGS in Makefile.am, so the usual export regexps are used (fixes #573165).
Make sure private marshaller functions aren't exported by prefixing them with __gst;
also rename gst_app_marshal_OBJECT__VOID to _BUFFER__VOID, make it static and add
a comment why we're not using glib-genmarshal for this one.
lib_LTLIBRARIES = libgstapp-@GST_MAJORMINOR@.la
glib_enum_define = GST_APP
-glib_enum_prefix = gst_app
+glib_enum_prefix = __gst_app
include $(top_srcdir)/common/glib-gen.mak
libgstapp_@GST_MAJORMINOR@_la_CFLAGS = $(GST_CFLAGS) $(GST_BASE_CFLAGS) \
$(GST_PLUGINS_BASE_CFLAGS)
libgstapp_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS)
-libgstapp_@GST_MAJORMINOR@_la_LDFLAGS = $(GST_ALL_LDFLAGS)
+libgstapp_@GST_MAJORMINOR@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
libgstapp_@GST_MAJORMINOR@_la_LIBTOOLFLAGS = --tag=disable-static
libgstapp_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/app
GST_BOILERPLATE (GstAppSink, gst_app_sink, GstBaseSink, GST_TYPE_BASE_SINK);
-void
-gst_app_marshal_OBJECT__VOID (GClosure * closure,
+/* Can't use glib-genmarshal for this, as it doesn't know how to handle
+ * GstMiniObject-based types, which are a new fundamental type */
+static void
+gst_app_marshal_BUFFER__VOID (GClosure * closure,
GValue * return_value,
guint n_param_values,
const GValue * param_values,
gpointer invocation_hint, gpointer marshal_data)
{
- typedef GstBuffer *(*GMarshalFunc_OBJECT__VOID) (gpointer data1,
+ typedef GstBuffer *(*GMarshalFunc_BUFFER__VOID) (gpointer data1,
gpointer data2);
- register GMarshalFunc_OBJECT__VOID callback;
+ register GMarshalFunc_BUFFER__VOID callback;
register GCClosure *cc = (GCClosure *) closure;
register gpointer data1, data2;
GstBuffer *v_return;
data2 = closure->data;
}
callback =
- (GMarshalFunc_OBJECT__VOID) (marshal_data ? marshal_data : cc->callback);
+ (GMarshalFunc_BUFFER__VOID) (marshal_data ? marshal_data : cc->callback);
v_return = callback (data1, data2);
gst_app_sink_signals[SIGNAL_PULL_PREROLL] =
g_signal_new ("pull-preroll", G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET (GstAppSinkClass,
- pull_preroll), NULL, NULL, gst_app_marshal_OBJECT__VOID,
+ pull_preroll), NULL, NULL, gst_app_marshal_BUFFER__VOID,
GST_TYPE_BUFFER, 0, G_TYPE_NONE);
/**
* GstAppSink::pull-buffer:
gst_app_sink_signals[SIGNAL_PULL_BUFFER] =
g_signal_new ("pull-buffer", G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET (GstAppSinkClass,
- pull_buffer), NULL, NULL, gst_app_marshal_OBJECT__VOID,
+ pull_buffer), NULL, NULL, gst_app_marshal_BUFFER__VOID,
GST_TYPE_BUFFER, 0, G_TYPE_NONE);
basesink_class->unlock = gst_app_sink_unlock_start;
gst_app_src_signals[SIGNAL_NEED_DATA] =
g_signal_new ("need-data", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstAppSrcClass, need_data),
- NULL, NULL, gst_app_marshal_VOID__UINT, G_TYPE_NONE, 1, G_TYPE_UINT);
+ NULL, NULL, __gst_app_marshal_VOID__UINT, G_TYPE_NONE, 1, G_TYPE_UINT);
/**
* GstAppSrc::enough-data:
gst_app_src_signals[SIGNAL_SEEK_DATA] =
g_signal_new ("seek-data", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstAppSrcClass, seek_data),
- NULL, NULL, gst_app_marshal_BOOLEAN__UINT64, G_TYPE_BOOLEAN, 1,
+ NULL, NULL, __gst_app_marshal_BOOLEAN__UINT64, G_TYPE_BOOLEAN, 1,
G_TYPE_UINT64);
/**
gst_app_src_signals[SIGNAL_PUSH_BUFFER] =
g_signal_new ("push-buffer", G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET (GstAppSrcClass,
- push_buffer), NULL, NULL, gst_app_marshal_ENUM__OBJECT,
+ push_buffer), NULL, NULL, __gst_app_marshal_ENUM__OBJECT,
GST_TYPE_FLOW_RETURN, 1, GST_TYPE_BUFFER);
/**
gst_app_src_signals[SIGNAL_END_OF_STREAM] =
g_signal_new ("end-of-stream", G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET (GstAppSrcClass,
- end_of_stream), NULL, NULL, gst_app_marshal_ENUM__VOID,
+ end_of_stream), NULL, NULL, __gst_app_marshal_ENUM__VOID,
GST_TYPE_FLOW_RETURN, 0, G_TYPE_NONE);
basesrc_class->create = gst_app_src_create;
return protocols;
}
+
static const gchar *
gst_app_src_uri_get_uri (GstURIHandler * handler)
{
--- /dev/null
+EXPORTS
+ gst_app_buffer_get_type
+ gst_app_buffer_new
+ gst_app_sink_get_caps
+ gst_app_sink_get_drop
+ gst_app_sink_get_emit_signals
+ gst_app_sink_get_max_buffers
+ gst_app_sink_get_type
+ gst_app_sink_is_eos
+ gst_app_sink_pull_buffer
+ gst_app_sink_pull_preroll
+ gst_app_sink_set_caps
+ gst_app_sink_set_drop
+ gst_app_sink_set_emit_signals
+ gst_app_sink_set_max_buffers
+ gst_app_src_end_of_stream
+ gst_app_src_get_caps
+ gst_app_src_get_latency
+ gst_app_src_get_max_bytes
+ gst_app_src_get_size
+ gst_app_src_get_stream_type
+ gst_app_src_get_type
+ gst_app_src_push_buffer
+ gst_app_src_set_caps
+ gst_app_src_set_latency
+ gst_app_src_set_max_bytes
+ gst_app_src_set_size
+ gst_app_src_set_stream_type