00001
00002
00003 #ifndef _GSTREAMERMM_VORBISENC_H
00004 #define _GSTREAMERMM_VORBISENC_H
00005
00006
00007 #include <glibmm.h>
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include <gstreamermm/element.h>
00031 #include <gstreamermm/tagsetter.h>
00032 #include <gstreamermm/preset.h>
00033
00034
00035 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00036 typedef struct _GstVorbisEnc GstVorbisEnc;
00037 typedef struct _GstVorbisEncClass GstVorbisEncClass;
00038 #endif
00039
00040
00041 namespace Gst
00042 { class VorbisEnc_Class; }
00043 namespace Gst
00044 {
00045
00056 class VorbisEnc
00057 : public Gst::Element, public Gst::TagSetter, public Gst::Preset
00058 {
00059
00060 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00061
00062 public:
00063 typedef VorbisEnc CppObjectType;
00064 typedef VorbisEnc_Class CppClassType;
00065 typedef GstVorbisEnc BaseObjectType;
00066 typedef GstVorbisEncClass BaseClassType;
00067
00068 private: friend class VorbisEnc_Class;
00069 static CppClassType vorbisenc_class_;
00070
00071 private:
00072
00073 VorbisEnc(const VorbisEnc&);
00074 VorbisEnc& operator=(const VorbisEnc&);
00075
00076 protected:
00077 explicit VorbisEnc(const Glib::ConstructParams& construct_params);
00078 explicit VorbisEnc(GstVorbisEnc* castitem);
00079
00080 #endif
00081
00082 public:
00083 virtual ~VorbisEnc();
00084
00085 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00086 static GType get_type() G_GNUC_CONST;
00087
00088
00089 static GType get_base_type() G_GNUC_CONST;
00090 #endif
00091
00093 GstVorbisEnc* gobj() { return reinterpret_cast<GstVorbisEnc*>(gobject_); }
00094
00096 const GstVorbisEnc* gobj() const { return reinterpret_cast<GstVorbisEnc*>(gobject_); }
00097
00099 GstVorbisEnc* gobj_copy();
00100
00101 private:
00102
00103
00104 protected:
00105 VorbisEnc();
00106 VorbisEnc(const Glib::ustring& name);
00107
00108 public:
00112 static Glib::RefPtr<VorbisEnc> create();
00113
00114
00118 static Glib::RefPtr<VorbisEnc> create(const Glib::ustring& name);
00119
00120
00121 #ifdef GLIBMM_PROPERTIES_ENABLED
00122
00128 Glib::PropertyProxy<int> property_max_bitrate() ;
00129 #endif //#GLIBMM_PROPERTIES_ENABLED
00130
00131 #ifdef GLIBMM_PROPERTIES_ENABLED
00132
00138 Glib::PropertyProxy_ReadOnly<int> property_max_bitrate() const;
00139 #endif //#GLIBMM_PROPERTIES_ENABLED
00140
00141 #ifdef GLIBMM_PROPERTIES_ENABLED
00142
00148 Glib::PropertyProxy<int> property_bitrate() ;
00149 #endif //#GLIBMM_PROPERTIES_ENABLED
00150
00151 #ifdef GLIBMM_PROPERTIES_ENABLED
00152
00158 Glib::PropertyProxy_ReadOnly<int> property_bitrate() const;
00159 #endif //#GLIBMM_PROPERTIES_ENABLED
00160
00161 #ifdef GLIBMM_PROPERTIES_ENABLED
00162
00168 Glib::PropertyProxy<int> property_min_bitrate() ;
00169 #endif //#GLIBMM_PROPERTIES_ENABLED
00170
00171 #ifdef GLIBMM_PROPERTIES_ENABLED
00172
00178 Glib::PropertyProxy_ReadOnly<int> property_min_bitrate() const;
00179 #endif //#GLIBMM_PROPERTIES_ENABLED
00180
00181 #ifdef GLIBMM_PROPERTIES_ENABLED
00182
00188 Glib::PropertyProxy<float> property_quality() ;
00189 #endif //#GLIBMM_PROPERTIES_ENABLED
00190
00191 #ifdef GLIBMM_PROPERTIES_ENABLED
00192
00198 Glib::PropertyProxy_ReadOnly<float> property_quality() const;
00199 #endif //#GLIBMM_PROPERTIES_ENABLED
00200
00201 #ifdef GLIBMM_PROPERTIES_ENABLED
00202
00208 Glib::PropertyProxy<bool> property_managed() ;
00209 #endif //#GLIBMM_PROPERTIES_ENABLED
00210
00211 #ifdef GLIBMM_PROPERTIES_ENABLED
00212
00218 Glib::PropertyProxy_ReadOnly<bool> property_managed() const;
00219 #endif //#GLIBMM_PROPERTIES_ENABLED
00220
00221 #ifdef GLIBMM_PROPERTIES_ENABLED
00222
00228 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_last_message() const;
00229 #endif //#GLIBMM_PROPERTIES_ENABLED
00230
00231
00232 public:
00233
00234 public:
00235
00236 #ifdef GLIBMM_VFUNCS_ENABLED
00237 #endif //GLIBMM_VFUNCS_ENABLED
00238
00239 protected:
00240
00241 #ifdef GLIBMM_VFUNCS_ENABLED
00242 #endif //GLIBMM_VFUNCS_ENABLED
00243
00244
00245 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00246 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00247
00248
00249 };
00250
00251 }
00252
00253
00254 namespace Glib
00255 {
00264 Glib::RefPtr<Gst::VorbisEnc> wrap(GstVorbisEnc* object, bool take_copy = false);
00265 }
00266
00267
00268 #endif
00269