Bring all the other stuff in gst/ up to match libgst.la's GObject port.

Original commit message from CVS:
Bring all the other stuff in gst/ up to match libgst.la's GObject port.
Fixed some minor problems with the signalling stuff in the core.

IT WORKS!
This commit is contained in:
Erik Walthinsen 2001-06-14 03:14:35 +00:00
parent bfc4e58e6d
commit 5dcec92852
71 changed files with 1301 additions and 1264 deletions

View file

@ -15,6 +15,8 @@ EXTRA_libgst_la_SOURCES = \
libgst_la_SOURCES = \
cothreads.c \
gst.c \
gstobject.c \
gstmarshal.c \
gstautoplug.c \
gstbin.c \
gstbuffer.c \
@ -27,7 +29,6 @@ libgst_la_SOURCES = \
gstextratypes.c \
gstinfo.c \
gstmeta.c \
gstobject.c \
gstpad.c \
gstpipeline.c \
gstplugin.c \

View file

@ -41,7 +41,7 @@ void have_type(GstElement *element, GstCaps *caps, GstCaps **private_caps) {
gst_bin_add(GST_BIN(autobin),sink);
gst_element_connect(decoder,"src",sink,"sink");
gtk_object_set (GTK_OBJECT(cache), "reset", TRUE, NULL);
g_object_set (G_OBJECT(cache), "reset", TRUE, NULL);
gst_element_connect(cache,"src",decoder,"sink");
}
@ -52,7 +52,7 @@ void have_type(GstElement *element, GstCaps *caps, GstCaps **private_caps) {
gst_bin_add(GST_BIN(autobin),sink);
gst_element_connect(decoder,"src",sink,"sink");
gtk_object_set (GTK_OBJECT(cache), "reset", TRUE, NULL);
g_object_set (G_OBJECT(cache), "reset", TRUE, NULL);
gst_element_connect(cache,"src",decoder,"sink");
}
@ -68,14 +68,14 @@ int main (int argc,char *argv[]) {
pipeline = gst_pipeline_new("pipeline");
src = gst_elementfactory_make ("disksrc","src");
gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL);
g_object_set(G_OBJECT(src),"location",argv[1],NULL);
gst_bin_add (GST_BIN(pipeline),src);
autobin = gst_bin_new("autobin");
cache = gst_elementfactory_make ("autoplugcache","cache");
gtk_signal_connect (GTK_OBJECT(cache),"cache_empty",GTK_SIGNAL_FUNC(cache_empty),NULL);
g_signal_connectc (G_OBJECT(cache),"cache_empty",cache_empty,NULL,FALSE);
typefind = gst_elementfactory_make ("typefind", "typefind");
gtk_signal_connect (GTK_OBJECT(typefind),"have_type",GTK_SIGNAL_FUNC(have_type),&caps);
g_signal_connectc (G_OBJECT(typefind),"have_type",have_type,&caps,FALSE);
gst_bin_add (GST_BIN(autobin),cache);
gst_bin_add (GST_BIN(autobin),typefind);
gst_element_connect(cache,"src",typefind,"sink");

View file

@ -33,13 +33,13 @@ GstElementDetails gst_autoplugcache_details = {
#define GST_TYPE_AUTOPLUGCACHE \
(gst_autoplugcache_get_type())
#define GST_AUTOPLUGCACHE(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_AUTOPLUGCACHE,GstAutoplugCache))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_AUTOPLUGCACHE,GstAutoplugCache))
#define GST_AUTOPLUGCACHE_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_AUTOPLUGCACHE,GstAutoplugCacheClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUTOPLUGCACHE,GstAutoplugCacheClass))
#define GST_IS_AUTOPLUGCACHE(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_AUTOPLUGCACHE))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUTOPLUGCACHE))
#define GST_IS_AUTOPLUGCACHE_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_AUTOPLUGCACHE))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUTOPLUGCACHE))
typedef struct _GstAutoplugCache GstAutoplugCache;
typedef struct _GstAutoplugCacheClass GstAutoplugCacheClass;
@ -85,8 +85,8 @@ enum {
static void gst_autoplugcache_class_init (GstAutoplugCacheClass *klass);
static void gst_autoplugcache_init (GstAutoplugCache *cache);
static void gst_autoplugcache_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_autoplugcache_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_autoplugcache_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_autoplugcache_get_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_autoplugcache_loop (GstElement *element);
@ -98,22 +98,23 @@ static GstElementStateReturn gst_autoplugcache_change_state (GstElement *element
static GstElementClass *parent_class = NULL;
static guint gst_autoplugcache_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_autoplugcache_get_type(void) {
static GtkType autoplugcache_type = 0;
static GType autoplugcache_type = 0;
if (!autoplugcache_type) {
static const GtkTypeInfo autoplugcache_info = {
"GstAutoplugCache",
sizeof(GstAutoplugCache),
static const GTypeInfo autoplugcache_info = {
sizeof(GstAutoplugCacheClass),
(GtkClassInitFunc)gst_autoplugcache_class_init,
(GtkObjectInitFunc)gst_autoplugcache_init,
(GtkArgSetFunc)gst_autoplugcache_set_arg,
(GtkArgGetFunc)gst_autoplugcache_get_arg,
(GtkClassInitFunc)NULL,
NULL,
NULL,
(GClassInitFunc)gst_autoplugcache_class_init,
NULL,
NULL,
sizeof(GstAutoplugCache),
0,
(GInstanceInitFunc)gst_autoplugcache_init,
};
autoplugcache_type = gtk_type_unique (GST_TYPE_ELEMENT, &autoplugcache_info);
autoplugcache_type = g_type_register_static (GST_TYPE_ELEMENT, "GstAutoplugCache", &autoplugcache_info, 0);
}
return autoplugcache_type;
}
@ -121,34 +122,36 @@ gst_autoplugcache_get_type(void) {
static void
gst_autoplugcache_class_init (GstAutoplugCacheClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gst_autoplugcache_signals[FIRST_BUFFER] =
gtk_signal_new ("first_buffer", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstAutoplugCacheClass, first_buffer),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
g_signal_newc ("first_buffer", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstAutoplugCacheClass, first_buffer), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gst_autoplugcache_signals[CACHE_EMPTY] =
gtk_signal_new ("cache_empty", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstAutoplugCacheClass, cache_empty),
gtk_marshal_NONE__NONE, GTK_TYPE_NONE, 0);
gtk_object_class_add_signals (gtkobject_class, gst_autoplugcache_signals, LAST_SIGNAL);
g_signal_newc ("cache_empty", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstAutoplugCacheClass, cache_empty), NULL, NULL,
g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
gtk_object_add_arg_type ("GstAutoplugCache::buffer_count", GTK_TYPE_INT,
GTK_ARG_READABLE, ARG_BUFFER_COUNT);
gtk_object_add_arg_type ("GstAutoplugCache::caps_proxy", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_CAPS_PROXY);
gtk_object_add_arg_type ("GstAutoplugCache::reset", GTK_TYPE_BOOL,
GTK_ARG_WRITABLE, ARG_RESET);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BUFFER_COUNT,
g_param_spec_enum("buffer_count","buffer_count","buffer_count",
G_TYPE_INT,0,G_PARAM_READABLE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_CAPS_PROXY,
g_param_spec_boolean("caps_proxy","caps_proxy","caps_proxy",
FALSE,G_PARAM_READWRITE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_RESET,
g_param_spec_boolean("reset","reset","reset",
FALSE,G_PARAM_WRITABLE)); // CHECKME!
gtkobject_class->set_arg = gst_autoplugcache_set_arg;
gtkobject_class->get_arg = gst_autoplugcache_get_arg;
gobject_class->set_property = gst_autoplugcache_set_property;
gobject_class->get_property = gst_autoplugcache_get_property;
gstelement_class->change_state = gst_autoplugcache_change_state;
}
@ -193,7 +196,7 @@ gst_autoplugcache_loop (GstElement *element)
* buffer, i.e. the end of the list.
* If the playout pointer does not have a prev (towards the most recent) buffer
* (== NULL), a buffer must be pulled from the sink pad and added to the cache.
* When the playout pointer gets reset (as in a set_arg), the cache is walked
* When the playout pointer gets reset (as in a set_property), the cache is walked
* without problems, because the playout pointer has a non-NULL next. When
* the playout pointer hits the end of cache again it has to start pulling.
*/
@ -212,7 +215,7 @@ gst_autoplugcache_loop (GstElement *element)
// set the current_playout pointer
cache->current_playout = cache->cache;
gtk_signal_emit (GTK_OBJECT(cache), gst_autoplugcache_signals[FIRST_BUFFER], buf);
g_signal_emit (G_OBJECT(cache), gst_autoplugcache_signals[FIRST_BUFFER], 0, buf);
// send the buffer on its way
gst_pad_push (cache->srcpad, buf);
@ -226,7 +229,7 @@ gst_autoplugcache_loop (GstElement *element)
int oldstate = GST_STATE(cache);
GST_DEBUG(0,"at front of cache, about to pull, but firing signal\n");
gst_object_ref (GST_OBJECT (cache));
gtk_signal_emit (GTK_OBJECT(cache), gst_autoplugcache_signals[CACHE_EMPTY], NULL);
g_signal_emit (G_OBJECT(cache), gst_autoplugcache_signals[CACHE_EMPTY], 0, NULL);
if (GST_STATE(cache) != oldstate) {
gst_object_ref (GST_OBJECT (cache));
GST_DEBUG(GST_CAT_AUTOPLUG, "state changed during signal, aborting\n");
@ -256,7 +259,7 @@ gst_autoplugcache_loop (GstElement *element)
cache->current_playout = g_list_previous (cache->current_playout);
if (cache->fire_first) {
gtk_signal_emit (GTK_OBJECT(cache), gst_autoplugcache_signals[FIRST_BUFFER], buf);
g_signal_emit (G_OBJECT(cache), gst_autoplugcache_signals[FIRST_BUFFER], 0, buf);
cache->fire_first = FALSE;
}
@ -294,15 +297,15 @@ gst_autoplugcache_change_state (GstElement *element)
}
static void
gst_autoplugcache_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_autoplugcache_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstAutoplugCache *cache;
cache = GST_AUTOPLUGCACHE (object);
switch (id) {
switch (prop_id) {
case ARG_CAPS_PROXY:
cache->caps_proxy = GTK_VALUE_BOOL(*arg);
cache->caps_proxy = g_value_get_boolean (value);
GST_DEBUG(0,"caps_proxy is %d\n",cache->caps_proxy);
if (cache->caps_proxy) {
gst_pad_set_negotiate_function (cache->sinkpad, GST_DEBUG_FUNCPTR(gst_autoplugcache_nego_sink));
@ -314,7 +317,7 @@ GST_DEBUG(0,"caps_proxy is %d\n",cache->caps_proxy);
break;
case ARG_RESET:
// no idea why anyone would set this to FALSE, but just in case ;-)
if (GTK_VALUE_BOOL(*arg)) {
if (g_value_get_boolean (value)) {
GST_DEBUG(0,"resetting playout pointer\n");
// reset the playout pointer to the begining again
cache->current_playout = cache->cache_start;
@ -330,20 +333,20 @@ GST_DEBUG(0,"caps_proxy is %d\n",cache->caps_proxy);
}
static void
gst_autoplugcache_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_autoplugcache_get_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstAutoplugCache *cache;
cache = GST_AUTOPLUGCACHE (object);
switch (id) {
switch (prop_id) {
case ARG_BUFFER_COUNT:
GTK_VALUE_INT(*arg) = cache->buffer_count;
g_value_set_int (value, cache->buffer_count);
break;
case ARG_CAPS_PROXY:
GTK_VALUE_BOOL(*arg) = cache->caps_proxy;
g_value_set_boolean (value, cache->caps_proxy);
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -33,13 +33,13 @@ GstElementDetails gst_autoplugger_details = {
#define GST_TYPE_AUTOPLUGGER \
(gst_autoplugger_get_type())
#define GST_AUTOPLUGGER(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_AUTOPLUGGER,GstAutoplugger))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_AUTOPLUGGER,GstAutoplugger))
#define GST_AUTOPLUGGER_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_AUTOPLUGGER,GstAutopluggerClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUTOPLUGGER,GstAutopluggerClass))
#define GST_IS_AUTOPLUGGER(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_AUTOPLUGGER))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUTOPLUGGER))
#define GST_IS_AUTOPLUGGER_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_AUTOPLUGGER))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUTOPLUGGER))
typedef struct _GstAutoplugger GstAutoplugger;
typedef struct _GstAutopluggerClass GstAutopluggerClass;
@ -84,8 +84,8 @@ enum {
static void gst_autoplugger_class_init (GstAutopluggerClass *klass);
static void gst_autoplugger_init (GstAutoplugger *queue);
static void gst_autoplugger_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_autoplugger_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_autoplugger_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_autoplugger_get_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
//static GstElementStateReturn gst_autoplugger_change_state (GstElement *element);
@ -104,22 +104,23 @@ static void gst_autoplugger_typefind_have_type (GstElement *element, GstCaps *c
static GstElementClass *parent_class = NULL;
//static guint gst_autoplugger_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_autoplugger_get_type(void) {
static GtkType autoplugger_type = 0;
static GType autoplugger_type = 0;
if (!autoplugger_type) {
static const GtkTypeInfo autoplugger_info = {
"GstAutoplugger",
sizeof(GstAutoplugger),
static const GTypeInfo autoplugger_info = {
sizeof(GstAutopluggerClass),
(GtkClassInitFunc)gst_autoplugger_class_init,
(GtkObjectInitFunc)gst_autoplugger_init,
(GtkArgSetFunc)gst_autoplugger_set_arg,
(GtkArgGetFunc)gst_autoplugger_get_arg,
(GtkClassInitFunc)NULL,
NULL,
NULL,
(GClassInitFunc)gst_autoplugger_class_init,
NULL,
NULL,
sizeof(GstAutoplugger),
0,
(GInstanceInitFunc)gst_autoplugger_init,
};
autoplugger_type = gtk_type_unique (GST_TYPE_BIN, &autoplugger_info);
autoplugger_type = g_type_register_static (GST_TYPE_BIN, "GstAutoplugger", &autoplugger_info, 0);
}
return autoplugger_type;
}
@ -127,31 +128,32 @@ gst_autoplugger_get_type(void) {
static void
gst_autoplugger_class_init (GstAutopluggerClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
/*
gst_autoplugger_signals[_EMPTY] =
gtk_signal_new ("_empty", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstAutopluggerClass, _empty),
gtk_marshal_NONE__NONE, GTK_TYPE_NONE, 0);
gtk_object_class_add_signals (gtkobject_class, gst_autoplugger_signals, LAST_SIGNAL);
g_signal_newc ("_empty", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstAutopluggerClass, _empty), NULL, NULL,
g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
*/
/*
gtk_object_add_arg_type ("GstAutoplugger::buffer_count", GTK_TYPE_INT,
GTK_ARG_READABLE, ARG_BUFFER_COUNT);
gtk_object_add_arg_type ("GstAutoplugger::reset", GTK_TYPE_BOOL,
GTK_ARG_WRITABLE, ARG_RESET);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BUFFER_COUNT,
g_param_spec_enum("buffer_count","buffer_count","buffer_count",
G_TYPE_INT,0,G_PARAM_READABLE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_RESET,
g_param_spec_enum("reset","reset","reset",
G_TYPE_BOOL,0,G_PARAM_WRITABLE)); // CHECKME!
*/
gtkobject_class->set_arg = gst_autoplugger_set_arg;
gtkobject_class->get_arg = gst_autoplugger_get_arg;
gobject_class->set_property = gst_autoplugger_set_property;
gobject_class->get_property = gst_autoplugger_get_property;
// gstelement_class->change_state = gst_autoplugger_change_state;
}
@ -166,11 +168,11 @@ gst_autoplugger_init (GstAutoplugger *autoplugger)
g_return_if_fail (autoplugger->cache != NULL);
GST_DEBUG(GST_CAT_AUTOPLUG, "turning on caps nego proxying in cache\n");
gtk_object_set(GTK_OBJECT(autoplugger->cache),"caps_proxy",TRUE,NULL);
gtk_object_set(G_OBJECT(autoplugger->cache),"caps_proxy",TRUE,NULL);
// attach signals to the cache
gtk_signal_connect (GTK_OBJECT (autoplugger->cache), "first_buffer",
GTK_SIGNAL_FUNC (gst_autoplugger_cache_first_buffer), autoplugger);
g_signal_connectc (G_OBJECT (autoplugger->cache), "first_buffer",
gst_autoplugger_cache_first_buffer, autoplugger, FALSE);
// add the cache to self
gst_bin_add (GST_BIN(autoplugger), autoplugger->cache);
@ -180,18 +182,18 @@ gst_autoplugger_init (GstAutoplugger *autoplugger)
autoplugger->cache_srcpad = gst_element_get_pad (autoplugger->cache, "src");
// attach handlers to the typefind pads
gtk_signal_connect (GTK_OBJECT (autoplugger->cache_sinkpad), "caps_changed",
GTK_SIGNAL_FUNC (gst_autoplugger_external_sink_caps_changed), autoplugger);
gtk_signal_connect (GTK_OBJECT (autoplugger->cache_srcpad), "caps_changed",
GTK_SIGNAL_FUNC (gst_autoplugger_external_src_caps_changed), autoplugger);
gtk_signal_connect (GTK_OBJECT (autoplugger->cache_sinkpad), "caps_nego_failed",
GTK_SIGNAL_FUNC (gst_autoplugger_external_sink_caps_nego_failed), autoplugger);
gtk_signal_connect (GTK_OBJECT (autoplugger->cache_srcpad), "caps_nego_failed",
GTK_SIGNAL_FUNC (gst_autoplugger_external_src_caps_nego_failed), autoplugger);
// gtk_signal_connect (GTK_OBJECT (autoplugger->cache_sinkpad), "connected",
// GTK_SIGNAL_FUNC (gst_autoplugger_external_sink_connected), autoplugger);
// gtk_signal_connect (GTK_OBJECT (autoplugger->cache_srcpad), "connected",
// GTK_SIGNAL_FUNC (gst_autoplugger_external_src_connected), autoplugger);
g_signal_connectc (G_OBJECT (autoplugger->cache_sinkpad), "caps_changed",
gst_autoplugger_external_sink_caps_changed, autoplugger,FALSE);
g_signal_connectc (G_OBJECT (autoplugger->cache_srcpad), "caps_changed",
gst_autoplugger_external_src_caps_changed, autoplugger,FALSE);
g_signal_connectc (G_OBJECT (autoplugger->cache_sinkpad), "caps_nego_failed",
gst_autoplugger_external_sink_caps_nego_failed, autoplugger,FALSE);
g_signal_connectc (G_OBJECT (autoplugger->cache_srcpad), "caps_nego_failed",
gst_autoplugger_external_src_caps_nego_failed, autoplugger,FALSE);
// g_signal_connectc (G_OBJECT (autoplugger->cache_sinkpad), "connected",
// gst_autoplugger_external_sink_connected, autoplugger,FALSE);
// g_signal_connectc (G_OBJECT (autoplugger->cache_srcpad), "connected",
// gst_autoplugger_external_src_connected, autoplugger,FALSE);
// ghost both of these pads to the outside world
gst_element_add_ghost_pad (GST_ELEMENT(autoplugger), autoplugger->cache_sinkpad, "sink");
@ -246,7 +248,7 @@ gst_autoplugger_external_src_connected(GstPad *pad, GstPad *peerpad, GstAutoplug
gst_caps_get_mime(peertemplatecaps));
autoplugger->sinktemplatecaps = peertemplatecaps;
// GST_DEBUG(GST_CAT_AUTOPLUG, "turning on caps nego proxying in cache\n");
// gtk_object_set(GTK_OBJECT(autoplugger->cache),"caps_proxy",TRUE,NULL);
// gtk_object_set(G_OBJECT(autoplugger->cache),"caps_proxy",TRUE,NULL);
}
}
}
@ -482,12 +484,12 @@ gst_schedule_show(GST_ELEMENT_SCHED(autoplugger));
// now reset the autoplugcache
GST_DEBUG(GST_CAT_AUTOPLUG, "resetting the cache to send first buffer(s) again\n");
gtk_object_set(GTK_OBJECT(autoplugger->cache),"reset",TRUE,NULL);
gtk_object_set(G_OBJECT(autoplugger->cache),"reset",TRUE,NULL);
// attach the cache_empty handler
// FIXME this is the wrong place, it shouldn't be done until we get successful caps nego!
gtk_signal_connect(GTK_OBJECT(autoplugger->cache),"cache_empty",
GTK_SIGNAL_FUNC(gst_autoplugger_cache_empty),autoplugger);
g_signal_connectc (G_OBJECT(autoplugger->cache),"cache_empty",
gst_autoplugger_cache_empty,autoplugger,FALSE);
autoplugger->paused--;
if (autoplugger->paused == 0)
@ -530,8 +532,8 @@ gst_schedule_show(GST_ELEMENT_SCHED(autoplugger));
GST_DEBUG(GST_CAT_AUTOPLUG, "creating typefind and setting signal handler\n");
autoplugger->typefind = gst_elementfactory_make("typefind","unnamed_typefind");
autoplugger->typefind_sinkpad = gst_element_get_pad(autoplugger->typefind,"sink");
gtk_signal_connect(GTK_OBJECT(autoplugger->typefind),"have_type",
GTK_SIGNAL_FUNC (gst_autoplugger_typefind_have_type), autoplugger);
g_signal_connectc (G_OBJECT(autoplugger->typefind),"have_type",
gst_autoplugger_typefind_have_type, autoplugger, FALSE);
}
// add it to self and attach it
GST_DEBUG(GST_CAT_AUTOPLUG, "adding typefind to self and connecting to cache\n");
@ -551,34 +553,34 @@ gst_schedule_show(GST_ELEMENT_SCHED(autoplugger));
gst_schedule_show(GST_ELEMENT_SCHED(autoplugger));
} else {
// // attach the cache_empty handler, since the cache simply isn't needed
// gtk_signal_connect(GTK_OBJECT(autoplugger->cache),"cache_empty",
// GTK_SIGNAL_FUNC(gst_autoplugger_cache_empty),autoplugger);
// g_signal_connectc (G_OBJECT(autoplugger->cache),"cache_empty",
// gst_autoplugger_cache_empty,autoplugger,FALSE);
}
}
static void
gst_autoplugger_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_autoplugger_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstAutoplugger *autoplugger;
autoplugger = GST_AUTOPLUGGER (object);
switch (id) {
switch (prop_id) {
default:
break;
}
}
static void
gst_autoplugger_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_autoplugger_get_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstAutoplugger *autoplugger;
autoplugger = GST_AUTOPLUGGER (object);
switch (id) {
switch (prop_id) {
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -45,22 +45,23 @@ static GstElement* gst_static_autoplug_to_caps (GstAutoplug *autoplug,
static GstAutoplugClass *parent_class = NULL;
GtkType gst_static_autoplug_get_type(void)
GType gst_static_autoplug_get_type(void)
{
static GtkType static_autoplug_type = 0;
static GType static_autoplug_type = 0;
if (!static_autoplug_type) {
static const GtkTypeInfo static_autoplug_info = {
"GstStaticAutoplug",
sizeof(GstElement),
static const GTypeInfo static_autoplug_info = {
sizeof(GstElementClass),
(GtkClassInitFunc)gst_static_autoplug_class_init,
(GtkObjectInitFunc)gst_static_autoplug_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
NULL,
NULL,
(GClassInitFunc)gst_static_autoplug_class_init,
NULL,
NULL,
sizeof(GstElement),
0,
(GInstanceInitFunc)gst_static_autoplug_init,
};
static_autoplug_type = gtk_type_unique (GST_TYPE_AUTOPLUG, &static_autoplug_info);
static_autoplug_type = g_type_register_static (GST_TYPE_AUTOPLUG, "GstStaticAutoplug", &static_autoplug_info, 0);
}
return static_autoplug_type;
}
@ -72,7 +73,7 @@ gst_static_autoplug_class_init(GstStaticAutoplugClass *klass)
gstautoplug_class = (GstAutoplugClass*) klass;
parent_class = gtk_type_class(GST_TYPE_AUTOPLUG);
parent_class = g_type_class_ref(GST_TYPE_AUTOPLUG);
gstautoplug_class->autoplug_to_caps = gst_static_autoplug_to_caps;
}
@ -225,8 +226,7 @@ gst_autoplug_pads_autoplug (GstElement *src, GstElement *sink)
if (!connected) {
GST_DEBUG (0,"gstpipeline: delaying pad connections for \"%s\" to \"%s\"\n",
GST_ELEMENT_NAME(src), GST_ELEMENT_NAME(sink));
gtk_signal_connect(GTK_OBJECT(src),"new_pad",
GTK_SIGNAL_FUNC(gst_autoplug_pads_autoplug_func), sink);
g_signal_connectc (G_OBJECT(src),"new_pad", gst_autoplug_pads_autoplug_func, sink, FALSE);
}
}
@ -459,10 +459,8 @@ differ:
data->i = i;
GST_DEBUG (0,"delaying the creation of a ghostpad for %s\n", GST_ELEMENT_NAME (thesrcelement));
gtk_signal_connect (GTK_OBJECT (thesrcelement), "new_pad",
autoplug_dynamic_pad, data);
gtk_signal_connect (GTK_OBJECT (thesrcelement), "new_ghost_pad",
autoplug_dynamic_pad, data);
g_signal_connectc (G_OBJECT (thesrcelement), "new_pad", autoplug_dynamic_pad, data, FALSE);
g_signal_connectc (G_OBJECT (thesrcelement), "new_ghost_pad", autoplug_dynamic_pad, data, FALSE);
}
}
}

View file

@ -33,13 +33,13 @@ extern "C" {
#define GST_TYPE_STATIC_AUTOPLUG \
(gst_static_autoplug_get_type())
#define GST_STATIC_AUTOPLUG(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_STATIC_AUTOPLUG,GstStaticAutoplug))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_STATIC_AUTOPLUG,GstStaticAutoplug))
#define GST_STATIC_AUTOPLUG_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_STATIC_AUTOPLUG,GstStaticAutoplugClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_STATIC_AUTOPLUG,GstStaticAutoplugClass))
#define GST_IS_STATIC_AUTOPLUG(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_STATIC_AUTOPLUG))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_STATIC_AUTOPLUG))
#define GST_IS_STATIC_AUTOPLUG_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_STATIC_AUTOPLUG))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_STATIC_AUTOPLUG))
typedef struct _GstStaticAutoplug GstStaticAutoplug;
typedef struct _GstStaticAutoplugClass GstStaticAutoplugClass;
@ -53,7 +53,7 @@ struct _GstStaticAutoplugClass {
};
GtkType gst_static_autoplug_get_type (void);
GType gst_static_autoplug_get_type (void);
#ifdef __cplusplus
}

View file

@ -45,22 +45,23 @@ static GstElement* gst_static_autoplug_to_render (GstAutoplug *autoplug,
static GstAutoplugClass *parent_class = NULL;
GtkType gst_static_autoplug_render_get_type(void)
GType gst_static_autoplug_render_get_type(void)
{
static GtkType static_autoplug_type = 0;
static GType static_autoplug_type = 0;
if (!static_autoplug_type) {
static const GtkTypeInfo static_autoplug_info = {
"GstStaticAutoplugRender",
sizeof(GstElement),
static const GTypeInfo static_autoplug_info = {
sizeof(GstElementClass),
(GtkClassInitFunc)gst_static_autoplug_render_class_init,
(GtkObjectInitFunc)gst_static_autoplug_render_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
NULL,
NULL,
(GClassInitFunc)gst_static_autoplug_render_class_init,
NULL,
NULL,
sizeof(GstElement),
0,
(GInstanceInitFunc)gst_static_autoplug_render_init,
};
static_autoplug_type = gtk_type_unique (GST_TYPE_AUTOPLUG, &static_autoplug_info);
static_autoplug_type = g_type_register_static (GST_TYPE_AUTOPLUG, "GstStaticAutoplugRender", &static_autoplug_info, 0);
}
return static_autoplug_type;
}
@ -72,7 +73,7 @@ gst_static_autoplug_render_class_init(GstStaticAutoplugRenderClass *klass)
gstautoplug_class = (GstAutoplugClass*) klass;
parent_class = gtk_type_class(GST_TYPE_AUTOPLUG);
parent_class = g_type_class_ref(GST_TYPE_AUTOPLUG);
gstautoplug_class->autoplug_to_renderers = gst_static_autoplug_to_render;
}
@ -202,10 +203,10 @@ gst_autoplug_pads_autoplug (GstElement *src, GstElement *sink)
if (!connected) {
GST_DEBUG (0,"gstpipeline: delaying pad connections for \"%s\" to \"%s\"\n",
GST_ELEMENT_NAME(src), GST_ELEMENT_NAME(sink));
gtk_signal_connect(GTK_OBJECT(src),"new_pad",
GTK_SIGNAL_FUNC(gst_autoplug_pads_autoplug_func), sink);
gtk_signal_connect(GTK_OBJECT(src),"new_ghost_pad",
GTK_SIGNAL_FUNC(gst_autoplug_pads_autoplug_func), sink);
g_signal_connectc (G_OBJECT(src),"new_pad",
gst_autoplug_pads_autoplug_func, sink, FALSE);
g_signal_connectc (G_OBJECT(src),"new_ghost_pad",
gst_autoplug_pads_autoplug_func, sink, FALSE);
}
}

View file

@ -33,13 +33,13 @@ extern "C" {
#define GST_TYPE_STATIC_AUTOPLUG_RENDER \
(gst_static_autoplug_render_get_type())
#define GST_STATIC_AUTOPLUG_RENDER(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_STATIC_AUTOPLUG_RENDER,GstStaticAutoplugRender))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_STATIC_AUTOPLUG_RENDER,GstStaticAutoplugRender))
#define GST_STATIC_AUTOPLUG_RENDER_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_STATIC_AUTOPLUG_RENDER,GstStaticAutoplugRenderClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_STATIC_AUTOPLUG_RENDER,GstStaticAutoplugRenderClass))
#define GST_IS_STATIC_AUTOPLUG_RENDER(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_STATIC_AUTOPLUG_RENDER))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_STATIC_AUTOPLUG_RENDER))
#define GST_IS_STATIC_AUTOPLUG_RENDER_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_STATIC_AUTOPLUG_RENDER))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_STATIC_AUTOPLUG_RENDER))
typedef struct _GstStaticAutoplugRender GstStaticAutoplugRender;
typedef struct _GstStaticAutoplugRenderClass GstStaticAutoplugRenderClass;
@ -53,7 +53,7 @@ struct _GstStaticAutoplugRenderClass {
};
GtkType gst_static_autoplug_render_get_type (void);
GType gst_static_autoplug_render_get_type (void);
#ifdef __cplusplus
}

View file

@ -51,8 +51,8 @@ enum {
static void gst_disksink_class_init (GstDiskSinkClass *klass);
static void gst_disksink_init (GstDiskSink *disksink);
static void gst_disksink_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksink_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_disksink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static gboolean gst_disksink_open_file (GstDiskSink *sink);
static void gst_disksink_close_file (GstDiskSink *sink);
@ -64,23 +64,23 @@ static GstElementStateReturn gst_disksink_change_state (GstElement *element);
static GstElementClass *parent_class = NULL;
static guint gst_disksink_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_disksink_get_type (void)
{
static GtkType disksink_type = 0;
static GType disksink_type = 0;
if (!disksink_type) {
static const GtkTypeInfo disksink_info = {
"GstDiskSink",
static const GTypeInfo disksink_info = {
sizeof(GstDiskSinkClass), NULL,
NULL,
(GClassInitFunc)gst_disksink_class_init,
NULL,
NULL,
sizeof(GstDiskSink),
sizeof(GstDiskSinkClass),
(GtkClassInitFunc)gst_disksink_class_init,
(GtkObjectInitFunc)gst_disksink_init,
(GtkArgSetFunc)gst_disksink_set_arg,
(GtkArgGetFunc)gst_disksink_get_arg,
(GtkClassInitFunc)NULL, /* deprecated, do not use ! */
0,
(GInstanceInitFunc)gst_disksink_init,
};
disksink_type = gtk_type_unique (GST_TYPE_ELEMENT, &disksink_info);
disksink_type = g_type_register_static (GST_TYPE_ELEMENT, "GstDiskSink", &disksink_info, 0);
}
return disksink_type;
}
@ -88,27 +88,25 @@ gst_disksink_get_type (void)
static void
gst_disksink_class_init (GstDiskSinkClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstDiskSink::location", GST_TYPE_FILENAME,
GTK_ARG_READWRITE, ARG_LOCATION);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_enum("location","location","location",
GST_TYPE_FILENAME,0,G_PARAM_READWRITE)); // CHECKME!
gst_disksink_signals[SIGNAL_HANDOFF] =
gtk_signal_new ("handoff", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstDiskSinkClass, handoff),
gtk_marshal_NONE__NONE, GTK_TYPE_NONE, 0);
g_signal_newc ("handoff", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstDiskSinkClass, handoff), NULL, NULL,
g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
gtk_object_class_add_signals (gtkobject_class, gst_disksink_signals,
LAST_SIGNAL);
gtkobject_class->set_arg = gst_disksink_set_arg;
gtkobject_class->get_arg = gst_disksink_get_arg;
gobject_class->set_property = gst_disksink_set_property;
gobject_class->get_property = gst_disksink_get_property;
gstelement_class->change_state = gst_disksink_change_state;
}
@ -126,21 +124,21 @@ gst_disksink_init (GstDiskSink *disksink)
}
static void
gst_disksink_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstDiskSink *sink;
/* it's not null if we got it, but it might not be ours */
sink = GST_DISKSINK (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must be stopped or paused in order to do this */
g_return_if_fail ((GST_STATE (sink) < GST_STATE_PLAYING)
|| (GST_STATE (sink) == GST_STATE_PAUSED));
if (sink->filename)
g_free (sink->filename);
sink->filename = g_strdup (GTK_VALUE_STRING (*arg));
sink->filename = g_strdup (g_value_get_string (value));
if ( (GST_STATE (sink) == GST_STATE_PAUSED)
&& (sink->filename != NULL))
{
@ -155,7 +153,7 @@ gst_disksink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_disksink_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstDiskSink *sink;
@ -164,12 +162,12 @@ gst_disksink_get_arg (GtkObject *object, GtkArg *arg, guint id)
sink = GST_DISKSINK (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATION:
GTK_VALUE_STRING (*arg) = sink->filename;
g_value_set_string (value, sink->filename);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -237,7 +235,7 @@ gst_disksink_chain (GstPad *pad, GstBuffer *buf)
}
gst_buffer_unref (buf);
gtk_signal_emit (GTK_OBJECT (disksink), gst_disksink_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (disksink), gst_disksink_signals[SIGNAL_HANDOFF], 0,
disksink);
}

View file

@ -40,13 +40,13 @@ GstElementDetails gst_disksink_details;
#define GST_TYPE_DISKSINK \
(gst_disksink_get_type())
#define GST_DISKSINK(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_DISKSINK,GstDiskSink))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DISKSINK,GstDiskSink))
#define GST_DISKSINK_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSINK,GstDiskSinkClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSINK,GstDiskSinkClass))
#define GST_IS_DISKSINK(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_DISKSINK))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISKSINK))
#define GST_IS_DISKSINK_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSINK))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSINK))
typedef struct _GstDiskSink GstDiskSink;
typedef struct _GstDiskSinkClass GstDiskSinkClass;
@ -71,7 +71,7 @@ struct _GstDiskSinkClass {
void (*handoff) (GstElement *element,GstPad *pad);
};
GtkType gst_disksink_get_type(void);
GType gst_disksink_get_type(void);
#ifdef __cplusplus

View file

@ -59,8 +59,8 @@ enum {
static void gst_disksrc_class_init (GstDiskSrcClass *klass);
static void gst_disksrc_init (GstDiskSrc *disksrc);
static void gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_disksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_disksrc_get (GstPad *pad);
static GstBuffer * gst_disksrc_get_region (GstPad *pad,GstRegionType type,guint64 offset,guint64 len);
@ -73,23 +73,23 @@ static void gst_disksrc_close_file (GstDiskSrc *src);
static GstElementClass *parent_class = NULL;
//static guint gst_disksrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_disksrc_get_type(void)
{
static GtkType disksrc_type = 0;
static GType disksrc_type = 0;
if (!disksrc_type) {
static const GtkTypeInfo disksrc_info = {
"GstDiskSrc",
static const GTypeInfo disksrc_info = {
sizeof(GstDiskSrcClass), NULL,
NULL,
(GClassInitFunc)gst_disksrc_class_init,
NULL,
NULL,
sizeof(GstDiskSrc),
sizeof(GstDiskSrcClass),
(GtkClassInitFunc)gst_disksrc_class_init,
(GtkObjectInitFunc)gst_disksrc_init,
(GtkArgSetFunc)gst_disksrc_set_arg,
(GtkArgGetFunc)gst_disksrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_disksrc_init,
};
disksrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &disksrc_info);
disksrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstDiskSrc", &disksrc_info, 0);
}
return disksrc_type;
}
@ -97,25 +97,29 @@ gst_disksrc_get_type(void)
static void
gst_disksrc_class_init (GstDiskSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstDiskSrc::location", GST_TYPE_FILENAME,
GTK_ARG_READWRITE, ARG_LOCATION);
gtk_object_add_arg_type ("GstDiskSrc::bytesperread", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BYTESPERREAD);
gtk_object_add_arg_type ("GstDiskSrc::offset", GTK_TYPE_LONG,
GTK_ARG_READWRITE, ARG_OFFSET);
gtk_object_add_arg_type ("GstDiskSrc::size", GTK_TYPE_LONG,
GTK_ARG_READABLE, ARG_SIZE);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_enum("location","location","location",
GST_TYPE_FILENAME,0,G_PARAM_READWRITE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BYTESPERREAD,
g_param_spec_int("bytesperread","bytesperread","bytesperread",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_OFFSET,
g_param_spec_long("offset","offset","offset",
G_MINLONG,G_MAXLONG,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SIZE,
g_param_spec_long("size","size","size",
G_MINLONG,G_MAXLONG,0,G_PARAM_READABLE)); // CHECKME
gtkobject_class->set_arg = gst_disksrc_set_arg;
gtkobject_class->get_arg = gst_disksrc_get_arg;
gobject_class->set_property = gst_disksrc_set_property;
gobject_class->get_property = gst_disksrc_get_property;
gstelement_class->change_state = gst_disksrc_change_state;
}
@ -142,7 +146,7 @@ gst_disksrc_init (GstDiskSrc *disksrc)
static void
gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstDiskSrc *src;
@ -151,7 +155,7 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_DISKSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must be stopped or paused in order to do this */
g_return_if_fail ((GST_STATE (src) < GST_STATE_PLAYING)
@ -159,12 +163,12 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
if (src->filename) g_free (src->filename);
/* clear the filename if we get a NULL (is that possible?) */
if (GTK_VALUE_STRING (*arg) == NULL) {
if (g_value_get_string (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->filename = NULL;
/* otherwise set the new filename */
} else {
src->filename = g_strdup (GTK_VALUE_STRING (*arg));
src->filename = g_strdup (g_value_get_string (value));
}
if ((GST_STATE (src) == GST_STATE_PAUSED) && (src->filename != NULL))
{
@ -173,10 +177,10 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_BYTESPERREAD:
src->bytes_per_read = GTK_VALUE_INT (*arg);
src->bytes_per_read = g_value_get_int (value);
break;
case ARG_OFFSET:
src->curoffset = GTK_VALUE_LONG (*arg);
src->curoffset = g_value_get_long (value);
src->new_seek = TRUE;
break;
default:
@ -185,7 +189,7 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_disksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstDiskSrc *src;
@ -194,21 +198,21 @@ gst_disksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_DISKSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATION:
GTK_VALUE_STRING (*arg) = src->filename;
g_value_set_string (value, src->filename);
break;
case ARG_BYTESPERREAD:
GTK_VALUE_INT (*arg) = src->bytes_per_read;
g_value_set_int (value, src->bytes_per_read);
break;
case ARG_OFFSET:
GTK_VALUE_LONG (*arg) = src->curoffset;
g_value_set_long (value, src->curoffset);
break;
case ARG_SIZE:
GTK_VALUE_LONG (*arg) = src->size;
g_value_set_long (value, src->size);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -38,13 +38,13 @@ GstElementDetails gst_disksrc_details;
#define GST_TYPE_DISKSRC \
(gst_disksrc_get_type())
#define GST_DISKSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_DISKSRC,GstDiskSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DISKSRC,GstDiskSrc))
#define GST_DISKSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSRC,GstDiskSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSRC,GstDiskSrcClass))
#define GST_IS_DISKSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_DISKSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISKSRC))
#define GST_IS_DISKSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSRC))
typedef enum {
GST_DISKSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -81,7 +81,7 @@ struct _GstDiskSrcClass {
GstElementClass parent_class;
};
GtkType gst_disksrc_get_type(void);
GType gst_disksrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -42,7 +42,7 @@
struct _elements_entry {
gchar *name;
GtkType (*type) (void);
GType (*type) (void);
GstElementDetails *details;
gboolean (*factoryinit) (GstElementFactory *factory);
};

View file

@ -51,31 +51,31 @@ enum {
static void gst_fakesink_class_init (GstFakeSinkClass *klass);
static void gst_fakesink_init (GstFakeSink *fakesink);
static void gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesink_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fakesink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_fakesink_chain (GstPad *pad,GstBuffer *buf);
static GstElementClass *parent_class = NULL;
static guint gst_fakesink_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fakesink_get_type (void)
{
static GtkType fakesink_type = 0;
static GType fakesink_type = 0;
if (!fakesink_type) {
static const GtkTypeInfo fakesink_info = {
"GstFakeSink",
static const GTypeInfo fakesink_info = {
sizeof(GstFakeSinkClass), NULL,
NULL,
(GClassInitFunc)gst_fakesink_class_init,
NULL,
NULL,
sizeof(GstFakeSink),
sizeof(GstFakeSinkClass),
(GtkClassInitFunc)gst_fakesink_class_init,
(GtkObjectInitFunc)gst_fakesink_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fakesink_init,
};
fakesink_type = gtk_type_unique (GST_TYPE_ELEMENT, &fakesink_info);
fakesink_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFakeSink", &fakesink_info, 0);
}
return fakesink_type;
}
@ -83,28 +83,27 @@ gst_fakesink_get_type (void)
static void
gst_fakesink_class_init (GstFakeSinkClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFakeSink::num_sources", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_NUM_SOURCES);
gtk_object_add_arg_type ("GstFakeSink::silent", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_SILENT);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_SOURCES,
g_param_spec_int("num_sources","num_sources","num_sources",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SILENT,
g_param_spec_boolean("silent","silent","silent",
TRUE,G_PARAM_READWRITE)); // CHECKME
gst_fakesink_signals[SIGNAL_HANDOFF] =
gtk_signal_new ("handoff", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstFakeSinkClass, handoff),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
g_signal_newc ("handoff", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstFakeSinkClass, handoff), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_fakesink_signals,
LAST_SIGNAL);
gtkobject_class->set_arg = gst_fakesink_set_arg;
gtkobject_class->get_arg = gst_fakesink_get_arg;
gobject_class->set_property = gst_fakesink_set_property;
gobject_class->get_property = gst_fakesink_get_property;
}
static void
@ -123,7 +122,7 @@ gst_fakesink_init (GstFakeSink *fakesink)
}
static void
gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFakeSink *sink;
gint new_numsinks;
@ -132,9 +131,9 @@ gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
/* it's not null if we got it, but it might not be ours */
sink = GST_FAKESINK (object);
switch(id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
new_numsinks = GTK_VALUE_INT (*arg);
new_numsinks = g_value_get_int (value);
while (sink->numsinkpads < new_numsinks) {
pad = gst_pad_new (g_strdup_printf ("sink%d", sink->numsinkpads), GST_PAD_SINK);
gst_pad_set_chain_function (pad, gst_fakesink_chain);
@ -144,7 +143,7 @@ gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_SILENT:
sink->silent = GTK_VALUE_BOOL (*arg);
sink->silent = g_value_get_boolean (value);
break;
default:
break;
@ -152,7 +151,7 @@ gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_fakesink_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFakeSink *sink;
@ -161,15 +160,15 @@ gst_fakesink_get_arg (GtkObject *object, GtkArg *arg, guint id)
sink = GST_FAKESINK (object);
switch (id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
GTK_VALUE_INT (*arg) = sink->numsinkpads;
g_value_set_int (value, sink->numsinkpads);
break;
case ARG_SILENT:
GTK_VALUE_BOOL (*arg) = sink->silent;
g_value_set_boolean (value, sink->silent);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -195,7 +194,7 @@ gst_fakesink_chain (GstPad *pad, GstBuffer *buf)
if (!fakesink->silent)
g_print("fakesink: ******* (%s:%s)< (%d bytes) \n",GST_DEBUG_PAD_NAME(pad),GST_BUFFER_SIZE(buf));
gtk_signal_emit (GTK_OBJECT (fakesink), gst_fakesink_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (fakesink), gst_fakesink_signals[SIGNAL_HANDOFF], 0,
buf);
gst_buffer_unref (buf);

View file

@ -40,13 +40,13 @@ GstElementDetails gst_fakesink_details;
#define GST_TYPE_FAKESINK \
(gst_fakesink_get_type())
#define GST_FAKESINK(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FAKESINK,GstFakeSink))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FAKESINK,GstFakeSink))
#define GST_FAKESINK_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESINK,GstFakeSinkClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESINK,GstFakeSinkClass))
#define GST_IS_FAKESINK(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FAKESINK))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FAKESINK))
#define GST_IS_FAKESINK_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESINK))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESINK))
typedef struct _GstFakeSink GstFakeSink;
typedef struct _GstFakeSinkClass GstFakeSinkClass;
@ -66,7 +66,7 @@ struct _GstFakeSinkClass {
void (*handoff) (GstElement *element, GstBuffer *buf, GstPad *pad);
};
GtkType gst_fakesink_get_type(void);
GType gst_fakesink_get_type(void);
#ifdef __cplusplus

View file

@ -54,10 +54,10 @@ enum {
};
#define GST_TYPE_FAKESRC_OUTPUT (gst_fakesrc_output_get_type())
static GtkType
static GType
gst_fakesrc_output_get_type(void) {
static GtkType fakesrc_output_type = 0;
static GtkEnumValue fakesrc_output[] = {
static GType fakesrc_output_type = 0;
static GEnumValue fakesrc_output[] = {
{ FAKESRC_FIRST_LAST_LOOP, "1", "First-Last loop"},
{ FAKESRC_LAST_FIRST_LOOP, "2", "Last-First loop"},
{ FAKESRC_PING_PONG, "3", "Ping-Pong"},
@ -69,7 +69,7 @@ gst_fakesrc_output_get_type(void) {
{0, NULL, NULL},
};
if (!fakesrc_output_type) {
fakesrc_output_type = gtk_type_register_enum("GstFakeSrcOutput", fakesrc_output);
fakesrc_output_type = g_enum_register_static("GstFakeSrcOutput", fakesrc_output);
}
return fakesrc_output_type;
}
@ -77,8 +77,8 @@ gst_fakesrc_output_get_type(void) {
static void gst_fakesrc_class_init (GstFakeSrcClass *klass);
static void gst_fakesrc_init (GstFakeSrc *fakesrc);
static void gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fakesrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer* gst_fakesrc_get (GstPad *pad);
static void gst_fakesrc_loop (GstElement *element);
@ -86,23 +86,22 @@ static void gst_fakesrc_loop (GstElement *element);
static GstElementClass *parent_class = NULL;
static guint gst_fakesrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fakesrc_get_type (void)
{
static GtkType fakesrc_type = 0;
static GType fakesrc_type = 0;
if (!fakesrc_type) {
static const GtkTypeInfo fakesrc_info = {
"GstFakeSrc",
static const GTypeInfo fakesrc_info = {
sizeof(GstFakeSrcClass), NULL, NULL,
(GClassInitFunc)gst_fakesrc_class_init,
NULL,
NULL,
sizeof(GstFakeSrc),
sizeof(GstFakeSrcClass),
(GtkClassInitFunc)gst_fakesrc_class_init,
(GtkObjectInitFunc)gst_fakesrc_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fakesrc_init,
};
fakesrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &fakesrc_info);
fakesrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFakeSrc", &fakesrc_info, 0);
}
return fakesrc_type;
}
@ -110,38 +109,42 @@ gst_fakesrc_get_type (void)
static void
gst_fakesrc_class_init (GstFakeSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFakeSrc::num_sources", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_NUM_SOURCES);
gtk_object_add_arg_type ("GstFakeSrc::loop_based", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_LOOP_BASED);
gtk_object_add_arg_type ("GstFakeSrc::output", GST_TYPE_FAKESRC_OUTPUT,
GTK_ARG_READWRITE, ARG_OUTPUT);
gtk_object_add_arg_type ("GstFakeSrc::pattern", GTK_TYPE_STRING,
GTK_ARG_READWRITE, ARG_PATTERN);
gtk_object_add_arg_type ("GstFakeSrc::num_buffers", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_NUM_BUFFERS);
gtk_object_add_arg_type ("GstFakeSrc::eos", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_EOS);
gtk_object_add_arg_type ("GstFakeSrc::silent", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_SILENT);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_SOURCES,
g_param_spec_int("num_sources","num_sources","num_sources",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOOP_BASED,
g_param_spec_boolean("loop_based","loop_based","loop_based",
TRUE,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_OUTPUT,
g_param_spec_enum("output","output","output",
GST_TYPE_FAKESRC_OUTPUT,0,G_PARAM_READWRITE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_PATTERN,
g_param_spec_string("pattern","pattern","pattern",
NULL, G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_BUFFERS,
g_param_spec_int("num_buffers","num_buffers","num_buffers",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_EOS,
g_param_spec_boolean("eos","eos","eos",
TRUE,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SILENT,
g_param_spec_boolean("silent","silent","silent",
TRUE,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_fakesrc_set_arg;
gtkobject_class->get_arg = gst_fakesrc_get_arg;
gobject_class->set_property = gst_fakesrc_set_property;
gobject_class->get_property = gst_fakesrc_get_property;
gst_fakesrc_signals[SIGNAL_HANDOFF] =
gtk_signal_new ("handoff", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstFakeSrcClass, handoff),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_fakesrc_signals,
LAST_SIGNAL);
g_signal_newc ("handoff", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstFakeSrcClass, handoff), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
}
static void
@ -192,7 +195,7 @@ gst_fakesrc_update_functions (GstFakeSrc *src)
}
static void
gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFakeSrc *src;
gint new_numsrcs;
@ -201,9 +204,9 @@ gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
/* it's not null if we got it, but it might not be ours */
src = GST_FAKESRC (object);
switch(id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
new_numsrcs = GTK_VALUE_INT (*arg);
new_numsrcs = g_value_get_int (value);
if (new_numsrcs > src->numsrcpads) {
while (src->numsrcpads != new_numsrcs) {
pad = gst_pad_new(g_strdup_printf("src%d",src->numsrcpads),GST_PAD_SRC);
@ -215,7 +218,7 @@ gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_LOOP_BASED:
src->loop_based = GTK_VALUE_BOOL (*arg);
src->loop_based = g_value_get_boolean (value);
gst_fakesrc_update_functions (src);
break;
case ARG_OUTPUT:
@ -223,14 +226,14 @@ gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
case ARG_PATTERN:
break;
case ARG_NUM_BUFFERS:
src->num_buffers = GTK_VALUE_INT (*arg);
src->num_buffers = g_value_get_int (value);
break;
case ARG_EOS:
src->eos = GTK_VALUE_BOOL (*arg);
src->eos = g_value_get_boolean (value);
GST_INFO (0, "will EOS on next buffer");
break;
case ARG_SILENT:
src->silent = GTK_VALUE_BOOL (*arg);
src->silent = g_value_get_boolean (value);
break;
default:
break;
@ -238,7 +241,7 @@ GST_INFO (0, "will EOS on next buffer");
}
static void
gst_fakesrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFakeSrc *src;
@ -247,29 +250,30 @@ gst_fakesrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_FAKESRC (object);
switch (id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
GTK_VALUE_INT (*arg) = src->numsrcpads;
g_value_set_int (value, src->numsrcpads);
break;
case ARG_LOOP_BASED:
GTK_VALUE_BOOL (*arg) = src->loop_based;
g_value_set_boolean (value, src->loop_based);
break;
case ARG_OUTPUT:
GTK_VALUE_INT (*arg) = src->output;
g_value_set_int (value, src->output);
break;
case ARG_PATTERN:
GTK_VALUE_STRING (*arg) = src->pattern;
g_value_set_string (value, src->pattern);
break;
case ARG_NUM_BUFFERS:
GTK_VALUE_INT (*arg) = src->num_buffers;
g_value_set_int (value, src->num_buffers);
break;
case ARG_EOS:
GTK_VALUE_BOOL (*arg) = src->eos;
g_value_set_boolean (value, src->eos);
break;
case ARG_SILENT:
GTK_VALUE_BOOL (*arg) = src->silent;
g_value_set_boolean (value, src->silent);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -314,7 +318,7 @@ gst_fakesrc_get(GstPad *pad)
g_print("fakesrc: ******* (%s:%s)> \n",GST_DEBUG_PAD_NAME(pad));
buf = gst_buffer_new();
gtk_signal_emit (GTK_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF], 0,
buf);
return buf;
@ -364,7 +368,7 @@ gst_fakesrc_loop(GstElement *element)
if (!src->silent)
g_print("fakesrc: ******* (%s:%s)> \n",GST_DEBUG_PAD_NAME(pad));
gtk_signal_emit (GTK_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF], 0,
buf);
gst_pad_push (pad, buf);

View file

@ -50,13 +50,13 @@ typedef enum {
#define GST_TYPE_FAKESRC \
(gst_fakesrc_get_type())
#define GST_FAKESRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FAKESRC,GstFakeSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FAKESRC,GstFakeSrc))
#define GST_FAKESRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESRC,GstFakeSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESRC,GstFakeSrcClass))
#define GST_IS_FAKESRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FAKESRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FAKESRC))
#define GST_IS_FAKESRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESRC))
typedef struct _GstFakeSrc GstFakeSrc;
typedef struct _GstFakeSrcClass GstFakeSrcClass;
@ -82,7 +82,7 @@ struct _GstFakeSrcClass {
void (*handoff) (GstElement *element, GstBuffer *buf, GstPad *pad);
};
GtkType gst_fakesrc_get_type(void);
GType gst_fakesrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -49,31 +49,31 @@ enum {
static void gst_fdsink_class_init (GstFdSinkClass *klass);
static void gst_fdsink_init (GstFdSink *fdsink);
static void gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsink_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fdsink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_fdsink_chain (GstPad *pad,GstBuffer *buf);
static GstElementClass *parent_class = NULL;
//static guint gst_fdsink_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fdsink_get_type (void)
{
static GtkType fdsink_type = 0;
static GType fdsink_type = 0;
if (!fdsink_type) {
static const GtkTypeInfo fdsink_info = {
"GstFdSink",
static const GTypeInfo fdsink_info = {
sizeof(GstFdSinkClass), NULL,
NULL,
(GClassInitFunc)gst_fdsink_class_init,
NULL,
NULL,
sizeof(GstFdSink),
sizeof(GstFdSinkClass),
(GtkClassInitFunc)gst_fdsink_class_init,
(GtkObjectInitFunc)gst_fdsink_init,
(GtkArgSetFunc)gst_fdsink_set_arg,
(GtkArgGetFunc)gst_fdsink_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fdsink_init,
};
fdsink_type = gtk_type_unique (GST_TYPE_ELEMENT, &fdsink_info);
fdsink_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFdSink", &fdsink_info, 0);
}
return fdsink_type;
}
@ -81,17 +81,18 @@ gst_fdsink_get_type (void)
static void
gst_fdsink_class_init (GstFdSinkClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFdSink::fd", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_FD);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_FD,
g_param_spec_int("fd","fd","fd",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_fdsink_set_arg;
gtkobject_class->get_arg = gst_fdsink_get_arg;
gobject_class->set_property = gst_fdsink_set_property;
gobject_class->get_property = gst_fdsink_get_property;
}
static void
@ -126,7 +127,7 @@ gst_fdsink_chain (GstPad *pad, GstBuffer *buf)
}
static void
gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFdSink *fdsink;
@ -135,9 +136,9 @@ gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id)
fdsink = GST_FDSINK (object);
switch(id) {
switch (prop_id) {
case ARG_FD:
fdsink->fd = GTK_VALUE_INT (*arg);
fdsink->fd = g_value_get_int (value);
break;
default:
break;
@ -145,7 +146,7 @@ gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_fdsink_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFdSink *fdsink;
@ -154,9 +155,9 @@ gst_fdsink_get_arg (GtkObject *object, GtkArg *arg, guint id)
fdsink = GST_FDSINK (object);
switch(id) {
switch (prop_id) {
case ARG_FD:
GTK_VALUE_INT (*arg) = fdsink->fd;
g_value_set_int (value, fdsink->fd);
break;
default:
break;

View file

@ -40,13 +40,13 @@ GstElementDetails gst_fdsink_details;
#define GST_TYPE_FDSINK \
(gst_fdsink_get_type())
#define GST_FDSINK(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FDSINK,GstFdSink))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FDSINK,GstFdSink))
#define GST_FDSINK_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FDSINK,GstFdSinkClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FDSINK,GstFdSinkClass))
#define GST_IS_FDSINK(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FDSINK))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FDSINK))
#define GST_IS_FDSINK_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSINK))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSINK))
typedef struct _GstFdSink GstFdSink;
typedef struct _GstFdSinkClass GstFdSinkClass;
@ -63,7 +63,7 @@ struct _GstFdSinkClass {
GstElementClass parent_class;
};
GtkType gst_fdsink_get_type(void);
GType gst_fdsink_get_type(void);
#ifdef __cplusplus

View file

@ -57,8 +57,8 @@ enum {
static void gst_fdsrc_class_init (GstFdSrcClass *klass);
static void gst_fdsrc_init (GstFdSrc *fdsrc);
static void gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fdsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_fdsrc_get (GstPad *pad);
@ -66,23 +66,23 @@ static GstBuffer * gst_fdsrc_get (GstPad *pad);
static GstElementClass *parent_class = NULL;
//static guint gst_fdsrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fdsrc_get_type (void)
{
static GtkType fdsrc_type = 0;
static GType fdsrc_type = 0;
if (!fdsrc_type) {
static const GtkTypeInfo fdsrc_info = {
"GstFdSrc",
static const GTypeInfo fdsrc_info = {
sizeof(GstFdSrcClass), NULL,
NULL,
(GClassInitFunc)gst_fdsrc_class_init,
NULL,
NULL,
sizeof(GstFdSrc),
sizeof(GstFdSrcClass),
(GtkClassInitFunc)gst_fdsrc_class_init,
(GtkObjectInitFunc)gst_fdsrc_init,
(GtkArgSetFunc)gst_fdsrc_set_arg,
(GtkArgGetFunc)gst_fdsrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fdsrc_init,
};
fdsrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &fdsrc_info);
fdsrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFdSrc", &fdsrc_info, 0);
}
return fdsrc_type;
}
@ -90,21 +90,24 @@ gst_fdsrc_get_type (void)
static void
gst_fdsrc_class_init (GstFdSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFdSrc::location", GST_TYPE_FILENAME,
GTK_ARG_WRITABLE, ARG_LOCATION);
gtk_object_add_arg_type ("GstFdSrc::bytesperread", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BYTESPERREAD);
gtk_object_add_arg_type ("GstFdSrc::offset", GTK_TYPE_INT,
GTK_ARG_READABLE, ARG_OFFSET);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_enum("location","location","location",
GST_TYPE_FILENAME,0,G_PARAM_WRITABLE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BYTESPERREAD,
g_param_spec_int("bytesperread","bytesperread","bytesperread",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_OFFSET,
g_param_spec_int("offset","offset","offset",
G_MININT,G_MAXINT,0,G_PARAM_READABLE)); // CHECKME
gtkobject_class->set_arg = gst_fdsrc_set_arg;
gtkobject_class->get_arg = gst_fdsrc_get_arg;
gobject_class->set_property = gst_fdsrc_set_property;
gobject_class->get_property = gst_fdsrc_get_property;
}
static void gst_fdsrc_init(GstFdSrc *fdsrc) {
@ -120,7 +123,7 @@ static void gst_fdsrc_init(GstFdSrc *fdsrc) {
static void
gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFdSrc *src;
int fd;
@ -130,23 +133,23 @@ gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_FDSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must not be playing in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
/* if we get a NULL, consider it to be a fd of 0 */
if (GTK_VALUE_STRING (*arg) == NULL) {
if (g_value_get_string (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->fd = 0;
/* otherwise set the new filename */
} else {
if (sscanf (GTK_VALUE_STRING (*arg), "%d", &fd))
if (sscanf (g_value_get_string (value), "%d", &fd))
src->fd = fd;
}
break;
case ARG_BYTESPERREAD:
src->bytes_per_read = GTK_VALUE_INT (*arg);
src->bytes_per_read = g_value_get_int (value);
break;
default:
break;
@ -154,7 +157,7 @@ gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_fdsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFdSrc *src;
@ -163,15 +166,15 @@ gst_fdsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_FDSRC (object);
switch (id) {
switch (prop_id) {
case ARG_BYTESPERREAD:
GTK_VALUE_INT (*arg) = src->bytes_per_read;
g_value_set_int (value, src->bytes_per_read);
break;
case ARG_OFFSET:
GTK_VALUE_INT (*arg) = src->curoffset;
g_value_set_int (value, src->curoffset);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -40,13 +40,13 @@ GstElementDetails gst_fdsrc_details;
#define GST_TYPE_FDSRC \
(gst_fdsrc_get_type())
#define GST_FDSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FDSRC,GstFdSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FDSRC,GstFdSrc))
#define GST_FDSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FDSRC,GstFdSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FDSRC,GstFdSrcClass))
#define GST_IS_FDSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FDSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FDSRC))
#define GST_IS_FDSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSRC))
typedef struct _GstFdSrc GstFdSrc;
@ -70,7 +70,7 @@ struct _GstFdSrcClass {
GstElementClass parent_class;
};
GtkType gst_fdsrc_get_type(void);
GType gst_fdsrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -54,8 +54,8 @@ enum {
static void gst_httpsrc_class_init (GstHttpSrcClass *klass);
static void gst_httpsrc_init (GstHttpSrc *httpsrc);
static void gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_httpsrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_httpsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_httpsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstElementStateReturn gst_httpsrc_change_state (GstElement *element);
static GstBuffer * gst_httpsrc_get (GstPad *pad);
@ -67,23 +67,23 @@ static void gst_httpsrc_close_url (GstHttpSrc *src);
static GstElementClass *parent_class = NULL;
//static guint gst_httpsrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_httpsrc_get_type (void)
{
static GtkType httpsrc_type = 0;
static GType httpsrc_type = 0;
if (!httpsrc_type) {
static const GtkTypeInfo httpsrc_info = {
"GstHttpSrc",
static const GTypeInfo httpsrc_info = {
sizeof(GstHttpSrcClass), NULL,
NULL,
(GClassInitFunc)gst_httpsrc_class_init,
NULL,
NULL,
sizeof(GstHttpSrc),
sizeof(GstHttpSrcClass),
(GtkClassInitFunc)gst_httpsrc_class_init,
(GtkObjectInitFunc)gst_httpsrc_init,
(GtkArgSetFunc)gst_httpsrc_set_arg,
(GtkArgGetFunc)gst_httpsrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_httpsrc_init,
};
httpsrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &httpsrc_info);
httpsrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstHttpSrc", &httpsrc_info, 0);
}
return httpsrc_type;
}
@ -91,22 +91,24 @@ gst_httpsrc_get_type (void)
static void
gst_httpsrc_class_init (GstHttpSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstHttpSrc::location", GTK_TYPE_STRING,
GTK_ARG_READWRITE, ARG_LOCATION);
gtk_object_add_arg_type ("GstHttpSrc::bytesperread", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BYTESPERREAD);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_string("location","location","location",
NULL, G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BYTESPERREAD,
g_param_spec_int("bytesperread","bytesperread","bytesperread",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_httpsrc_set_arg;
gtkobject_class->get_arg = gst_httpsrc_get_arg;
gobject_class->set_property = gst_httpsrc_set_property;
gobject_class->get_property = gst_httpsrc_get_property;
gstelement_class->change_state = gst_httpsrc_change_state;
}
@ -197,7 +199,7 @@ gst_httpsrc_close_url (GstHttpSrc *src)
}
static void
gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_httpsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstHttpSrc *src;
@ -206,23 +208,23 @@ gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_HTTPSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must not be playing in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
if (src->url) g_free (src->url);
/* clear the url if we get a NULL (is that possible?) */
if (GTK_VALUE_STRING (*arg) == NULL) {
if (g_value_get_string (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object),GST_STATE_NULL);
src->url = NULL;
/* otherwise set the new url */
} else {
src->url = g_strdup (GTK_VALUE_STRING (*arg));
src->url = g_strdup (g_value_get_string (value));
}
break;
case ARG_BYTESPERREAD:
src->bytes_per_read = GTK_VALUE_INT (*arg);
src->bytes_per_read = g_value_get_int (value);
break;
default:
break;
@ -230,7 +232,7 @@ gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_httpsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_httpsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstHttpSrc *httpsrc;
@ -239,15 +241,15 @@ gst_httpsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
httpsrc = GST_HTTPSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATION:
GTK_VALUE_STRING (*arg) = httpsrc->url;
g_value_set_string (value, httpsrc->url);
break;
case ARG_BYTESPERREAD:
GTK_VALUE_INT (*arg) = httpsrc->bytes_per_read;
g_value_set_int (value, httpsrc->bytes_per_read);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -42,13 +42,13 @@ GstElementDetails gst_httpsrc_details;
#define GST_TYPE_HTTPSRC \
(gst_httpsrc_get_type())
#define GST_HTTPSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_HTTPSRC,GstHttpSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_HTTPSRC,GstHttpSrc))
#define GST_HTTPSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_HTTPSRC,GstHttpSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_HTTPSRC,GstHttpSrcClass))
#define GST_IS_HTTPSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_HTTPSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_HTTPSRC))
#define GST_IS_HTTPSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_HTTPSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_HTTPSRC))
typedef enum {
GST_HTTPSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -76,7 +76,7 @@ struct _GstHttpSrcClass {
GstElementClass parent_class;
};
GtkType gst_httpsrc_get_type(void);
GType gst_httpsrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -51,31 +51,31 @@ enum {
static void gst_identity_class_init (GstIdentityClass *klass);
static void gst_identity_init (GstIdentity *identity);
static void gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_identity_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_identity_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_identity_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_identity_chain (GstPad *pad, GstBuffer *buf);
static GstElementClass *parent_class = NULL;
//static guint gst_identity_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_identity_get_type (void)
{
static GtkType identity_type = 0;
static GType identity_type = 0;
if (!identity_type) {
static const GtkTypeInfo identity_info = {
"GstIdentity",
static const GTypeInfo identity_info = {
sizeof(GstIdentityClass), NULL,
NULL,
(GClassInitFunc)gst_identity_class_init,
NULL,
NULL,
sizeof(GstIdentity),
sizeof(GstIdentityClass),
(GtkClassInitFunc)gst_identity_class_init,
(GtkObjectInitFunc)gst_identity_init,
(GtkArgSetFunc)gst_identity_set_arg,
(GtkArgGetFunc)gst_identity_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_identity_init,
};
identity_type = gtk_type_unique (GST_TYPE_ELEMENT, &identity_info);
identity_type = g_type_register_static (GST_TYPE_ELEMENT, "GstIdentity", &identity_info, 0);
}
return identity_type;
}
@ -83,21 +83,24 @@ gst_identity_get_type (void)
static void
gst_identity_class_init (GstIdentityClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstIdentity::loop_based", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_LOOP_BASED);
gtk_object_add_arg_type ("GstIdentity::sleep_time", GTK_TYPE_UINT,
GTK_ARG_READWRITE, ARG_SLEEP_TIME);
gtk_object_add_arg_type ("GstIdentity::silent", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_SILENT);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOOP_BASED,
g_param_spec_boolean("loop_based","loop_based","loop_based",
TRUE,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SLEEP_TIME,
g_param_spec_uint("sleep_time","sleep_time","sleep_time",
0,G_MAXUINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SILENT,
g_param_spec_boolean("silent","silent","silent",
TRUE,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_identity_set_arg;
gtkobject_class->get_arg = gst_identity_get_arg;
gobject_class->set_property = gst_identity_set_property;
gobject_class->get_property = gst_identity_get_property;
}
static GstBufferPool*
@ -193,7 +196,7 @@ gst_identity_loop (GstElement *element)
}
static void
gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_identity_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstIdentity *identity;
@ -202,9 +205,9 @@ gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id)
identity = GST_IDENTITY (object);
switch(id) {
switch (prop_id) {
case ARG_LOOP_BASED:
identity->loop_based = GTK_VALUE_BOOL (*arg);
identity->loop_based = g_value_get_boolean (value);
if (identity->loop_based) {
gst_element_set_loop_function (GST_ELEMENT (identity), gst_identity_loop);
gst_pad_set_chain_function (identity->sinkpad, NULL);
@ -215,17 +218,17 @@ gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_SLEEP_TIME:
identity->sleep_time = GTK_VALUE_UINT (*arg);
identity->sleep_time = g_value_get_uint (value);
break;
case ARG_SILENT:
identity->silent = GTK_VALUE_BOOL (*arg);
identity->silent = g_value_get_boolean (value);
break;
default:
break;
}
}
static void gst_identity_get_arg(GtkObject *object,GtkArg *arg,guint id) {
static void gst_identity_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) {
GstIdentity *identity;
/* it's not null if we got it, but it might not be ours */
@ -233,18 +236,18 @@ static void gst_identity_get_arg(GtkObject *object,GtkArg *arg,guint id) {
identity = GST_IDENTITY (object);
switch (id) {
switch (prop_id) {
case ARG_LOOP_BASED:
GTK_VALUE_BOOL (*arg) = identity->loop_based;
g_value_set_boolean (value, identity->loop_based);
break;
case ARG_SLEEP_TIME:
GTK_VALUE_UINT (*arg) = identity->sleep_time;
g_value_set_uint (value, identity->sleep_time);
break;
case ARG_SILENT:
GTK_VALUE_BOOL (*arg) = identity->silent;
g_value_set_boolean (value, identity->silent);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -40,13 +40,13 @@ GstElementDetails gst_identity_details;
#define GST_TYPE_IDENTITY \
(gst_identity_get_type())
#define GST_IDENTITY(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_IDENTITY,GstIdentity))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_IDENTITY,GstIdentity))
#define GST_IDENTITY_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_IDENTITY,GstIdentityClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_IDENTITY,GstIdentityClass))
#define GST_IS_IDENTITY(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_IDENTITY))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_IDENTITY))
#define GST_IS_IDENTITY_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_IDENTITY))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_IDENTITY))
typedef struct _GstIdentity GstIdentity;
typedef struct _GstIdentityClass GstIdentityClass;
@ -67,7 +67,7 @@ struct _GstIdentityClass {
GstElementClass parent_class;
};
GtkType gst_identity_get_type(void);
GType gst_identity_get_type(void);
#ifdef __cplusplus

View file

@ -54,8 +54,8 @@ enum {
static void gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass);
static void gst_multidisksrc_init (GstMultiDiskSrc *disksrc);
static void gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_multidisksrc_get (GstPad *pad);
//static GstBuffer * gst_multidisksrc_get_region (GstPad *pad,GstRegionType type,guint64 offset,guint64 len);
@ -68,23 +68,23 @@ static void gst_multidisksrc_close_file (GstMultiDiskSrc *src);
static GstElementClass *parent_class = NULL;
static guint gst_multidisksrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_multidisksrc_get_type(void)
{
static GtkType multidisksrc_type = 0;
static GType multidisksrc_type = 0;
if (!multidisksrc_type) {
static const GtkTypeInfo multidisksrc_info = {
"GstMultiDiskSrc",
static const GTypeInfo multidisksrc_info = {
sizeof(GstMultiDiskSrcClass), NULL,
NULL,
(GClassInitFunc)gst_multidisksrc_class_init,
NULL,
NULL,
sizeof(GstMultiDiskSrc),
sizeof(GstMultiDiskSrcClass),
(GtkClassInitFunc)gst_multidisksrc_class_init,
(GtkObjectInitFunc)gst_multidisksrc_init,
(GtkArgSetFunc)gst_multidisksrc_set_arg,
(GtkArgGetFunc)gst_multidisksrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_multidisksrc_init,
};
multidisksrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &multidisksrc_info);
multidisksrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstMultiDiskSrc", &multidisksrc_info, 0);
}
return multidisksrc_type;
}
@ -92,26 +92,26 @@ gst_multidisksrc_get_type(void)
static void
gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gst_multidisksrc_signals[NEW_FILE] =
gtk_signal_new ("new_file", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstMultiDiskSrcClass, new_file),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_multidisksrc_signals, LAST_SIGNAL);
g_signal_newc ("new_file", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstMultiDiskSrcClass, new_file), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gtk_object_add_arg_type ("GstMultiDiskSrc::locations", GTK_TYPE_POINTER,
GTK_ARG_READWRITE, ARG_LOCATIONS);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATIONS,
g_param_spec_string("locations","locations","locations",
NULL, G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_multidisksrc_set_arg;
gtkobject_class->get_arg = gst_multidisksrc_get_arg;
gobject_class->set_property = gst_multidisksrc_set_property;
gobject_class->get_property = gst_multidisksrc_get_property;
gstelement_class->change_state = gst_multidisksrc_change_state;
}
@ -135,7 +135,7 @@ gst_multidisksrc_init (GstMultiDiskSrc *multidisksrc)
}
static void
gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -144,18 +144,18 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATIONS:
/* the element must be stopped in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
/* clear the filename if we get a NULL */
if (GTK_VALUE_POINTER (*arg) == NULL) {
if (g_value_get_pointer (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->listptr = NULL;
/* otherwise set the new filenames */
} else {
src->listptr = GTK_VALUE_POINTER(*arg);
src->listptr = g_value_get_pointer (value);
}
break;
default:
@ -164,7 +164,7 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -173,12 +173,12 @@ gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATIONS:
GTK_VALUE_POINTER (*arg) = src->listptr;
g_value_set_pointer (value, src->listptr);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -215,7 +215,7 @@ gst_multidisksrc_get (GstPad *pad)
return NULL;
// emitted after the open, as the user may free the list and string from here
gtk_signal_emit(GTK_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], list);
g_signal_emit(G_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], 0, list);
/* create the buffer */
// FIXME: should eventually use a bufferpool for this

View file

@ -35,13 +35,13 @@ GstElementDetails gst_multidisksrc_details;
#define GST_TYPE_MULTIDISKSRC \
(gst_multidisksrc_get_type())
#define GST_MULTIDISKSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
#define GST_MULTIDISKSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
#define GST_IS_MULTIDISKSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_MULTIDISKSRC))
#define GST_IS_MULTIDISKSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
typedef enum {
GST_MULTIDISKSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -75,7 +75,7 @@ struct _GstMultiDiskSrcClass {
void (*new_file) (GstMultiDiskSrc *multidisksrc, gchar *newfilename);
};
GtkType gst_multidisksrc_get_type(void);
GType gst_multidisksrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -54,8 +54,8 @@ enum {
static void gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass);
static void gst_multidisksrc_init (GstMultiDiskSrc *disksrc);
static void gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_multidisksrc_get (GstPad *pad);
//static GstBuffer * gst_multidisksrc_get_region (GstPad *pad,GstRegionType type,guint64 offset,guint64 len);
@ -68,23 +68,23 @@ static void gst_multidisksrc_close_file (GstMultiDiskSrc *src);
static GstElementClass *parent_class = NULL;
static guint gst_multidisksrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_multidisksrc_get_type(void)
{
static GtkType multidisksrc_type = 0;
static GType multidisksrc_type = 0;
if (!multidisksrc_type) {
static const GtkTypeInfo multidisksrc_info = {
"GstMultiDiskSrc",
static const GTypeInfo multidisksrc_info = {
sizeof(GstMultiDiskSrcClass), NULL,
NULL,
(GClassInitFunc)gst_multidisksrc_class_init,
NULL,
NULL,
sizeof(GstMultiDiskSrc),
sizeof(GstMultiDiskSrcClass),
(GtkClassInitFunc)gst_multidisksrc_class_init,
(GtkObjectInitFunc)gst_multidisksrc_init,
(GtkArgSetFunc)gst_multidisksrc_set_arg,
(GtkArgGetFunc)gst_multidisksrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_multidisksrc_init,
};
multidisksrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &multidisksrc_info);
multidisksrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstMultiDiskSrc", &multidisksrc_info, 0);
}
return multidisksrc_type;
}
@ -92,26 +92,26 @@ gst_multidisksrc_get_type(void)
static void
gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gst_multidisksrc_signals[NEW_FILE] =
gtk_signal_new ("new_file", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstMultiDiskSrcClass, new_file),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_multidisksrc_signals, LAST_SIGNAL);
g_signal_newc ("new_file", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstMultiDiskSrcClass, new_file), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gtk_object_add_arg_type ("GstMultiDiskSrc::locations", GTK_TYPE_POINTER,
GTK_ARG_READWRITE, ARG_LOCATIONS);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATIONS,
g_param_spec_string("locations","locations","locations",
NULL, G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_multidisksrc_set_arg;
gtkobject_class->get_arg = gst_multidisksrc_get_arg;
gobject_class->set_property = gst_multidisksrc_set_property;
gobject_class->get_property = gst_multidisksrc_get_property;
gstelement_class->change_state = gst_multidisksrc_change_state;
}
@ -135,7 +135,7 @@ gst_multidisksrc_init (GstMultiDiskSrc *multidisksrc)
}
static void
gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -144,18 +144,18 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATIONS:
/* the element must be stopped in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
/* clear the filename if we get a NULL */
if (GTK_VALUE_POINTER (*arg) == NULL) {
if (g_value_get_pointer (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->listptr = NULL;
/* otherwise set the new filenames */
} else {
src->listptr = GTK_VALUE_POINTER(*arg);
src->listptr = g_value_get_pointer (value);
}
break;
default:
@ -164,7 +164,7 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -173,12 +173,12 @@ gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATIONS:
GTK_VALUE_POINTER (*arg) = src->listptr;
g_value_set_pointer (value, src->listptr);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -215,7 +215,7 @@ gst_multidisksrc_get (GstPad *pad)
return NULL;
// emitted after the open, as the user may free the list and string from here
gtk_signal_emit(GTK_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], list);
g_signal_emit(G_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], 0, list);
/* create the buffer */
// FIXME: should eventually use a bufferpool for this

View file

@ -35,13 +35,13 @@ GstElementDetails gst_multidisksrc_details;
#define GST_TYPE_MULTIDISKSRC \
(gst_multidisksrc_get_type())
#define GST_MULTIDISKSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
#define GST_MULTIDISKSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
#define GST_IS_MULTIDISKSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_MULTIDISKSRC))
#define GST_IS_MULTIDISKSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
typedef enum {
GST_MULTIDISKSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -75,7 +75,7 @@ struct _GstMultiDiskSrcClass {
void (*new_file) (GstMultiDiskSrc *multidisksrc, gchar *newfilename);
};
GtkType gst_multidisksrc_get_type(void);
GType gst_multidisksrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -59,8 +59,8 @@ enum {
static void gst_pipefilter_class_init (GstPipefilterClass *klass);
static void gst_pipefilter_init (GstPipefilter *pipefilter);
static void gst_pipefilter_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_pipefilter_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_pipefilter_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_pipefilter_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer* gst_pipefilter_get (GstPad *pad);
static void gst_pipefilter_chain (GstPad *pad, GstBuffer *buf);
@ -71,23 +71,23 @@ static GstElementStateReturn gst_pipefilter_change_state (GstElement *element);
static GstElementClass *parent_class = NULL;
//static guint gst_pipefilter_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_pipefilter_get_type (void)
{
static GtkType pipefilter_type = 0;
static GType pipefilter_type = 0;
if (!pipefilter_type) {
static const GtkTypeInfo pipefilter_info = {
"GstPipefilter",
static const GTypeInfo pipefilter_info = {
sizeof(GstPipefilterClass), NULL,
NULL,
(GClassInitFunc)gst_pipefilter_class_init,
NULL,
NULL,
sizeof(GstPipefilter),
sizeof(GstPipefilterClass),
(GtkClassInitFunc)gst_pipefilter_class_init,
(GtkObjectInitFunc)gst_pipefilter_init,
(GtkArgSetFunc)gst_pipefilter_set_arg,
(GtkArgGetFunc)gst_pipefilter_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_pipefilter_init,
};
pipefilter_type = gtk_type_unique(GST_TYPE_ELEMENT,&pipefilter_info);
pipefilter_type = g_type_register_static(GST_TYPE_ELEMENT, "GstPipefilter", &pipefilter_info, 0);
}
return pipefilter_type;
}
@ -95,21 +95,22 @@ gst_pipefilter_get_type (void)
static void
gst_pipefilter_class_init (GstPipefilterClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gstelement_class->change_state = gst_pipefilter_change_state;
gtk_object_add_arg_type("GstPipefilter::command", GTK_TYPE_STRING,
GTK_ARG_READWRITE, ARG_COMMAND);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_COMMAND,
g_param_spec_string("command","command","command",
NULL, G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_pipefilter_set_arg;
gtkobject_class->get_arg = gst_pipefilter_get_arg;
gobject_class->set_property = gst_pipefilter_set_property;
gobject_class->get_property = gst_pipefilter_get_property;
}
static void
@ -219,7 +220,7 @@ gst_pipefilter_chain (GstPad *pad,GstBuffer *buf)
}
static void
gst_pipefilter_set_arg (GtkObject *object,GtkArg *arg,guint id)
gst_pipefilter_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstPipefilter *pipefilter;
@ -227,10 +228,10 @@ gst_pipefilter_set_arg (GtkObject *object,GtkArg *arg,guint id)
g_return_if_fail(GST_IS_PIPEFILTER(object));
pipefilter = GST_PIPEFILTER(object);
switch(id) {
switch (prop_id) {
case ARG_COMMAND:
pipefilter->orig_command = g_strdup(GTK_VALUE_STRING(*arg));
pipefilter->command = g_strsplit(GTK_VALUE_STRING(*arg), " ", 0);
pipefilter->orig_command = g_strdup(g_value_get_string (value));
pipefilter->command = g_strsplit(g_value_get_string (value), " ", 0);
break;
default:
break;
@ -238,7 +239,7 @@ gst_pipefilter_set_arg (GtkObject *object,GtkArg *arg,guint id)
}
static void
gst_pipefilter_get_arg (GtkObject *object,GtkArg *arg,guint id)
gst_pipefilter_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstPipefilter *pipefilter;
@ -246,12 +247,12 @@ gst_pipefilter_get_arg (GtkObject *object,GtkArg *arg,guint id)
g_return_if_fail(GST_IS_PIPEFILTER(object));
pipefilter = GST_PIPEFILTER(object);
switch (id) {
switch (prop_id) {
case ARG_COMMAND:
GTK_VALUE_STRING(*arg) = pipefilter->orig_command;
g_value_set_string (value, pipefilter->orig_command);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -39,13 +39,13 @@ GstElementDetails gst_pipefilter_details;
#define GST_TYPE_PIPEFILTER \
(gst_pipefilter_get_type())
#define GST_PIPEFILTER(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_PIPEFILTER,GstPipefilter))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_PIPEFILTER,GstPipefilter))
#define GST_PIPEFILTER_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_PIPEFILTER,GstPipefilterClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_PIPEFILTER,GstPipefilterClass))
#define GST_IS_PIPEFILTER(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_PIPEFILTER))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_PIPEFILTER))
#define GST_IS_PIPEFILTER_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_PIPEFILTER))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_PIPEFILTER))
typedef enum {
GST_PIPEFILTER_OPEN = GST_ELEMENT_FLAG_LAST,
@ -80,7 +80,7 @@ struct _GstPipefilterClass {
GstElementClass parent_class;
};
GtkType gst_pipefilter_get_type(void);
GType gst_pipefilter_get_type(void);
#ifdef __cplusplus

View file

@ -83,8 +83,8 @@ static GstPadTemplate *src_temp;
static void gst_sinesrc_class_init(GstSineSrcClass *klass);
static void gst_sinesrc_init(GstSineSrc *src);
static GstPadNegotiateReturn gst_sinesrc_negotiate (GstPad *pad, GstCaps **caps, gpointer *data);
static void gst_sinesrc_set_arg(GtkObject *object,GtkArg *arg,guint id);
static void gst_sinesrc_get_arg(GtkObject *object,GtkArg *arg,guint id);
static void gst_sinesrc_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_sinesrc_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
//static gboolean gst_sinesrc_change_state(GstElement *element,
// GstElementState state);
//static void gst_sinesrc_close_audio(GstSineSrc *src);
@ -99,51 +99,57 @@ static GstBuffer * gst_sinesrc_get(GstPad *pad);
static GstElementClass *parent_class = NULL;
//static guint gst_sinesrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_sinesrc_get_type(void) {
static GtkType sinesrc_type = 0;
static GType sinesrc_type = 0;
if (!sinesrc_type) {
static const GtkTypeInfo sinesrc_info = {
"GstSineSrc",
static const GTypeInfo sinesrc_info = {
sizeof(GstSineSrcClass), NULL,
NULL,
(GClassInitFunc)gst_sinesrc_class_init,
NULL,
NULL,
sizeof(GstSineSrc),
sizeof(GstSineSrcClass),
(GtkClassInitFunc)gst_sinesrc_class_init,
(GtkObjectInitFunc)gst_sinesrc_init,
(GtkArgSetFunc)gst_sinesrc_set_arg,
(GtkArgGetFunc)gst_sinesrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_sinesrc_init,
};
sinesrc_type = gtk_type_unique(GST_TYPE_ELEMENT,&sinesrc_info);
sinesrc_type = g_type_register_static(GST_TYPE_ELEMENT, "GstSineSrc", &sinesrc_info, 0);
}
return sinesrc_type;
}
static void
gst_sinesrc_class_init(GstSineSrcClass *klass) {
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gtk_object_add_arg_type("GstSineSrc::volume", GTK_TYPE_DOUBLE,
GTK_ARG_READWRITE, ARG_VOLUME);
gtk_object_add_arg_type("GstSineSrc::format", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_FORMAT);
gtk_object_add_arg_type("GstSineSrc::samplerate", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_SAMPLERATE);
gtk_object_add_arg_type("GstSineSrc::tablesize", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_TABLESIZE);
gtk_object_add_arg_type("GstSineSrc::freq", GTK_TYPE_DOUBLE,
GTK_ARG_READWRITE, ARG_FREQ);
gtk_object_add_arg_type("GstSineSrc::buffersize", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BUFFER_SIZE);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_VOLUME,
g_param_spec_double("volume","volume","volume",
G_MINDOUBLE,G_MAXDOUBLE,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_FORMAT,
g_param_spec_int("format","format","format",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SAMPLERATE,
g_param_spec_int("samplerate","samplerate","samplerate",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_TABLESIZE,
g_param_spec_int("tablesize","tablesize","tablesize",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_FREQ,
g_param_spec_double("freq","freq","freq",
G_MINDOUBLE,G_MAXDOUBLE,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BUFFER_SIZE,
g_param_spec_int("buffersize","buffersize","buffersize",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_sinesrc_set_arg;
gtkobject_class->get_arg = gst_sinesrc_get_arg;
gobject_class->set_property = gst_sinesrc_set_property;
gobject_class->get_property = gst_sinesrc_get_property;
// gstelement_class->change_state = gst_sinesrc_change_state;
}
@ -246,42 +252,42 @@ gst_sinesrc_get(GstPad *pad)
}
static void
gst_sinesrc_set_arg(GtkObject *object,GtkArg *arg,guint id) {
gst_sinesrc_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) {
GstSineSrc *src;
/* it's not null if we got it, but it might not be ours */
g_return_if_fail(GST_IS_SINESRC(object));
src = GST_SINESRC(object);
switch (id) {
switch (prop_id) {
case ARG_VOLUME:
if (GTK_VALUE_DOUBLE(*arg) < 0.0 || GTK_VALUE_DOUBLE(*arg) > 1.0)
if (g_value_get_double (value) < 0.0 || g_value_get_double (value) > 1.0)
break;
src->volume = GTK_VALUE_DOUBLE(*arg);
src->volume = g_value_get_double (value);
gst_sinesrc_update_vol_scale(src);
break;
case ARG_FORMAT:
src->format = GTK_VALUE_INT(*arg);
src->format = g_value_get_int (value);
src->newcaps=TRUE;
break;
case ARG_SAMPLERATE:
src->samplerate = GTK_VALUE_INT(*arg);
src->samplerate = g_value_get_int (value);
src->newcaps=TRUE;
gst_sinesrc_update_table_inc(src);
break;
case ARG_FREQ: {
if (GTK_VALUE_DOUBLE(*arg) <= 0.0 || GTK_VALUE_DOUBLE(*arg) > src->samplerate/2)
if (g_value_get_double (value) <= 0.0 || g_value_get_double (value) > src->samplerate/2)
break;
src->freq = GTK_VALUE_DOUBLE(*arg);
src->freq = g_value_get_double (value);
gst_sinesrc_update_table_inc(src);
break;
case ARG_TABLESIZE:
src->table_size = GTK_VALUE_INT(*arg);
src->table_size = g_value_get_int (value);
gst_sinesrc_populate_sinetable(src);
gst_sinesrc_update_table_inc(src);
break;
case ARG_BUFFER_SIZE:
src->buffer_size = GTK_VALUE_INT(*arg);
src->buffer_size = g_value_get_int (value);
break;
}
default:
@ -290,34 +296,34 @@ gst_sinesrc_set_arg(GtkObject *object,GtkArg *arg,guint id) {
}
static void
gst_sinesrc_get_arg(GtkObject *object,GtkArg *arg,guint id) {
gst_sinesrc_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) {
GstSineSrc *src;
/* it's not null if we got it, but it might not be ours */
g_return_if_fail(GST_IS_SINESRC(object));
src = GST_SINESRC(object);
switch (id) {
switch (prop_id) {
case ARG_VOLUME:
GTK_VALUE_DOUBLE(*arg) = src->volume;
g_value_set_double (value, src->volume);
break;
case ARG_FORMAT:
GTK_VALUE_INT(*arg) = src->format;
g_value_set_int (value, src->format);
break;
case ARG_SAMPLERATE:
GTK_VALUE_INT(*arg) = src->samplerate;
g_value_set_int (value, src->samplerate);
break;
case ARG_FREQ:
GTK_VALUE_DOUBLE(*arg) = src->freq;
g_value_set_double (value, src->freq);
break;
case ARG_TABLESIZE:
GTK_VALUE_INT(*arg) = src->table_size;
g_value_set_int (value, src->table_size);
break;
case ARG_BUFFER_SIZE:
GTK_VALUE_INT(*arg) = src->buffer_size;
g_value_set_int (value, src->buffer_size);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -39,13 +39,13 @@ GstElementDetails gst_sinesrc_details;
#define GST_TYPE_SINESRC \
(gst_sinesrc_get_type())
#define GST_SINESRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_SINESRC,GstSineSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_SINESRC,GstSineSrc))
#define GST_SINESRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_SINESRC,GstSineSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_SINESRC,GstSineSrcClass))
#define GST_IS_SINESRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_SINESRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_SINESRC))
#define GST_IS_SINESRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_SINESRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_SINESRC))
typedef struct _GstSineSrc GstSineSrc;
typedef struct _GstSineSrcClass GstSineSrcClass;
@ -85,7 +85,7 @@ struct _GstSineSrcClass {
GstElementClass parent_class;
};
GtkType gst_sinesrc_get_type(void);
GType gst_sinesrc_get_type(void);
gboolean gst_sinesrc_factory_init (GstElementFactory *factory);
#ifdef __cplusplus

View file

@ -63,7 +63,7 @@ static void gst_tee_init (GstTee *tee);
static GstPad* gst_tee_request_new_pad (GstElement *element, GstPadTemplate *temp);
static void gst_tee_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_tee_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_tee_chain (GstPad *pad, GstBuffer *buf);
@ -71,22 +71,22 @@ static GstElementClass *parent_class = NULL;
//static guint gst_tee_signals[LAST_SIGNAL] = { 0 };
static GstPadTemplate *gst_tee_src_template;
GtkType
GType
gst_tee_get_type(void) {
static GtkType tee_type = 0;
static GType tee_type = 0;
if (!tee_type) {
static const GtkTypeInfo tee_info = {
"GstTee",
static const GTypeInfo tee_info = {
sizeof(GstTeeClass), NULL,
NULL,
(GClassInitFunc)gst_tee_class_init,
NULL,
NULL,
sizeof(GstTee),
sizeof(GstTeeClass),
(GtkClassInitFunc)gst_tee_class_init,
(GtkObjectInitFunc)gst_tee_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_tee_init,
};
tee_type = gtk_type_unique (GST_TYPE_ELEMENT, &tee_info);
tee_type = g_type_register_static (GST_TYPE_ELEMENT, "GstTee", &tee_info, 0);
}
return tee_type;
}
@ -94,18 +94,19 @@ gst_tee_get_type(void) {
static void
gst_tee_class_init (GstTeeClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstTee::num_pads", GTK_TYPE_INT,
GTK_ARG_READABLE, ARG_NUM_PADS);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_PADS,
g_param_spec_int("num_pads","num_pads","num_pads",
G_MININT,G_MAXINT,0,G_PARAM_READABLE)); // CHECKME
gtkobject_class->get_arg = gst_tee_get_arg;
gobject_class->get_property = gst_tee_get_property;
gstelement_class->request_new_pad = gst_tee_request_new_pad;
}
@ -149,7 +150,7 @@ gst_tee_request_new_pad (GstElement *element, GstPadTemplate *templ)
}
static void
gst_tee_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_tee_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstTee *tee;
@ -158,9 +159,9 @@ gst_tee_get_arg (GtkObject *object, GtkArg *arg, guint id)
tee = GST_TEE (object);
switch(id) {
switch (prop_id) {
case ARG_NUM_PADS:
GTK_VALUE_INT (*arg) = tee->numsrcpads;
g_value_set_int (value, tee->numsrcpads);
break;
default:
break;

View file

@ -36,13 +36,13 @@ extern GstElementDetails gst_tee_details;
#define GST_TYPE_TEE \
(gst_tee_get_type())
#define GST_TEE(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_TEE,GstTee))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_TEE,GstTee))
#define GST_TEE_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_TEE,GstTeeClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_TEE,GstTeeClass))
#define GST_IS_TEE(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_TEE))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_TEE))
#define GST_IS_TEE_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_TEE))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_TEE))
typedef struct _GstTee GstTee;
typedef struct _GstTeeClass GstTeeClass;
@ -60,7 +60,7 @@ struct _GstTeeClass {
GstElementClass parent_class;
};
GtkType gst_tee_get_type (void);
GType gst_tee_get_type (void);
gboolean gst_tee_factory_init (GstElementFactory *factory);

View file

@ -63,16 +63,19 @@ gst_init (int *argc, char **argv[])
if (!g_thread_supported ()) g_thread_init (NULL);
g_type_init(0);
/* Only initialise gtk fully if we have an X display.
* FIXME: this fails if the display is specified differently, eg, by
* a command line parameter. This is okay though, since this is only
* a quick hack and should be replaced when we move to gobject.*/
/*
display = g_getenv("DISPLAY");
if (display == NULL) {
gtk_type_init ();
} else {
gtk_init (argc,argv);
}
}*/
if (!gst_init_check (argc,argv)) {
exit (0);
@ -269,7 +272,7 @@ gst_init_check (int *argc,
void
gst_main (void)
{
gtk_main ();
// gtk_main ();
}
/**
@ -280,5 +283,5 @@ gst_main (void)
void
gst_main_quit (void)
{
gtk_main_quit ();
// gtk_main_quit ();
}

View file

@ -77,7 +77,7 @@ gst_autoplug_class_init(GstAutoplugClass *klass)
parent_class = g_type_class_ref (GST_TYPE_OBJECT);
gst_autoplug_signals[NEW_OBJECT] =
g_signal_newc ("new_object", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("new_object", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstAutoplugClass, new_object), NULL, NULL,
g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1,
GST_TYPE_OBJECT);

View file

@ -106,7 +106,7 @@ gst_bin_class_init (GstBinClass *klass)
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gst_bin_signals[OBJECT_ADDED] =
g_signal_newc ("object_added", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_FIRST,
g_signal_newc ("object_added", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_FIRST,
G_STRUCT_OFFSET (GstBinClass, object_added), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
GST_TYPE_ELEMENT);

View file

@ -97,37 +97,37 @@ gst_element_class_init (GstElementClass *klass)
parent_class = g_type_class_ref(GST_TYPE_OBJECT);
gst_element_signals[STATE_CHANGE] =
g_signal_newc ("state_change", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("state_change", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstElementClass, state_change), NULL, NULL,
g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1,
G_TYPE_INT);
gst_element_signals[NEW_PAD] =
g_signal_newc ("new_pad", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("new_pad", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstElementClass, new_pad), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
GST_TYPE_PAD);
gst_element_signals[PAD_REMOVED] =
g_signal_newc ("pad_removed", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("pad_removed", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstElementClass, pad_removed), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
GST_TYPE_PAD);
gst_element_signals[NEW_GHOST_PAD] =
g_signal_newc ("new_ghost_pad", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("new_ghost_pad", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstElementClass, new_ghost_pad), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
GST_TYPE_PAD);
gst_element_signals[GHOST_PAD_REMOVED] =
g_signal_newc ("ghost_pad_removed", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("ghost_pad_removed", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstElementClass, ghost_pad_removed), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
GST_TYPE_PAD);
gst_element_signals[ERROR] =
g_signal_newc ("error", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("error", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstElementClass, error), NULL, NULL,
g_cclosure_marshal_VOID__STRING, G_TYPE_NONE,1,
G_TYPE_STRING);
gst_element_signals[EOS] =
g_signal_newc ("eos", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("eos", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstElementClass,eos), NULL, NULL,
g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);

View file

@ -91,26 +91,13 @@ gst_object_class_init (GstObjectClass *klass)
parent_class = g_type_class_ref (G_TYPE_OBJECT);
/*
gst_object_signals[PARENT_SET] =
g_signal_newc ("parent_set", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstObjectClass, parent_set), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
GST_TYPE_OBJECT);
gst_object_signals[OBJECT_SAVED] =
g_signal_newc ("object_saved", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstObjectClass, object_saved), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
*/
gst_object_signals[PARENT_SET] =
g_signal_newc("parent_set", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc("parent_set", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstObjectClass, parent_set), NULL, NULL,
g_cclosure_marshal_VOID__OBJECT,G_TYPE_NONE,1,
G_TYPE_OBJECT);
gst_object_signals[OBJECT_SAVED] =
g_signal_newc("object_saved", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc("object_saved", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstObjectClass, object_saved), NULL, NULL,
g_cclosure_marshal_VOID__OBJECT,G_TYPE_NONE,1,
G_TYPE_OBJECT);
@ -618,9 +605,8 @@ gst_signal_object_class_init (GstSignalObjectClass *klass)
parent_class = g_type_class_ref (G_TYPE_OBJECT);
gst_signal_object_signals[SO_OBJECT_LOADED] =
g_signal_newc("object_loaded", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc("object_loaded", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstObjectClass, parent_set), NULL, NULL,
NULL, NULL,
gst_marshal_VOID__OBJECT_POINTER,G_TYPE_NONE,2,
G_TYPE_OBJECT,G_TYPE_POINTER);
}

View file

@ -140,27 +140,27 @@ gst_real_pad_class_init (GstRealPadClass *klass)
real_pad_parent_class = g_type_class_ref(GST_TYPE_PAD);
gst_real_pad_signals[REAL_SET_ACTIVE] =
g_signal_newc ("set_active", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("set_active", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstRealPadClass, set_active), NULL, NULL,
g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE, 1,
G_TYPE_BOOLEAN);
gst_real_pad_signals[REAL_CAPS_CHANGED] =
g_signal_newc ("caps_changed", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("caps_changed", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstRealPadClass, caps_changed), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gst_real_pad_signals[REAL_CAPS_NEGO_FAILED] =
g_signal_newc ("caps_nego_failed", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("caps_nego_failed", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstRealPadClass, caps_nego_failed), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gst_real_pad_signals[REAL_CONNECTED] =
g_signal_newc ("connected", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("connected", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstRealPadClass, connected), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gst_real_pad_signals[REAL_DISCONNECTED] =
g_signal_newc ("disconnected", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("disconnected", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstRealPadClass, disconnected), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
@ -1595,7 +1595,7 @@ gst_padtemplate_class_init (GstPadTemplateClass *klass)
padtemplate_parent_class = g_type_class_ref(GST_TYPE_OBJECT);
gst_padtemplate_signals[TEMPL_PAD_CREATED] =
g_signal_newc ("pad_created", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("pad_created", G_SIGNAL_RUN_LAST, G_TYPE_FROM_CLASS(klass),
G_STRUCT_OFFSET (GstPadTemplateClass, pad_created), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
GST_TYPE_PAD);

View file

@ -278,8 +278,8 @@ if (GST_IS_GHOST_PAD(srcpad)) GST_DEBUG(0,"it's a ghost pad\n");
GST_DEBUG(0,"SETTING UP dynamic connection %s:%s and %s:%s\n",gst_element_get_name (previous),
srcpadname,GST_DEBUG_PAD_NAME(sinkpad));
gtk_signal_connect (G_OBJECT (previous), "new_pad", dynamic_connect, connect);
gtk_signal_connect (G_OBJECT (previous), "new_ghost_pad", dynamic_connect, connect);
g_signal_connectc (G_OBJECT (previous), "new_pad", dynamic_connect, connect, FALSE);
g_signal_connectc (G_OBJECT (previous), "new_ghost_pad", dynamic_connect, connect, FALSE);
}
else {
GST_DEBUG(0,"CONNECTING %s:%s and %s:%s\n",GST_DEBUG_PAD_NAME(srcpad),GST_DEBUG_PAD_NAME(sinkpad));
@ -294,8 +294,7 @@ if (GST_IS_GHOST_PAD(srcpad)) GST_DEBUG(0,"it's a ghost pad\n");
// thomas: if we're the first element, connect eos signal
if (elementcount == 1)
{
gtk_signal_connect (G_OBJECT (element), "eos",
GTK_SIGNAL_FUNC (have_eos), NULL);
g_signal_connectc (G_OBJECT (element), "eos", have_eos, NULL, FALSE);
}
// if we're the first element, ghost all the sinkpads

View file

@ -98,7 +98,7 @@ gst_typefind_class_init (GstTypeFindClass *klass)
g_param_spec_pointer("caps", "Caps", "Found capabilities", G_PARAM_READABLE));
gst_typefind_signals[HAVE_TYPE] =
g_signal_newc ("have_type", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("have_type", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstTypeFindClass, have_type), NULL, NULL,
g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_POINTER);

View file

@ -70,7 +70,7 @@ gst_xml_class_init (GstXMLClass *klass)
parent_class = g_type_class_ref (GST_TYPE_OBJECT);
gst_xml_signals[OBJECT_LOADED] =
g_signal_newc ("object_loaded", G_OBJECT_TYPE(gobject_class), G_SIGNAL_RUN_LAST,
g_signal_newc ("object_loaded", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstXMLClass, object_loaded), NULL, NULL,
gst_marshal_VOID__OBJECT_POINTER, G_TYPE_NONE, 2,
GST_TYPE_OBJECT, G_TYPE_POINTER);

View file

@ -51,8 +51,8 @@ enum {
static void gst_disksink_class_init (GstDiskSinkClass *klass);
static void gst_disksink_init (GstDiskSink *disksink);
static void gst_disksink_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksink_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_disksink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static gboolean gst_disksink_open_file (GstDiskSink *sink);
static void gst_disksink_close_file (GstDiskSink *sink);
@ -64,23 +64,23 @@ static GstElementStateReturn gst_disksink_change_state (GstElement *element);
static GstElementClass *parent_class = NULL;
static guint gst_disksink_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_disksink_get_type (void)
{
static GtkType disksink_type = 0;
static GType disksink_type = 0;
if (!disksink_type) {
static const GtkTypeInfo disksink_info = {
"GstDiskSink",
static const GTypeInfo disksink_info = {
sizeof(GstDiskSinkClass), NULL,
NULL,
(GClassInitFunc)gst_disksink_class_init,
NULL,
NULL,
sizeof(GstDiskSink),
sizeof(GstDiskSinkClass),
(GtkClassInitFunc)gst_disksink_class_init,
(GtkObjectInitFunc)gst_disksink_init,
(GtkArgSetFunc)gst_disksink_set_arg,
(GtkArgGetFunc)gst_disksink_get_arg,
(GtkClassInitFunc)NULL, /* deprecated, do not use ! */
0,
(GInstanceInitFunc)gst_disksink_init,
};
disksink_type = gtk_type_unique (GST_TYPE_ELEMENT, &disksink_info);
disksink_type = g_type_register_static (GST_TYPE_ELEMENT, "GstDiskSink", &disksink_info, 0);
}
return disksink_type;
}
@ -88,27 +88,25 @@ gst_disksink_get_type (void)
static void
gst_disksink_class_init (GstDiskSinkClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstDiskSink::location", GST_TYPE_FILENAME,
GTK_ARG_READWRITE, ARG_LOCATION);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_enum("location","location","location",
GST_TYPE_FILENAME,0,G_PARAM_READWRITE)); // CHECKME!
gst_disksink_signals[SIGNAL_HANDOFF] =
gtk_signal_new ("handoff", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstDiskSinkClass, handoff),
gtk_marshal_NONE__NONE, GTK_TYPE_NONE, 0);
g_signal_newc ("handoff", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstDiskSinkClass, handoff), NULL, NULL,
g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
gtk_object_class_add_signals (gtkobject_class, gst_disksink_signals,
LAST_SIGNAL);
gtkobject_class->set_arg = gst_disksink_set_arg;
gtkobject_class->get_arg = gst_disksink_get_arg;
gobject_class->set_property = gst_disksink_set_property;
gobject_class->get_property = gst_disksink_get_property;
gstelement_class->change_state = gst_disksink_change_state;
}
@ -126,21 +124,21 @@ gst_disksink_init (GstDiskSink *disksink)
}
static void
gst_disksink_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstDiskSink *sink;
/* it's not null if we got it, but it might not be ours */
sink = GST_DISKSINK (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must be stopped or paused in order to do this */
g_return_if_fail ((GST_STATE (sink) < GST_STATE_PLAYING)
|| (GST_STATE (sink) == GST_STATE_PAUSED));
if (sink->filename)
g_free (sink->filename);
sink->filename = g_strdup (GTK_VALUE_STRING (*arg));
sink->filename = g_strdup (g_value_get_string (value));
if ( (GST_STATE (sink) == GST_STATE_PAUSED)
&& (sink->filename != NULL))
{
@ -155,7 +153,7 @@ gst_disksink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_disksink_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstDiskSink *sink;
@ -164,12 +162,12 @@ gst_disksink_get_arg (GtkObject *object, GtkArg *arg, guint id)
sink = GST_DISKSINK (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATION:
GTK_VALUE_STRING (*arg) = sink->filename;
g_value_set_string (value, sink->filename);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -237,7 +235,7 @@ gst_disksink_chain (GstPad *pad, GstBuffer *buf)
}
gst_buffer_unref (buf);
gtk_signal_emit (GTK_OBJECT (disksink), gst_disksink_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (disksink), gst_disksink_signals[SIGNAL_HANDOFF], 0,
disksink);
}

View file

@ -40,13 +40,13 @@ GstElementDetails gst_disksink_details;
#define GST_TYPE_DISKSINK \
(gst_disksink_get_type())
#define GST_DISKSINK(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_DISKSINK,GstDiskSink))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DISKSINK,GstDiskSink))
#define GST_DISKSINK_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSINK,GstDiskSinkClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSINK,GstDiskSinkClass))
#define GST_IS_DISKSINK(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_DISKSINK))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISKSINK))
#define GST_IS_DISKSINK_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSINK))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSINK))
typedef struct _GstDiskSink GstDiskSink;
typedef struct _GstDiskSinkClass GstDiskSinkClass;
@ -71,7 +71,7 @@ struct _GstDiskSinkClass {
void (*handoff) (GstElement *element,GstPad *pad);
};
GtkType gst_disksink_get_type(void);
GType gst_disksink_get_type(void);
#ifdef __cplusplus

View file

@ -59,8 +59,8 @@ enum {
static void gst_disksrc_class_init (GstDiskSrcClass *klass);
static void gst_disksrc_init (GstDiskSrc *disksrc);
static void gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_disksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_disksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_disksrc_get (GstPad *pad);
static GstBuffer * gst_disksrc_get_region (GstPad *pad,GstRegionType type,guint64 offset,guint64 len);
@ -73,23 +73,23 @@ static void gst_disksrc_close_file (GstDiskSrc *src);
static GstElementClass *parent_class = NULL;
//static guint gst_disksrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_disksrc_get_type(void)
{
static GtkType disksrc_type = 0;
static GType disksrc_type = 0;
if (!disksrc_type) {
static const GtkTypeInfo disksrc_info = {
"GstDiskSrc",
static const GTypeInfo disksrc_info = {
sizeof(GstDiskSrcClass), NULL,
NULL,
(GClassInitFunc)gst_disksrc_class_init,
NULL,
NULL,
sizeof(GstDiskSrc),
sizeof(GstDiskSrcClass),
(GtkClassInitFunc)gst_disksrc_class_init,
(GtkObjectInitFunc)gst_disksrc_init,
(GtkArgSetFunc)gst_disksrc_set_arg,
(GtkArgGetFunc)gst_disksrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_disksrc_init,
};
disksrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &disksrc_info);
disksrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstDiskSrc", &disksrc_info, 0);
}
return disksrc_type;
}
@ -97,25 +97,29 @@ gst_disksrc_get_type(void)
static void
gst_disksrc_class_init (GstDiskSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstDiskSrc::location", GST_TYPE_FILENAME,
GTK_ARG_READWRITE, ARG_LOCATION);
gtk_object_add_arg_type ("GstDiskSrc::bytesperread", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BYTESPERREAD);
gtk_object_add_arg_type ("GstDiskSrc::offset", GTK_TYPE_LONG,
GTK_ARG_READWRITE, ARG_OFFSET);
gtk_object_add_arg_type ("GstDiskSrc::size", GTK_TYPE_LONG,
GTK_ARG_READABLE, ARG_SIZE);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_enum("location","location","location",
GST_TYPE_FILENAME,0,G_PARAM_READWRITE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BYTESPERREAD,
g_param_spec_int("bytesperread","bytesperread","bytesperread",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_OFFSET,
g_param_spec_long("offset","offset","offset",
G_MINLONG,G_MAXLONG,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SIZE,
g_param_spec_long("size","size","size",
G_MINLONG,G_MAXLONG,0,G_PARAM_READABLE)); // CHECKME
gtkobject_class->set_arg = gst_disksrc_set_arg;
gtkobject_class->get_arg = gst_disksrc_get_arg;
gobject_class->set_property = gst_disksrc_set_property;
gobject_class->get_property = gst_disksrc_get_property;
gstelement_class->change_state = gst_disksrc_change_state;
}
@ -142,7 +146,7 @@ gst_disksrc_init (GstDiskSrc *disksrc)
static void
gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstDiskSrc *src;
@ -151,7 +155,7 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_DISKSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must be stopped or paused in order to do this */
g_return_if_fail ((GST_STATE (src) < GST_STATE_PLAYING)
@ -159,12 +163,12 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
if (src->filename) g_free (src->filename);
/* clear the filename if we get a NULL (is that possible?) */
if (GTK_VALUE_STRING (*arg) == NULL) {
if (g_value_get_string (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->filename = NULL;
/* otherwise set the new filename */
} else {
src->filename = g_strdup (GTK_VALUE_STRING (*arg));
src->filename = g_strdup (g_value_get_string (value));
}
if ((GST_STATE (src) == GST_STATE_PAUSED) && (src->filename != NULL))
{
@ -173,10 +177,10 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_BYTESPERREAD:
src->bytes_per_read = GTK_VALUE_INT (*arg);
src->bytes_per_read = g_value_get_int (value);
break;
case ARG_OFFSET:
src->curoffset = GTK_VALUE_LONG (*arg);
src->curoffset = g_value_get_long (value);
src->new_seek = TRUE;
break;
default:
@ -185,7 +189,7 @@ gst_disksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_disksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_disksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstDiskSrc *src;
@ -194,21 +198,21 @@ gst_disksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_DISKSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATION:
GTK_VALUE_STRING (*arg) = src->filename;
g_value_set_string (value, src->filename);
break;
case ARG_BYTESPERREAD:
GTK_VALUE_INT (*arg) = src->bytes_per_read;
g_value_set_int (value, src->bytes_per_read);
break;
case ARG_OFFSET:
GTK_VALUE_LONG (*arg) = src->curoffset;
g_value_set_long (value, src->curoffset);
break;
case ARG_SIZE:
GTK_VALUE_LONG (*arg) = src->size;
g_value_set_long (value, src->size);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -38,13 +38,13 @@ GstElementDetails gst_disksrc_details;
#define GST_TYPE_DISKSRC \
(gst_disksrc_get_type())
#define GST_DISKSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_DISKSRC,GstDiskSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DISKSRC,GstDiskSrc))
#define GST_DISKSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSRC,GstDiskSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DISKSRC,GstDiskSrcClass))
#define GST_IS_DISKSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_DISKSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DISKSRC))
#define GST_IS_DISKSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DISKSRC))
typedef enum {
GST_DISKSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -81,7 +81,7 @@ struct _GstDiskSrcClass {
GstElementClass parent_class;
};
GtkType gst_disksrc_get_type(void);
GType gst_disksrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -42,7 +42,7 @@
struct _elements_entry {
gchar *name;
GtkType (*type) (void);
GType (*type) (void);
GstElementDetails *details;
gboolean (*factoryinit) (GstElementFactory *factory);
};

View file

@ -51,31 +51,31 @@ enum {
static void gst_fakesink_class_init (GstFakeSinkClass *klass);
static void gst_fakesink_init (GstFakeSink *fakesink);
static void gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesink_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fakesink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_fakesink_chain (GstPad *pad,GstBuffer *buf);
static GstElementClass *parent_class = NULL;
static guint gst_fakesink_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fakesink_get_type (void)
{
static GtkType fakesink_type = 0;
static GType fakesink_type = 0;
if (!fakesink_type) {
static const GtkTypeInfo fakesink_info = {
"GstFakeSink",
static const GTypeInfo fakesink_info = {
sizeof(GstFakeSinkClass), NULL,
NULL,
(GClassInitFunc)gst_fakesink_class_init,
NULL,
NULL,
sizeof(GstFakeSink),
sizeof(GstFakeSinkClass),
(GtkClassInitFunc)gst_fakesink_class_init,
(GtkObjectInitFunc)gst_fakesink_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fakesink_init,
};
fakesink_type = gtk_type_unique (GST_TYPE_ELEMENT, &fakesink_info);
fakesink_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFakeSink", &fakesink_info, 0);
}
return fakesink_type;
}
@ -83,28 +83,27 @@ gst_fakesink_get_type (void)
static void
gst_fakesink_class_init (GstFakeSinkClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFakeSink::num_sources", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_NUM_SOURCES);
gtk_object_add_arg_type ("GstFakeSink::silent", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_SILENT);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_SOURCES,
g_param_spec_int("num_sources","num_sources","num_sources",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SILENT,
g_param_spec_boolean("silent","silent","silent",
TRUE,G_PARAM_READWRITE)); // CHECKME
gst_fakesink_signals[SIGNAL_HANDOFF] =
gtk_signal_new ("handoff", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstFakeSinkClass, handoff),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
g_signal_newc ("handoff", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstFakeSinkClass, handoff), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_fakesink_signals,
LAST_SIGNAL);
gtkobject_class->set_arg = gst_fakesink_set_arg;
gtkobject_class->get_arg = gst_fakesink_get_arg;
gobject_class->set_property = gst_fakesink_set_property;
gobject_class->get_property = gst_fakesink_get_property;
}
static void
@ -123,7 +122,7 @@ gst_fakesink_init (GstFakeSink *fakesink)
}
static void
gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFakeSink *sink;
gint new_numsinks;
@ -132,9 +131,9 @@ gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
/* it's not null if we got it, but it might not be ours */
sink = GST_FAKESINK (object);
switch(id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
new_numsinks = GTK_VALUE_INT (*arg);
new_numsinks = g_value_get_int (value);
while (sink->numsinkpads < new_numsinks) {
pad = gst_pad_new (g_strdup_printf ("sink%d", sink->numsinkpads), GST_PAD_SINK);
gst_pad_set_chain_function (pad, gst_fakesink_chain);
@ -144,7 +143,7 @@ gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_SILENT:
sink->silent = GTK_VALUE_BOOL (*arg);
sink->silent = g_value_get_boolean (value);
break;
default:
break;
@ -152,7 +151,7 @@ gst_fakesink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_fakesink_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFakeSink *sink;
@ -161,15 +160,15 @@ gst_fakesink_get_arg (GtkObject *object, GtkArg *arg, guint id)
sink = GST_FAKESINK (object);
switch (id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
GTK_VALUE_INT (*arg) = sink->numsinkpads;
g_value_set_int (value, sink->numsinkpads);
break;
case ARG_SILENT:
GTK_VALUE_BOOL (*arg) = sink->silent;
g_value_set_boolean (value, sink->silent);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -195,7 +194,7 @@ gst_fakesink_chain (GstPad *pad, GstBuffer *buf)
if (!fakesink->silent)
g_print("fakesink: ******* (%s:%s)< (%d bytes) \n",GST_DEBUG_PAD_NAME(pad),GST_BUFFER_SIZE(buf));
gtk_signal_emit (GTK_OBJECT (fakesink), gst_fakesink_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (fakesink), gst_fakesink_signals[SIGNAL_HANDOFF], 0,
buf);
gst_buffer_unref (buf);

View file

@ -40,13 +40,13 @@ GstElementDetails gst_fakesink_details;
#define GST_TYPE_FAKESINK \
(gst_fakesink_get_type())
#define GST_FAKESINK(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FAKESINK,GstFakeSink))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FAKESINK,GstFakeSink))
#define GST_FAKESINK_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESINK,GstFakeSinkClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESINK,GstFakeSinkClass))
#define GST_IS_FAKESINK(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FAKESINK))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FAKESINK))
#define GST_IS_FAKESINK_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESINK))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESINK))
typedef struct _GstFakeSink GstFakeSink;
typedef struct _GstFakeSinkClass GstFakeSinkClass;
@ -66,7 +66,7 @@ struct _GstFakeSinkClass {
void (*handoff) (GstElement *element, GstBuffer *buf, GstPad *pad);
};
GtkType gst_fakesink_get_type(void);
GType gst_fakesink_get_type(void);
#ifdef __cplusplus

View file

@ -54,10 +54,10 @@ enum {
};
#define GST_TYPE_FAKESRC_OUTPUT (gst_fakesrc_output_get_type())
static GtkType
static GType
gst_fakesrc_output_get_type(void) {
static GtkType fakesrc_output_type = 0;
static GtkEnumValue fakesrc_output[] = {
static GType fakesrc_output_type = 0;
static GEnumValue fakesrc_output[] = {
{ FAKESRC_FIRST_LAST_LOOP, "1", "First-Last loop"},
{ FAKESRC_LAST_FIRST_LOOP, "2", "Last-First loop"},
{ FAKESRC_PING_PONG, "3", "Ping-Pong"},
@ -69,7 +69,7 @@ gst_fakesrc_output_get_type(void) {
{0, NULL, NULL},
};
if (!fakesrc_output_type) {
fakesrc_output_type = gtk_type_register_enum("GstFakeSrcOutput", fakesrc_output);
fakesrc_output_type = g_enum_register_static("GstFakeSrcOutput", fakesrc_output);
}
return fakesrc_output_type;
}
@ -77,8 +77,8 @@ gst_fakesrc_output_get_type(void) {
static void gst_fakesrc_class_init (GstFakeSrcClass *klass);
static void gst_fakesrc_init (GstFakeSrc *fakesrc);
static void gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fakesrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fakesrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer* gst_fakesrc_get (GstPad *pad);
static void gst_fakesrc_loop (GstElement *element);
@ -86,23 +86,22 @@ static void gst_fakesrc_loop (GstElement *element);
static GstElementClass *parent_class = NULL;
static guint gst_fakesrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fakesrc_get_type (void)
{
static GtkType fakesrc_type = 0;
static GType fakesrc_type = 0;
if (!fakesrc_type) {
static const GtkTypeInfo fakesrc_info = {
"GstFakeSrc",
static const GTypeInfo fakesrc_info = {
sizeof(GstFakeSrcClass), NULL, NULL,
(GClassInitFunc)gst_fakesrc_class_init,
NULL,
NULL,
sizeof(GstFakeSrc),
sizeof(GstFakeSrcClass),
(GtkClassInitFunc)gst_fakesrc_class_init,
(GtkObjectInitFunc)gst_fakesrc_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fakesrc_init,
};
fakesrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &fakesrc_info);
fakesrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFakeSrc", &fakesrc_info, 0);
}
return fakesrc_type;
}
@ -110,38 +109,42 @@ gst_fakesrc_get_type (void)
static void
gst_fakesrc_class_init (GstFakeSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFakeSrc::num_sources", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_NUM_SOURCES);
gtk_object_add_arg_type ("GstFakeSrc::loop_based", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_LOOP_BASED);
gtk_object_add_arg_type ("GstFakeSrc::output", GST_TYPE_FAKESRC_OUTPUT,
GTK_ARG_READWRITE, ARG_OUTPUT);
gtk_object_add_arg_type ("GstFakeSrc::pattern", GTK_TYPE_STRING,
GTK_ARG_READWRITE, ARG_PATTERN);
gtk_object_add_arg_type ("GstFakeSrc::num_buffers", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_NUM_BUFFERS);
gtk_object_add_arg_type ("GstFakeSrc::eos", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_EOS);
gtk_object_add_arg_type ("GstFakeSrc::silent", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_SILENT);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_SOURCES,
g_param_spec_int("num_sources","num_sources","num_sources",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOOP_BASED,
g_param_spec_boolean("loop_based","loop_based","loop_based",
TRUE,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_OUTPUT,
g_param_spec_enum("output","output","output",
GST_TYPE_FAKESRC_OUTPUT,0,G_PARAM_READWRITE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_PATTERN,
g_param_spec_string("pattern","pattern","pattern",
NULL, G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_BUFFERS,
g_param_spec_int("num_buffers","num_buffers","num_buffers",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_EOS,
g_param_spec_boolean("eos","eos","eos",
TRUE,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SILENT,
g_param_spec_boolean("silent","silent","silent",
TRUE,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_fakesrc_set_arg;
gtkobject_class->get_arg = gst_fakesrc_get_arg;
gobject_class->set_property = gst_fakesrc_set_property;
gobject_class->get_property = gst_fakesrc_get_property;
gst_fakesrc_signals[SIGNAL_HANDOFF] =
gtk_signal_new ("handoff", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstFakeSrcClass, handoff),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_fakesrc_signals,
LAST_SIGNAL);
g_signal_newc ("handoff", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstFakeSrcClass, handoff), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
}
static void
@ -192,7 +195,7 @@ gst_fakesrc_update_functions (GstFakeSrc *src)
}
static void
gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFakeSrc *src;
gint new_numsrcs;
@ -201,9 +204,9 @@ gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
/* it's not null if we got it, but it might not be ours */
src = GST_FAKESRC (object);
switch(id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
new_numsrcs = GTK_VALUE_INT (*arg);
new_numsrcs = g_value_get_int (value);
if (new_numsrcs > src->numsrcpads) {
while (src->numsrcpads != new_numsrcs) {
pad = gst_pad_new(g_strdup_printf("src%d",src->numsrcpads),GST_PAD_SRC);
@ -215,7 +218,7 @@ gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_LOOP_BASED:
src->loop_based = GTK_VALUE_BOOL (*arg);
src->loop_based = g_value_get_boolean (value);
gst_fakesrc_update_functions (src);
break;
case ARG_OUTPUT:
@ -223,14 +226,14 @@ gst_fakesrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
case ARG_PATTERN:
break;
case ARG_NUM_BUFFERS:
src->num_buffers = GTK_VALUE_INT (*arg);
src->num_buffers = g_value_get_int (value);
break;
case ARG_EOS:
src->eos = GTK_VALUE_BOOL (*arg);
src->eos = g_value_get_boolean (value);
GST_INFO (0, "will EOS on next buffer");
break;
case ARG_SILENT:
src->silent = GTK_VALUE_BOOL (*arg);
src->silent = g_value_get_boolean (value);
break;
default:
break;
@ -238,7 +241,7 @@ GST_INFO (0, "will EOS on next buffer");
}
static void
gst_fakesrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fakesrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFakeSrc *src;
@ -247,29 +250,30 @@ gst_fakesrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_FAKESRC (object);
switch (id) {
switch (prop_id) {
case ARG_NUM_SOURCES:
GTK_VALUE_INT (*arg) = src->numsrcpads;
g_value_set_int (value, src->numsrcpads);
break;
case ARG_LOOP_BASED:
GTK_VALUE_BOOL (*arg) = src->loop_based;
g_value_set_boolean (value, src->loop_based);
break;
case ARG_OUTPUT:
GTK_VALUE_INT (*arg) = src->output;
g_value_set_int (value, src->output);
break;
case ARG_PATTERN:
GTK_VALUE_STRING (*arg) = src->pattern;
g_value_set_string (value, src->pattern);
break;
case ARG_NUM_BUFFERS:
GTK_VALUE_INT (*arg) = src->num_buffers;
g_value_set_int (value, src->num_buffers);
break;
case ARG_EOS:
GTK_VALUE_BOOL (*arg) = src->eos;
g_value_set_boolean (value, src->eos);
break;
case ARG_SILENT:
GTK_VALUE_BOOL (*arg) = src->silent;
g_value_set_boolean (value, src->silent);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -314,7 +318,7 @@ gst_fakesrc_get(GstPad *pad)
g_print("fakesrc: ******* (%s:%s)> \n",GST_DEBUG_PAD_NAME(pad));
buf = gst_buffer_new();
gtk_signal_emit (GTK_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF], 0,
buf);
return buf;
@ -364,7 +368,7 @@ gst_fakesrc_loop(GstElement *element)
if (!src->silent)
g_print("fakesrc: ******* (%s:%s)> \n",GST_DEBUG_PAD_NAME(pad));
gtk_signal_emit (GTK_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF],
g_signal_emit (G_OBJECT (src), gst_fakesrc_signals[SIGNAL_HANDOFF], 0,
buf);
gst_pad_push (pad, buf);

View file

@ -50,13 +50,13 @@ typedef enum {
#define GST_TYPE_FAKESRC \
(gst_fakesrc_get_type())
#define GST_FAKESRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FAKESRC,GstFakeSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FAKESRC,GstFakeSrc))
#define GST_FAKESRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESRC,GstFakeSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FAKESRC,GstFakeSrcClass))
#define GST_IS_FAKESRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FAKESRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FAKESRC))
#define GST_IS_FAKESRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FAKESRC))
typedef struct _GstFakeSrc GstFakeSrc;
typedef struct _GstFakeSrcClass GstFakeSrcClass;
@ -82,7 +82,7 @@ struct _GstFakeSrcClass {
void (*handoff) (GstElement *element, GstBuffer *buf, GstPad *pad);
};
GtkType gst_fakesrc_get_type(void);
GType gst_fakesrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -49,31 +49,31 @@ enum {
static void gst_fdsink_class_init (GstFdSinkClass *klass);
static void gst_fdsink_init (GstFdSink *fdsink);
static void gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsink_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fdsink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_fdsink_chain (GstPad *pad,GstBuffer *buf);
static GstElementClass *parent_class = NULL;
//static guint gst_fdsink_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fdsink_get_type (void)
{
static GtkType fdsink_type = 0;
static GType fdsink_type = 0;
if (!fdsink_type) {
static const GtkTypeInfo fdsink_info = {
"GstFdSink",
static const GTypeInfo fdsink_info = {
sizeof(GstFdSinkClass), NULL,
NULL,
(GClassInitFunc)gst_fdsink_class_init,
NULL,
NULL,
sizeof(GstFdSink),
sizeof(GstFdSinkClass),
(GtkClassInitFunc)gst_fdsink_class_init,
(GtkObjectInitFunc)gst_fdsink_init,
(GtkArgSetFunc)gst_fdsink_set_arg,
(GtkArgGetFunc)gst_fdsink_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fdsink_init,
};
fdsink_type = gtk_type_unique (GST_TYPE_ELEMENT, &fdsink_info);
fdsink_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFdSink", &fdsink_info, 0);
}
return fdsink_type;
}
@ -81,17 +81,18 @@ gst_fdsink_get_type (void)
static void
gst_fdsink_class_init (GstFdSinkClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFdSink::fd", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_FD);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_FD,
g_param_spec_int("fd","fd","fd",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_fdsink_set_arg;
gtkobject_class->get_arg = gst_fdsink_get_arg;
gobject_class->set_property = gst_fdsink_set_property;
gobject_class->get_property = gst_fdsink_get_property;
}
static void
@ -126,7 +127,7 @@ gst_fdsink_chain (GstPad *pad, GstBuffer *buf)
}
static void
gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsink_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFdSink *fdsink;
@ -135,9 +136,9 @@ gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id)
fdsink = GST_FDSINK (object);
switch(id) {
switch (prop_id) {
case ARG_FD:
fdsink->fd = GTK_VALUE_INT (*arg);
fdsink->fd = g_value_get_int (value);
break;
default:
break;
@ -145,7 +146,7 @@ gst_fdsink_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_fdsink_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsink_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFdSink *fdsink;
@ -154,9 +155,9 @@ gst_fdsink_get_arg (GtkObject *object, GtkArg *arg, guint id)
fdsink = GST_FDSINK (object);
switch(id) {
switch (prop_id) {
case ARG_FD:
GTK_VALUE_INT (*arg) = fdsink->fd;
g_value_set_int (value, fdsink->fd);
break;
default:
break;

View file

@ -40,13 +40,13 @@ GstElementDetails gst_fdsink_details;
#define GST_TYPE_FDSINK \
(gst_fdsink_get_type())
#define GST_FDSINK(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FDSINK,GstFdSink))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FDSINK,GstFdSink))
#define GST_FDSINK_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FDSINK,GstFdSinkClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FDSINK,GstFdSinkClass))
#define GST_IS_FDSINK(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FDSINK))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FDSINK))
#define GST_IS_FDSINK_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSINK))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSINK))
typedef struct _GstFdSink GstFdSink;
typedef struct _GstFdSinkClass GstFdSinkClass;
@ -63,7 +63,7 @@ struct _GstFdSinkClass {
GstElementClass parent_class;
};
GtkType gst_fdsink_get_type(void);
GType gst_fdsink_get_type(void);
#ifdef __cplusplus

View file

@ -57,8 +57,8 @@ enum {
static void gst_fdsrc_class_init (GstFdSrcClass *klass);
static void gst_fdsrc_init (GstFdSrc *fdsrc);
static void gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_fdsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_fdsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_fdsrc_get (GstPad *pad);
@ -66,23 +66,23 @@ static GstBuffer * gst_fdsrc_get (GstPad *pad);
static GstElementClass *parent_class = NULL;
//static guint gst_fdsrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_fdsrc_get_type (void)
{
static GtkType fdsrc_type = 0;
static GType fdsrc_type = 0;
if (!fdsrc_type) {
static const GtkTypeInfo fdsrc_info = {
"GstFdSrc",
static const GTypeInfo fdsrc_info = {
sizeof(GstFdSrcClass), NULL,
NULL,
(GClassInitFunc)gst_fdsrc_class_init,
NULL,
NULL,
sizeof(GstFdSrc),
sizeof(GstFdSrcClass),
(GtkClassInitFunc)gst_fdsrc_class_init,
(GtkObjectInitFunc)gst_fdsrc_init,
(GtkArgSetFunc)gst_fdsrc_set_arg,
(GtkArgGetFunc)gst_fdsrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_fdsrc_init,
};
fdsrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &fdsrc_info);
fdsrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstFdSrc", &fdsrc_info, 0);
}
return fdsrc_type;
}
@ -90,21 +90,24 @@ gst_fdsrc_get_type (void)
static void
gst_fdsrc_class_init (GstFdSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstFdSrc::location", GST_TYPE_FILENAME,
GTK_ARG_WRITABLE, ARG_LOCATION);
gtk_object_add_arg_type ("GstFdSrc::bytesperread", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BYTESPERREAD);
gtk_object_add_arg_type ("GstFdSrc::offset", GTK_TYPE_INT,
GTK_ARG_READABLE, ARG_OFFSET);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_enum("location","location","location",
GST_TYPE_FILENAME,0,G_PARAM_WRITABLE)); // CHECKME!
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BYTESPERREAD,
g_param_spec_int("bytesperread","bytesperread","bytesperread",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_OFFSET,
g_param_spec_int("offset","offset","offset",
G_MININT,G_MAXINT,0,G_PARAM_READABLE)); // CHECKME
gtkobject_class->set_arg = gst_fdsrc_set_arg;
gtkobject_class->get_arg = gst_fdsrc_get_arg;
gobject_class->set_property = gst_fdsrc_set_property;
gobject_class->get_property = gst_fdsrc_get_property;
}
static void gst_fdsrc_init(GstFdSrc *fdsrc) {
@ -120,7 +123,7 @@ static void gst_fdsrc_init(GstFdSrc *fdsrc) {
static void
gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstFdSrc *src;
int fd;
@ -130,23 +133,23 @@ gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_FDSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must not be playing in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
/* if we get a NULL, consider it to be a fd of 0 */
if (GTK_VALUE_STRING (*arg) == NULL) {
if (g_value_get_string (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->fd = 0;
/* otherwise set the new filename */
} else {
if (sscanf (GTK_VALUE_STRING (*arg), "%d", &fd))
if (sscanf (g_value_get_string (value), "%d", &fd))
src->fd = fd;
}
break;
case ARG_BYTESPERREAD:
src->bytes_per_read = GTK_VALUE_INT (*arg);
src->bytes_per_read = g_value_get_int (value);
break;
default:
break;
@ -154,7 +157,7 @@ gst_fdsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_fdsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_fdsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstFdSrc *src;
@ -163,15 +166,15 @@ gst_fdsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_FDSRC (object);
switch (id) {
switch (prop_id) {
case ARG_BYTESPERREAD:
GTK_VALUE_INT (*arg) = src->bytes_per_read;
g_value_set_int (value, src->bytes_per_read);
break;
case ARG_OFFSET:
GTK_VALUE_INT (*arg) = src->curoffset;
g_value_set_int (value, src->curoffset);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -40,13 +40,13 @@ GstElementDetails gst_fdsrc_details;
#define GST_TYPE_FDSRC \
(gst_fdsrc_get_type())
#define GST_FDSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_FDSRC,GstFdSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FDSRC,GstFdSrc))
#define GST_FDSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_FDSRC,GstFdSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FDSRC,GstFdSrcClass))
#define GST_IS_FDSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_FDSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FDSRC))
#define GST_IS_FDSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FDSRC))
typedef struct _GstFdSrc GstFdSrc;
@ -70,7 +70,7 @@ struct _GstFdSrcClass {
GstElementClass parent_class;
};
GtkType gst_fdsrc_get_type(void);
GType gst_fdsrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -54,8 +54,8 @@ enum {
static void gst_httpsrc_class_init (GstHttpSrcClass *klass);
static void gst_httpsrc_init (GstHttpSrc *httpsrc);
static void gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_httpsrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_httpsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_httpsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstElementStateReturn gst_httpsrc_change_state (GstElement *element);
static GstBuffer * gst_httpsrc_get (GstPad *pad);
@ -67,23 +67,23 @@ static void gst_httpsrc_close_url (GstHttpSrc *src);
static GstElementClass *parent_class = NULL;
//static guint gst_httpsrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_httpsrc_get_type (void)
{
static GtkType httpsrc_type = 0;
static GType httpsrc_type = 0;
if (!httpsrc_type) {
static const GtkTypeInfo httpsrc_info = {
"GstHttpSrc",
static const GTypeInfo httpsrc_info = {
sizeof(GstHttpSrcClass), NULL,
NULL,
(GClassInitFunc)gst_httpsrc_class_init,
NULL,
NULL,
sizeof(GstHttpSrc),
sizeof(GstHttpSrcClass),
(GtkClassInitFunc)gst_httpsrc_class_init,
(GtkObjectInitFunc)gst_httpsrc_init,
(GtkArgSetFunc)gst_httpsrc_set_arg,
(GtkArgGetFunc)gst_httpsrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_httpsrc_init,
};
httpsrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &httpsrc_info);
httpsrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstHttpSrc", &httpsrc_info, 0);
}
return httpsrc_type;
}
@ -91,22 +91,24 @@ gst_httpsrc_get_type (void)
static void
gst_httpsrc_class_init (GstHttpSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstHttpSrc::location", GTK_TYPE_STRING,
GTK_ARG_READWRITE, ARG_LOCATION);
gtk_object_add_arg_type ("GstHttpSrc::bytesperread", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BYTESPERREAD);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATION,
g_param_spec_string("location","location","location",
NULL, G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BYTESPERREAD,
g_param_spec_int("bytesperread","bytesperread","bytesperread",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_httpsrc_set_arg;
gtkobject_class->get_arg = gst_httpsrc_get_arg;
gobject_class->set_property = gst_httpsrc_set_property;
gobject_class->get_property = gst_httpsrc_get_property;
gstelement_class->change_state = gst_httpsrc_change_state;
}
@ -197,7 +199,7 @@ gst_httpsrc_close_url (GstHttpSrc *src)
}
static void
gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_httpsrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstHttpSrc *src;
@ -206,23 +208,23 @@ gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_HTTPSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATION:
/* the element must not be playing in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
if (src->url) g_free (src->url);
/* clear the url if we get a NULL (is that possible?) */
if (GTK_VALUE_STRING (*arg) == NULL) {
if (g_value_get_string (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object),GST_STATE_NULL);
src->url = NULL;
/* otherwise set the new url */
} else {
src->url = g_strdup (GTK_VALUE_STRING (*arg));
src->url = g_strdup (g_value_get_string (value));
}
break;
case ARG_BYTESPERREAD:
src->bytes_per_read = GTK_VALUE_INT (*arg);
src->bytes_per_read = g_value_get_int (value);
break;
default:
break;
@ -230,7 +232,7 @@ gst_httpsrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_httpsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_httpsrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstHttpSrc *httpsrc;
@ -239,15 +241,15 @@ gst_httpsrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
httpsrc = GST_HTTPSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATION:
GTK_VALUE_STRING (*arg) = httpsrc->url;
g_value_set_string (value, httpsrc->url);
break;
case ARG_BYTESPERREAD:
GTK_VALUE_INT (*arg) = httpsrc->bytes_per_read;
g_value_set_int (value, httpsrc->bytes_per_read);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -42,13 +42,13 @@ GstElementDetails gst_httpsrc_details;
#define GST_TYPE_HTTPSRC \
(gst_httpsrc_get_type())
#define GST_HTTPSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_HTTPSRC,GstHttpSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_HTTPSRC,GstHttpSrc))
#define GST_HTTPSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_HTTPSRC,GstHttpSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_HTTPSRC,GstHttpSrcClass))
#define GST_IS_HTTPSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_HTTPSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_HTTPSRC))
#define GST_IS_HTTPSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_HTTPSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_HTTPSRC))
typedef enum {
GST_HTTPSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -76,7 +76,7 @@ struct _GstHttpSrcClass {
GstElementClass parent_class;
};
GtkType gst_httpsrc_get_type(void);
GType gst_httpsrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -51,31 +51,31 @@ enum {
static void gst_identity_class_init (GstIdentityClass *klass);
static void gst_identity_init (GstIdentity *identity);
static void gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_identity_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_identity_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_identity_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_identity_chain (GstPad *pad, GstBuffer *buf);
static GstElementClass *parent_class = NULL;
//static guint gst_identity_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_identity_get_type (void)
{
static GtkType identity_type = 0;
static GType identity_type = 0;
if (!identity_type) {
static const GtkTypeInfo identity_info = {
"GstIdentity",
static const GTypeInfo identity_info = {
sizeof(GstIdentityClass), NULL,
NULL,
(GClassInitFunc)gst_identity_class_init,
NULL,
NULL,
sizeof(GstIdentity),
sizeof(GstIdentityClass),
(GtkClassInitFunc)gst_identity_class_init,
(GtkObjectInitFunc)gst_identity_init,
(GtkArgSetFunc)gst_identity_set_arg,
(GtkArgGetFunc)gst_identity_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_identity_init,
};
identity_type = gtk_type_unique (GST_TYPE_ELEMENT, &identity_info);
identity_type = g_type_register_static (GST_TYPE_ELEMENT, "GstIdentity", &identity_info, 0);
}
return identity_type;
}
@ -83,21 +83,24 @@ gst_identity_get_type (void)
static void
gst_identity_class_init (GstIdentityClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstIdentity::loop_based", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_LOOP_BASED);
gtk_object_add_arg_type ("GstIdentity::sleep_time", GTK_TYPE_UINT,
GTK_ARG_READWRITE, ARG_SLEEP_TIME);
gtk_object_add_arg_type ("GstIdentity::silent", GTK_TYPE_BOOL,
GTK_ARG_READWRITE, ARG_SILENT);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOOP_BASED,
g_param_spec_boolean("loop_based","loop_based","loop_based",
TRUE,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SLEEP_TIME,
g_param_spec_uint("sleep_time","sleep_time","sleep_time",
0,G_MAXUINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SILENT,
g_param_spec_boolean("silent","silent","silent",
TRUE,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_identity_set_arg;
gtkobject_class->get_arg = gst_identity_get_arg;
gobject_class->set_property = gst_identity_set_property;
gobject_class->get_property = gst_identity_get_property;
}
static GstBufferPool*
@ -193,7 +196,7 @@ gst_identity_loop (GstElement *element)
}
static void
gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_identity_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstIdentity *identity;
@ -202,9 +205,9 @@ gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id)
identity = GST_IDENTITY (object);
switch(id) {
switch (prop_id) {
case ARG_LOOP_BASED:
identity->loop_based = GTK_VALUE_BOOL (*arg);
identity->loop_based = g_value_get_boolean (value);
if (identity->loop_based) {
gst_element_set_loop_function (GST_ELEMENT (identity), gst_identity_loop);
gst_pad_set_chain_function (identity->sinkpad, NULL);
@ -215,17 +218,17 @@ gst_identity_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
break;
case ARG_SLEEP_TIME:
identity->sleep_time = GTK_VALUE_UINT (*arg);
identity->sleep_time = g_value_get_uint (value);
break;
case ARG_SILENT:
identity->silent = GTK_VALUE_BOOL (*arg);
identity->silent = g_value_get_boolean (value);
break;
default:
break;
}
}
static void gst_identity_get_arg(GtkObject *object,GtkArg *arg,guint id) {
static void gst_identity_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) {
GstIdentity *identity;
/* it's not null if we got it, but it might not be ours */
@ -233,18 +236,18 @@ static void gst_identity_get_arg(GtkObject *object,GtkArg *arg,guint id) {
identity = GST_IDENTITY (object);
switch (id) {
switch (prop_id) {
case ARG_LOOP_BASED:
GTK_VALUE_BOOL (*arg) = identity->loop_based;
g_value_set_boolean (value, identity->loop_based);
break;
case ARG_SLEEP_TIME:
GTK_VALUE_UINT (*arg) = identity->sleep_time;
g_value_set_uint (value, identity->sleep_time);
break;
case ARG_SILENT:
GTK_VALUE_BOOL (*arg) = identity->silent;
g_value_set_boolean (value, identity->silent);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -40,13 +40,13 @@ GstElementDetails gst_identity_details;
#define GST_TYPE_IDENTITY \
(gst_identity_get_type())
#define GST_IDENTITY(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_IDENTITY,GstIdentity))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_IDENTITY,GstIdentity))
#define GST_IDENTITY_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_IDENTITY,GstIdentityClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_IDENTITY,GstIdentityClass))
#define GST_IS_IDENTITY(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_IDENTITY))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_IDENTITY))
#define GST_IS_IDENTITY_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_IDENTITY))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_IDENTITY))
typedef struct _GstIdentity GstIdentity;
typedef struct _GstIdentityClass GstIdentityClass;
@ -67,7 +67,7 @@ struct _GstIdentityClass {
GstElementClass parent_class;
};
GtkType gst_identity_get_type(void);
GType gst_identity_get_type(void);
#ifdef __cplusplus

View file

@ -54,8 +54,8 @@ enum {
static void gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass);
static void gst_multidisksrc_init (GstMultiDiskSrc *disksrc);
static void gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_multidisksrc_get (GstPad *pad);
//static GstBuffer * gst_multidisksrc_get_region (GstPad *pad,GstRegionType type,guint64 offset,guint64 len);
@ -68,23 +68,23 @@ static void gst_multidisksrc_close_file (GstMultiDiskSrc *src);
static GstElementClass *parent_class = NULL;
static guint gst_multidisksrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_multidisksrc_get_type(void)
{
static GtkType multidisksrc_type = 0;
static GType multidisksrc_type = 0;
if (!multidisksrc_type) {
static const GtkTypeInfo multidisksrc_info = {
"GstMultiDiskSrc",
static const GTypeInfo multidisksrc_info = {
sizeof(GstMultiDiskSrcClass), NULL,
NULL,
(GClassInitFunc)gst_multidisksrc_class_init,
NULL,
NULL,
sizeof(GstMultiDiskSrc),
sizeof(GstMultiDiskSrcClass),
(GtkClassInitFunc)gst_multidisksrc_class_init,
(GtkObjectInitFunc)gst_multidisksrc_init,
(GtkArgSetFunc)gst_multidisksrc_set_arg,
(GtkArgGetFunc)gst_multidisksrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_multidisksrc_init,
};
multidisksrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &multidisksrc_info);
multidisksrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstMultiDiskSrc", &multidisksrc_info, 0);
}
return multidisksrc_type;
}
@ -92,26 +92,26 @@ gst_multidisksrc_get_type(void)
static void
gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gst_multidisksrc_signals[NEW_FILE] =
gtk_signal_new ("new_file", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstMultiDiskSrcClass, new_file),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_multidisksrc_signals, LAST_SIGNAL);
g_signal_newc ("new_file", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstMultiDiskSrcClass, new_file), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gtk_object_add_arg_type ("GstMultiDiskSrc::locations", GTK_TYPE_POINTER,
GTK_ARG_READWRITE, ARG_LOCATIONS);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATIONS,
g_param_spec_string("locations","locations","locations",
NULL, G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_multidisksrc_set_arg;
gtkobject_class->get_arg = gst_multidisksrc_get_arg;
gobject_class->set_property = gst_multidisksrc_set_property;
gobject_class->get_property = gst_multidisksrc_get_property;
gstelement_class->change_state = gst_multidisksrc_change_state;
}
@ -135,7 +135,7 @@ gst_multidisksrc_init (GstMultiDiskSrc *multidisksrc)
}
static void
gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -144,18 +144,18 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATIONS:
/* the element must be stopped in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
/* clear the filename if we get a NULL */
if (GTK_VALUE_POINTER (*arg) == NULL) {
if (g_value_get_pointer (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->listptr = NULL;
/* otherwise set the new filenames */
} else {
src->listptr = GTK_VALUE_POINTER(*arg);
src->listptr = g_value_get_pointer (value);
}
break;
default:
@ -164,7 +164,7 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -173,12 +173,12 @@ gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATIONS:
GTK_VALUE_POINTER (*arg) = src->listptr;
g_value_set_pointer (value, src->listptr);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -215,7 +215,7 @@ gst_multidisksrc_get (GstPad *pad)
return NULL;
// emitted after the open, as the user may free the list and string from here
gtk_signal_emit(GTK_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], list);
g_signal_emit(G_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], 0, list);
/* create the buffer */
// FIXME: should eventually use a bufferpool for this

View file

@ -35,13 +35,13 @@ GstElementDetails gst_multidisksrc_details;
#define GST_TYPE_MULTIDISKSRC \
(gst_multidisksrc_get_type())
#define GST_MULTIDISKSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
#define GST_MULTIDISKSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
#define GST_IS_MULTIDISKSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_MULTIDISKSRC))
#define GST_IS_MULTIDISKSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
typedef enum {
GST_MULTIDISKSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -75,7 +75,7 @@ struct _GstMultiDiskSrcClass {
void (*new_file) (GstMultiDiskSrc *multidisksrc, gchar *newfilename);
};
GtkType gst_multidisksrc_get_type(void);
GType gst_multidisksrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -54,8 +54,8 @@ enum {
static void gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass);
static void gst_multidisksrc_init (GstMultiDiskSrc *disksrc);
static void gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer * gst_multidisksrc_get (GstPad *pad);
//static GstBuffer * gst_multidisksrc_get_region (GstPad *pad,GstRegionType type,guint64 offset,guint64 len);
@ -68,23 +68,23 @@ static void gst_multidisksrc_close_file (GstMultiDiskSrc *src);
static GstElementClass *parent_class = NULL;
static guint gst_multidisksrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_multidisksrc_get_type(void)
{
static GtkType multidisksrc_type = 0;
static GType multidisksrc_type = 0;
if (!multidisksrc_type) {
static const GtkTypeInfo multidisksrc_info = {
"GstMultiDiskSrc",
static const GTypeInfo multidisksrc_info = {
sizeof(GstMultiDiskSrcClass), NULL,
NULL,
(GClassInitFunc)gst_multidisksrc_class_init,
NULL,
NULL,
sizeof(GstMultiDiskSrc),
sizeof(GstMultiDiskSrcClass),
(GtkClassInitFunc)gst_multidisksrc_class_init,
(GtkObjectInitFunc)gst_multidisksrc_init,
(GtkArgSetFunc)gst_multidisksrc_set_arg,
(GtkArgGetFunc)gst_multidisksrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_multidisksrc_init,
};
multidisksrc_type = gtk_type_unique (GST_TYPE_ELEMENT, &multidisksrc_info);
multidisksrc_type = g_type_register_static (GST_TYPE_ELEMENT, "GstMultiDiskSrc", &multidisksrc_info, 0);
}
return multidisksrc_type;
}
@ -92,26 +92,26 @@ gst_multidisksrc_get_type(void)
static void
gst_multidisksrc_class_init (GstMultiDiskSrcClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class (GST_TYPE_ELEMENT);
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gst_multidisksrc_signals[NEW_FILE] =
gtk_signal_new ("new_file", GTK_RUN_LAST, gtkobject_class->type,
GTK_SIGNAL_OFFSET (GstMultiDiskSrcClass, new_file),
gtk_marshal_NONE__POINTER, GTK_TYPE_NONE, 1,
GTK_TYPE_POINTER);
gtk_object_class_add_signals (gtkobject_class, gst_multidisksrc_signals, LAST_SIGNAL);
g_signal_newc ("new_file", G_TYPE_FROM_CLASS(klass), G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GstMultiDiskSrcClass, new_file), NULL, NULL,
g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1,
G_TYPE_POINTER);
gtk_object_add_arg_type ("GstMultiDiskSrc::locations", GTK_TYPE_POINTER,
GTK_ARG_READWRITE, ARG_LOCATIONS);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_LOCATIONS,
g_param_spec_string("locations","locations","locations",
NULL, G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_multidisksrc_set_arg;
gtkobject_class->get_arg = gst_multidisksrc_get_arg;
gobject_class->set_property = gst_multidisksrc_set_property;
gobject_class->get_property = gst_multidisksrc_get_property;
gstelement_class->change_state = gst_multidisksrc_change_state;
}
@ -135,7 +135,7 @@ gst_multidisksrc_init (GstMultiDiskSrc *multidisksrc)
}
static void
gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -144,18 +144,18 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch(id) {
switch (prop_id) {
case ARG_LOCATIONS:
/* the element must be stopped in order to do this */
g_return_if_fail (GST_STATE (src) < GST_STATE_PLAYING);
/* clear the filename if we get a NULL */
if (GTK_VALUE_POINTER (*arg) == NULL) {
if (g_value_get_pointer (value) == NULL) {
gst_element_set_state (GST_ELEMENT (object), GST_STATE_NULL);
src->listptr = NULL;
/* otherwise set the new filenames */
} else {
src->listptr = GTK_VALUE_POINTER(*arg);
src->listptr = g_value_get_pointer (value);
}
break;
default:
@ -164,7 +164,7 @@ gst_multidisksrc_set_arg (GtkObject *object, GtkArg *arg, guint id)
}
static void
gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_multidisksrc_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstMultiDiskSrc *src;
@ -173,12 +173,12 @@ gst_multidisksrc_get_arg (GtkObject *object, GtkArg *arg, guint id)
src = GST_MULTIDISKSRC (object);
switch (id) {
switch (prop_id) {
case ARG_LOCATIONS:
GTK_VALUE_POINTER (*arg) = src->listptr;
g_value_set_pointer (value, src->listptr);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
@ -215,7 +215,7 @@ gst_multidisksrc_get (GstPad *pad)
return NULL;
// emitted after the open, as the user may free the list and string from here
gtk_signal_emit(GTK_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], list);
g_signal_emit(G_OBJECT(src), gst_multidisksrc_signals[NEW_FILE], 0, list);
/* create the buffer */
// FIXME: should eventually use a bufferpool for this

View file

@ -35,13 +35,13 @@ GstElementDetails gst_multidisksrc_details;
#define GST_TYPE_MULTIDISKSRC \
(gst_multidisksrc_get_type())
#define GST_MULTIDISKSRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrc))
#define GST_MULTIDISKSRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_MULTIDISKSRC,GstMultiDiskSrcClass))
#define GST_IS_MULTIDISKSRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_MULTIDISKSRC))
#define GST_IS_MULTIDISKSRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_MULTIDISKSRC))
typedef enum {
GST_MULTIDISKSRC_OPEN = GST_ELEMENT_FLAG_LAST,
@ -75,7 +75,7 @@ struct _GstMultiDiskSrcClass {
void (*new_file) (GstMultiDiskSrc *multidisksrc, gchar *newfilename);
};
GtkType gst_multidisksrc_get_type(void);
GType gst_multidisksrc_get_type(void);
#ifdef __cplusplus
}

View file

@ -59,8 +59,8 @@ enum {
static void gst_pipefilter_class_init (GstPipefilterClass *klass);
static void gst_pipefilter_init (GstPipefilter *pipefilter);
static void gst_pipefilter_set_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_pipefilter_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_pipefilter_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_pipefilter_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static GstBuffer* gst_pipefilter_get (GstPad *pad);
static void gst_pipefilter_chain (GstPad *pad, GstBuffer *buf);
@ -71,23 +71,23 @@ static GstElementStateReturn gst_pipefilter_change_state (GstElement *element);
static GstElementClass *parent_class = NULL;
//static guint gst_pipefilter_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_pipefilter_get_type (void)
{
static GtkType pipefilter_type = 0;
static GType pipefilter_type = 0;
if (!pipefilter_type) {
static const GtkTypeInfo pipefilter_info = {
"GstPipefilter",
static const GTypeInfo pipefilter_info = {
sizeof(GstPipefilterClass), NULL,
NULL,
(GClassInitFunc)gst_pipefilter_class_init,
NULL,
NULL,
sizeof(GstPipefilter),
sizeof(GstPipefilterClass),
(GtkClassInitFunc)gst_pipefilter_class_init,
(GtkObjectInitFunc)gst_pipefilter_init,
(GtkArgSetFunc)gst_pipefilter_set_arg,
(GtkArgGetFunc)gst_pipefilter_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_pipefilter_init,
};
pipefilter_type = gtk_type_unique(GST_TYPE_ELEMENT,&pipefilter_info);
pipefilter_type = g_type_register_static(GST_TYPE_ELEMENT, "GstPipefilter", &pipefilter_info, 0);
}
return pipefilter_type;
}
@ -95,21 +95,22 @@ gst_pipefilter_get_type (void)
static void
gst_pipefilter_class_init (GstPipefilterClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gstelement_class->change_state = gst_pipefilter_change_state;
gtk_object_add_arg_type("GstPipefilter::command", GTK_TYPE_STRING,
GTK_ARG_READWRITE, ARG_COMMAND);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_COMMAND,
g_param_spec_string("command","command","command",
NULL, G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_pipefilter_set_arg;
gtkobject_class->get_arg = gst_pipefilter_get_arg;
gobject_class->set_property = gst_pipefilter_set_property;
gobject_class->get_property = gst_pipefilter_get_property;
}
static void
@ -219,7 +220,7 @@ gst_pipefilter_chain (GstPad *pad,GstBuffer *buf)
}
static void
gst_pipefilter_set_arg (GtkObject *object,GtkArg *arg,guint id)
gst_pipefilter_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
{
GstPipefilter *pipefilter;
@ -227,10 +228,10 @@ gst_pipefilter_set_arg (GtkObject *object,GtkArg *arg,guint id)
g_return_if_fail(GST_IS_PIPEFILTER(object));
pipefilter = GST_PIPEFILTER(object);
switch(id) {
switch (prop_id) {
case ARG_COMMAND:
pipefilter->orig_command = g_strdup(GTK_VALUE_STRING(*arg));
pipefilter->command = g_strsplit(GTK_VALUE_STRING(*arg), " ", 0);
pipefilter->orig_command = g_strdup(g_value_get_string (value));
pipefilter->command = g_strsplit(g_value_get_string (value), " ", 0);
break;
default:
break;
@ -238,7 +239,7 @@ gst_pipefilter_set_arg (GtkObject *object,GtkArg *arg,guint id)
}
static void
gst_pipefilter_get_arg (GtkObject *object,GtkArg *arg,guint id)
gst_pipefilter_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstPipefilter *pipefilter;
@ -246,12 +247,12 @@ gst_pipefilter_get_arg (GtkObject *object,GtkArg *arg,guint id)
g_return_if_fail(GST_IS_PIPEFILTER(object));
pipefilter = GST_PIPEFILTER(object);
switch (id) {
switch (prop_id) {
case ARG_COMMAND:
GTK_VALUE_STRING(*arg) = pipefilter->orig_command;
g_value_set_string (value, pipefilter->orig_command);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -39,13 +39,13 @@ GstElementDetails gst_pipefilter_details;
#define GST_TYPE_PIPEFILTER \
(gst_pipefilter_get_type())
#define GST_PIPEFILTER(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_PIPEFILTER,GstPipefilter))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_PIPEFILTER,GstPipefilter))
#define GST_PIPEFILTER_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_PIPEFILTER,GstPipefilterClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_PIPEFILTER,GstPipefilterClass))
#define GST_IS_PIPEFILTER(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_PIPEFILTER))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_PIPEFILTER))
#define GST_IS_PIPEFILTER_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_PIPEFILTER))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_PIPEFILTER))
typedef enum {
GST_PIPEFILTER_OPEN = GST_ELEMENT_FLAG_LAST,
@ -80,7 +80,7 @@ struct _GstPipefilterClass {
GstElementClass parent_class;
};
GtkType gst_pipefilter_get_type(void);
GType gst_pipefilter_get_type(void);
#ifdef __cplusplus

View file

@ -83,8 +83,8 @@ static GstPadTemplate *src_temp;
static void gst_sinesrc_class_init(GstSineSrcClass *klass);
static void gst_sinesrc_init(GstSineSrc *src);
static GstPadNegotiateReturn gst_sinesrc_negotiate (GstPad *pad, GstCaps **caps, gpointer *data);
static void gst_sinesrc_set_arg(GtkObject *object,GtkArg *arg,guint id);
static void gst_sinesrc_get_arg(GtkObject *object,GtkArg *arg,guint id);
static void gst_sinesrc_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec);
static void gst_sinesrc_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
//static gboolean gst_sinesrc_change_state(GstElement *element,
// GstElementState state);
//static void gst_sinesrc_close_audio(GstSineSrc *src);
@ -99,51 +99,57 @@ static GstBuffer * gst_sinesrc_get(GstPad *pad);
static GstElementClass *parent_class = NULL;
//static guint gst_sinesrc_signals[LAST_SIGNAL] = { 0 };
GtkType
GType
gst_sinesrc_get_type(void) {
static GtkType sinesrc_type = 0;
static GType sinesrc_type = 0;
if (!sinesrc_type) {
static const GtkTypeInfo sinesrc_info = {
"GstSineSrc",
static const GTypeInfo sinesrc_info = {
sizeof(GstSineSrcClass), NULL,
NULL,
(GClassInitFunc)gst_sinesrc_class_init,
NULL,
NULL,
sizeof(GstSineSrc),
sizeof(GstSineSrcClass),
(GtkClassInitFunc)gst_sinesrc_class_init,
(GtkObjectInitFunc)gst_sinesrc_init,
(GtkArgSetFunc)gst_sinesrc_set_arg,
(GtkArgGetFunc)gst_sinesrc_get_arg,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_sinesrc_init,
};
sinesrc_type = gtk_type_unique(GST_TYPE_ELEMENT,&sinesrc_info);
sinesrc_type = g_type_register_static(GST_TYPE_ELEMENT, "GstSineSrc", &sinesrc_info, 0);
}
return sinesrc_type;
}
static void
gst_sinesrc_class_init(GstSineSrcClass *klass) {
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gtk_object_add_arg_type("GstSineSrc::volume", GTK_TYPE_DOUBLE,
GTK_ARG_READWRITE, ARG_VOLUME);
gtk_object_add_arg_type("GstSineSrc::format", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_FORMAT);
gtk_object_add_arg_type("GstSineSrc::samplerate", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_SAMPLERATE);
gtk_object_add_arg_type("GstSineSrc::tablesize", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_TABLESIZE);
gtk_object_add_arg_type("GstSineSrc::freq", GTK_TYPE_DOUBLE,
GTK_ARG_READWRITE, ARG_FREQ);
gtk_object_add_arg_type("GstSineSrc::buffersize", GTK_TYPE_INT,
GTK_ARG_READWRITE, ARG_BUFFER_SIZE);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_VOLUME,
g_param_spec_double("volume","volume","volume",
G_MINDOUBLE,G_MAXDOUBLE,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_FORMAT,
g_param_spec_int("format","format","format",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_SAMPLERATE,
g_param_spec_int("samplerate","samplerate","samplerate",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_TABLESIZE,
g_param_spec_int("tablesize","tablesize","tablesize",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_FREQ,
g_param_spec_double("freq","freq","freq",
G_MINDOUBLE,G_MAXDOUBLE,0,G_PARAM_READWRITE)); // CHECKME
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_BUFFER_SIZE,
g_param_spec_int("buffersize","buffersize","buffersize",
G_MININT,G_MAXINT,0,G_PARAM_READWRITE)); // CHECKME
gtkobject_class->set_arg = gst_sinesrc_set_arg;
gtkobject_class->get_arg = gst_sinesrc_get_arg;
gobject_class->set_property = gst_sinesrc_set_property;
gobject_class->get_property = gst_sinesrc_get_property;
// gstelement_class->change_state = gst_sinesrc_change_state;
}
@ -246,42 +252,42 @@ gst_sinesrc_get(GstPad *pad)
}
static void
gst_sinesrc_set_arg(GtkObject *object,GtkArg *arg,guint id) {
gst_sinesrc_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) {
GstSineSrc *src;
/* it's not null if we got it, but it might not be ours */
g_return_if_fail(GST_IS_SINESRC(object));
src = GST_SINESRC(object);
switch (id) {
switch (prop_id) {
case ARG_VOLUME:
if (GTK_VALUE_DOUBLE(*arg) < 0.0 || GTK_VALUE_DOUBLE(*arg) > 1.0)
if (g_value_get_double (value) < 0.0 || g_value_get_double (value) > 1.0)
break;
src->volume = GTK_VALUE_DOUBLE(*arg);
src->volume = g_value_get_double (value);
gst_sinesrc_update_vol_scale(src);
break;
case ARG_FORMAT:
src->format = GTK_VALUE_INT(*arg);
src->format = g_value_get_int (value);
src->newcaps=TRUE;
break;
case ARG_SAMPLERATE:
src->samplerate = GTK_VALUE_INT(*arg);
src->samplerate = g_value_get_int (value);
src->newcaps=TRUE;
gst_sinesrc_update_table_inc(src);
break;
case ARG_FREQ: {
if (GTK_VALUE_DOUBLE(*arg) <= 0.0 || GTK_VALUE_DOUBLE(*arg) > src->samplerate/2)
if (g_value_get_double (value) <= 0.0 || g_value_get_double (value) > src->samplerate/2)
break;
src->freq = GTK_VALUE_DOUBLE(*arg);
src->freq = g_value_get_double (value);
gst_sinesrc_update_table_inc(src);
break;
case ARG_TABLESIZE:
src->table_size = GTK_VALUE_INT(*arg);
src->table_size = g_value_get_int (value);
gst_sinesrc_populate_sinetable(src);
gst_sinesrc_update_table_inc(src);
break;
case ARG_BUFFER_SIZE:
src->buffer_size = GTK_VALUE_INT(*arg);
src->buffer_size = g_value_get_int (value);
break;
}
default:
@ -290,34 +296,34 @@ gst_sinesrc_set_arg(GtkObject *object,GtkArg *arg,guint id) {
}
static void
gst_sinesrc_get_arg(GtkObject *object,GtkArg *arg,guint id) {
gst_sinesrc_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) {
GstSineSrc *src;
/* it's not null if we got it, but it might not be ours */
g_return_if_fail(GST_IS_SINESRC(object));
src = GST_SINESRC(object);
switch (id) {
switch (prop_id) {
case ARG_VOLUME:
GTK_VALUE_DOUBLE(*arg) = src->volume;
g_value_set_double (value, src->volume);
break;
case ARG_FORMAT:
GTK_VALUE_INT(*arg) = src->format;
g_value_set_int (value, src->format);
break;
case ARG_SAMPLERATE:
GTK_VALUE_INT(*arg) = src->samplerate;
g_value_set_int (value, src->samplerate);
break;
case ARG_FREQ:
GTK_VALUE_DOUBLE(*arg) = src->freq;
g_value_set_double (value, src->freq);
break;
case ARG_TABLESIZE:
GTK_VALUE_INT(*arg) = src->table_size;
g_value_set_int (value, src->table_size);
break;
case ARG_BUFFER_SIZE:
GTK_VALUE_INT(*arg) = src->buffer_size;
g_value_set_int (value, src->buffer_size);
break;
default:
arg->type = GTK_TYPE_INVALID;
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}

View file

@ -39,13 +39,13 @@ GstElementDetails gst_sinesrc_details;
#define GST_TYPE_SINESRC \
(gst_sinesrc_get_type())
#define GST_SINESRC(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_SINESRC,GstSineSrc))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_SINESRC,GstSineSrc))
#define GST_SINESRC_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_SINESRC,GstSineSrcClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_SINESRC,GstSineSrcClass))
#define GST_IS_SINESRC(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_SINESRC))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_SINESRC))
#define GST_IS_SINESRC_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_SINESRC))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_SINESRC))
typedef struct _GstSineSrc GstSineSrc;
typedef struct _GstSineSrcClass GstSineSrcClass;
@ -85,7 +85,7 @@ struct _GstSineSrcClass {
GstElementClass parent_class;
};
GtkType gst_sinesrc_get_type(void);
GType gst_sinesrc_get_type(void);
gboolean gst_sinesrc_factory_init (GstElementFactory *factory);
#ifdef __cplusplus

View file

@ -63,7 +63,7 @@ static void gst_tee_init (GstTee *tee);
static GstPad* gst_tee_request_new_pad (GstElement *element, GstPadTemplate *temp);
static void gst_tee_get_arg (GtkObject *object, GtkArg *arg, guint id);
static void gst_tee_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec);
static void gst_tee_chain (GstPad *pad, GstBuffer *buf);
@ -71,22 +71,22 @@ static GstElementClass *parent_class = NULL;
//static guint gst_tee_signals[LAST_SIGNAL] = { 0 };
static GstPadTemplate *gst_tee_src_template;
GtkType
GType
gst_tee_get_type(void) {
static GtkType tee_type = 0;
static GType tee_type = 0;
if (!tee_type) {
static const GtkTypeInfo tee_info = {
"GstTee",
static const GTypeInfo tee_info = {
sizeof(GstTeeClass), NULL,
NULL,
(GClassInitFunc)gst_tee_class_init,
NULL,
NULL,
sizeof(GstTee),
sizeof(GstTeeClass),
(GtkClassInitFunc)gst_tee_class_init,
(GtkObjectInitFunc)gst_tee_init,
(GtkArgSetFunc)NULL,
(GtkArgGetFunc)NULL,
(GtkClassInitFunc)NULL,
0,
(GInstanceInitFunc)gst_tee_init,
};
tee_type = gtk_type_unique (GST_TYPE_ELEMENT, &tee_info);
tee_type = g_type_register_static (GST_TYPE_ELEMENT, "GstTee", &tee_info, 0);
}
return tee_type;
}
@ -94,18 +94,19 @@ gst_tee_get_type(void) {
static void
gst_tee_class_init (GstTeeClass *klass)
{
GtkObjectClass *gtkobject_class;
GObjectClass *gobject_class;
GstElementClass *gstelement_class;
gtkobject_class = (GtkObjectClass*)klass;
gobject_class = (GObjectClass*)klass;
gstelement_class = (GstElementClass*)klass;
parent_class = gtk_type_class(GST_TYPE_ELEMENT);
parent_class = g_type_class_ref(GST_TYPE_ELEMENT);
gtk_object_add_arg_type ("GstTee::num_pads", GTK_TYPE_INT,
GTK_ARG_READABLE, ARG_NUM_PADS);
g_object_class_install_property(G_OBJECT_CLASS(klass), ARG_NUM_PADS,
g_param_spec_int("num_pads","num_pads","num_pads",
G_MININT,G_MAXINT,0,G_PARAM_READABLE)); // CHECKME
gtkobject_class->get_arg = gst_tee_get_arg;
gobject_class->get_property = gst_tee_get_property;
gstelement_class->request_new_pad = gst_tee_request_new_pad;
}
@ -149,7 +150,7 @@ gst_tee_request_new_pad (GstElement *element, GstPadTemplate *templ)
}
static void
gst_tee_get_arg (GtkObject *object, GtkArg *arg, guint id)
gst_tee_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
{
GstTee *tee;
@ -158,9 +159,9 @@ gst_tee_get_arg (GtkObject *object, GtkArg *arg, guint id)
tee = GST_TEE (object);
switch(id) {
switch (prop_id) {
case ARG_NUM_PADS:
GTK_VALUE_INT (*arg) = tee->numsrcpads;
g_value_set_int (value, tee->numsrcpads);
break;
default:
break;

View file

@ -36,13 +36,13 @@ extern GstElementDetails gst_tee_details;
#define GST_TYPE_TEE \
(gst_tee_get_type())
#define GST_TEE(obj) \
(GTK_CHECK_CAST((obj),GST_TYPE_TEE,GstTee))
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_TEE,GstTee))
#define GST_TEE_CLASS(klass) \
(GTK_CHECK_CLASS_CAST((klass),GST_TYPE_TEE,GstTeeClass))
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_TEE,GstTeeClass))
#define GST_IS_TEE(obj) \
(GTK_CHECK_TYPE((obj),GST_TYPE_TEE))
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_TEE))
#define GST_IS_TEE_CLASS(obj) \
(GTK_CHECK_CLASS_TYPE((klass),GST_TYPE_TEE))
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_TEE))
typedef struct _GstTee GstTee;
typedef struct _GstTeeClass GstTeeClass;
@ -60,7 +60,7 @@ struct _GstTeeClass {
GstElementClass parent_class;
};
GtkType gst_tee_get_type (void);
GType gst_tee_get_type (void);
gboolean gst_tee_factory_init (GstElementFactory *factory);