X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gst%2Fgsttagsetter.h;h=8d5d237ad30104028e31f2e610b17f13b44855a3;hb=ce4698487e2650ee9b365d6cf41a254483349bc0;hp=eaf494076daa2b0f93255f00c49492420a8b8fb0;hpb=c2f41a8906da4d2694eb111154283c6c9334b9de;p=platform%2Fupstream%2Fgstreamer.git diff --git a/gst/gsttagsetter.h b/gst/gsttagsetter.h index eaf4940..8d5d237 100644 --- a/gst/gsttagsetter.h +++ b/gst/gsttagsetter.h @@ -1,7 +1,7 @@ /* GStreamer * Copyright (C) 2003 Benjamin Otte * - * gsttaginterface.h: Interfaces for tagging + * gsttagsetter.h: Interfaces for tagging * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -15,29 +15,39 @@ * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. */ -#ifndef __GST_TAG_INTERFACE_H__ -#define __GST_TAG_INTERFACE_H__ +#ifndef __GST_TAG_SETTER_H__ +#define __GST_TAG_SETTER_H__ #include G_BEGIN_DECLS -#define GST_TYPE_TAG_SETTER (gst_tag_setter_get_type ()) -#define GST_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TAG_SETTER, GstTagSetter)) -#define GST_TAG_SETTER_CLASS(obj) (G_TYPE_CHECK_CLASS_CAST ((obj), GST_TYPE_TAG_SETTER, GstTagSetter)) -#define GST_IS_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TAG_SETTER)) -#define GST_TAG_SETTER_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_TAG_SETTER, GstTagSetterIFace)) +#define GST_TYPE_TAG_SETTER (gst_tag_setter_get_type ()) +#define GST_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TAG_SETTER, GstTagSetter)) +#define GST_IS_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TAG_SETTER)) +#define GST_TAG_SETTER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_TAG_SETTER, GstTagSetterInterface)) -typedef struct _GstTagSetter GstTagSetter; /* Dummy typedef */ -typedef struct _GstTagSetterIFace GstTagSetterIFace; +/** + * GstTagSetter: + * + * Opaque #GstTagSetter data structure. + */ +typedef struct _GstTagSetter GstTagSetter; /* Dummy typedef */ +typedef struct _GstTagSetterInterface GstTagSetterInterface; +/** + * GstTagSetterInterface: + * @g_iface: parent interface type. + * + * #GstTagSetterInterface interface. + */ /* use an empty interface here to allow detection of elements using user-set tags */ -struct _GstTagSetterIFace +struct _GstTagSetterInterface { GTypeInterface g_iface; @@ -46,38 +56,51 @@ struct _GstTagSetterIFace /* virtual table */ }; -GType gst_tag_setter_get_type (void); - -void gst_tag_setter_merge (GstTagSetter * setter, - const GstTagList * list, - GstTagMergeMode mode); -void gst_tag_setter_add (GstTagSetter * setter, - GstTagMergeMode mode, - const gchar * tag, - ...); - -void gst_tag_setter_add_values (GstTagSetter * setter, - GstTagMergeMode mode, - const gchar * tag, - ...); - -void gst_tag_setter_add_valist (GstTagSetter * setter, - GstTagMergeMode mode, - const gchar * tag, - va_list var_args); - -void gst_tag_setter_add_valist_values(GstTagSetter * setter, - GstTagMergeMode mode, - const gchar * tag, - va_list var_args); - -G_CONST_RETURN GstTagList * - gst_tag_setter_get_list (GstTagSetter * setter); - -void gst_tag_setter_set_merge_mode (GstTagSetter * setter, - GstTagMergeMode mode); -GstTagMergeMode gst_tag_setter_get_merge_mode (GstTagSetter * setter); +GST_API +GType gst_tag_setter_get_type (void); + +GST_API +void gst_tag_setter_reset_tags (GstTagSetter * setter); + +GST_API +void gst_tag_setter_merge_tags (GstTagSetter * setter, + const GstTagList * list, + GstTagMergeMode mode); +GST_API +void gst_tag_setter_add_tags (GstTagSetter * setter, + GstTagMergeMode mode, + const gchar * tag, + ...) G_GNUC_NULL_TERMINATED; +GST_API +void gst_tag_setter_add_tag_values (GstTagSetter * setter, + GstTagMergeMode mode, + const gchar * tag, + ...) G_GNUC_NULL_TERMINATED; +GST_API +void gst_tag_setter_add_tag_valist (GstTagSetter * setter, + GstTagMergeMode mode, + const gchar * tag, + va_list var_args); +GST_API +void gst_tag_setter_add_tag_valist_values(GstTagSetter * setter, + GstTagMergeMode mode, + const gchar * tag, + va_list var_args); +GST_API +void gst_tag_setter_add_tag_value (GstTagSetter * setter, + GstTagMergeMode mode, + const gchar * tag, + const GValue * value); +GST_API +const GstTagList * + gst_tag_setter_get_tag_list (GstTagSetter * setter); + +GST_API +void gst_tag_setter_set_tag_merge_mode (GstTagSetter * setter, + GstTagMergeMode mode); +GST_API +GstTagMergeMode gst_tag_setter_get_tag_merge_mode (GstTagSetter * setter); G_END_DECLS -#endif /* __GST_TAG_INTERFACE_H__ */ +#endif /* __GST_TAG_SETTER_H__ */