gstreamer/subprojects/gst-plugins-bad/tools/element-templates/gobject

80 lines
1.9 KiB
C

/* vim: set filetype=c: */
% ClassName
GstObject
% TYPE_CLASS_NAME
GST_TYPE_OBJECT
% includes
% prototypes
static void gst_replace_set_property (GObject * object,
guint property_id, const GValue * value, GParamSpec * pspec);
static void gst_replace_get_property (GObject * object,
guint property_id, GValue * value, GParamSpec * pspec);
static void gst_replace_dispose (GObject * object);
static void gst_replace_finalize (GObject * object);
% declare-class
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
% set-methods
gobject_class->set_property = gst_replace_set_property;
gobject_class->get_property = gst_replace_get_property;
gobject_class->dispose = gst_replace_dispose;
gobject_class->finalize = gst_replace_finalize;
% methods
void
gst_replace_set_property (GObject * object, guint property_id,
const GValue * value, GParamSpec * pspec)
{
GstReplace *replace = GST_REPLACE (object);
GST_DEBUG_OBJECT (replace, "set_property");
switch (property_id) {
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
}
}
void
gst_replace_get_property (GObject * object, guint property_id,
GValue * value, GParamSpec * pspec)
{
GstReplace *replace = GST_REPLACE (object);
GST_DEBUG_OBJECT (replace, "get_property");
switch (property_id) {
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
}
}
void
gst_replace_dispose (GObject * object)
{
GstReplace *replace = GST_REPLACE (object);
GST_DEBUG_OBJECT (replace, "dispose");
/* clean up as possible. may be called multiple times */
G_OBJECT_CLASS (gst_replace_parent_class)->dispose (object);
}
void
gst_replace_finalize (GObject * object)
{
GstReplace *replace = GST_REPLACE (object);
GST_DEBUG_OBJECT (replace, "finalize");
/* clean up object here */
G_OBJECT_CLASS (gst_replace_parent_class)->finalize (object);
}
% end