00001
00002
00003 #ifndef _GSTREAMERBASEMM_VORBISTAG_H
00004 #define _GSTREAMERBASEMM_VORBISTAG_H
00005
00006
00007 #include <glibmm.h>
00008
00009 #include <gstreamerbasemm/vorbisparse.h>
00010
00011
00012 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00013 typedef struct _GstVorbisTag GstVorbisTag;
00014 typedef struct _GstVorbisTagClass GstVorbisTagClass;
00015 #endif
00016
00017
00018 namespace GstBase
00019 { class VorbisTag_Class; }
00020 namespace GstBase
00021 {
00022
00023
00033 class VorbisTag
00034 : public GstBase::VorbisParse
00035 {
00036
00037 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00038
00039 public:
00040 typedef VorbisTag CppObjectType;
00041 typedef VorbisTag_Class CppClassType;
00042 typedef GstVorbisTag BaseObjectType;
00043 typedef GstVorbisTagClass BaseClassType;
00044
00045 private: friend class VorbisTag_Class;
00046 static CppClassType vorbistag_class_;
00047
00048 private:
00049
00050 VorbisTag(const VorbisTag&);
00051 VorbisTag& operator=(const VorbisTag&);
00052
00053 protected:
00054 explicit VorbisTag(const Glib::ConstructParams& construct_params);
00055 explicit VorbisTag(GstVorbisTag* castitem);
00056
00057 #endif
00058
00059 public:
00060 virtual ~VorbisTag();
00061
00062 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00063 static GType get_type() G_GNUC_CONST;
00064 static GType get_base_type() G_GNUC_CONST;
00065 #endif
00066
00068 GstVorbisTag* gobj() { return reinterpret_cast<GstVorbisTag*>(gobject_); }
00069
00071 const GstVorbisTag* gobj() const { return reinterpret_cast<GstVorbisTag*>(gobject_); }
00072
00074 GstVorbisTag* gobj_copy();
00075
00076 private:
00077
00078
00079 protected:
00080 VorbisTag();
00081 VorbisTag(const Glib::ustring& name);
00082
00083 public:
00087 static Glib::RefPtr<VorbisTag> create();
00088
00089
00093 static Glib::RefPtr<VorbisTag> create(const Glib::ustring& name);
00094
00095
00096 public:
00097
00098 public:
00099
00100 #ifdef GLIBMM_VFUNCS_ENABLED
00101 #endif //GLIBMM_VFUNCS_ENABLED
00102
00103 protected:
00104
00105 #ifdef GLIBMM_VFUNCS_ENABLED
00106 #endif //GLIBMM_VFUNCS_ENABLED
00107
00108
00109 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00110 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00111
00112
00113 };
00114
00115 }
00116
00117
00118 namespace Glib
00119 {
00128 Glib::RefPtr<GstBase::VorbisTag> wrap(GstVorbisTag* object, bool take_copy = false);
00129 }
00130
00131
00132 #endif
00133