00001
00002
00003 #ifndef _GSTREAMERBASEMM_ALSAMIXER_H
00004 #define _GSTREAMERBASEMM_ALSAMIXER_H
00005
00006
00007 #include <glibmm.h>
00008
00009 #include <gstreamermm/element.h>
00010
00011
00012 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00013 typedef struct _GstAlsaMixerElement GstAlsaMixerElement;
00014 typedef struct _GstAlsaMixerElementClass GstAlsaMixerElementClass;
00015 #endif
00016
00017
00018 namespace GstBase
00019 { class AlsaMixer_Class; }
00020 namespace GstBase
00021 {
00022
00023
00033 class AlsaMixer
00034 : public Gst::Element
00035 {
00036
00037 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00038
00039 public:
00040 typedef AlsaMixer CppObjectType;
00041 typedef AlsaMixer_Class CppClassType;
00042 typedef GstAlsaMixerElement BaseObjectType;
00043 typedef GstAlsaMixerElementClass BaseClassType;
00044
00045 private: friend class AlsaMixer_Class;
00046 static CppClassType alsamixer_class_;
00047
00048 private:
00049
00050 AlsaMixer(const AlsaMixer&);
00051 AlsaMixer& operator=(const AlsaMixer&);
00052
00053 protected:
00054 explicit AlsaMixer(const Glib::ConstructParams& construct_params);
00055 explicit AlsaMixer(GstAlsaMixerElement* castitem);
00056
00057 #endif
00058
00059 public:
00060 virtual ~AlsaMixer();
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 GstAlsaMixerElement* gobj() { return reinterpret_cast<GstAlsaMixerElement*>(gobject_); }
00069
00071 const GstAlsaMixerElement* gobj() const { return reinterpret_cast<GstAlsaMixerElement*>(gobject_); }
00072
00074 GstAlsaMixerElement* gobj_copy();
00075
00076 private:
00077
00078
00079 protected:
00080 AlsaMixer();
00081 AlsaMixer(const Glib::ustring& name);
00082
00083 public:
00087 static Glib::RefPtr<AlsaMixer> create();
00088
00089
00093 static Glib::RefPtr<AlsaMixer> create(const Glib::ustring& name);
00094
00095
00096 #ifdef GLIBMM_PROPERTIES_ENABLED
00097
00103 Glib::PropertyProxy<Glib::ustring> property_device() ;
00104 #endif //#GLIBMM_PROPERTIES_ENABLED
00105
00106 #ifdef GLIBMM_PROPERTIES_ENABLED
00107
00113 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_device() const;
00114 #endif //#GLIBMM_PROPERTIES_ENABLED
00115
00116 #ifdef GLIBMM_PROPERTIES_ENABLED
00117
00123 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_device_name() const;
00124 #endif //#GLIBMM_PROPERTIES_ENABLED
00125
00126
00127 public:
00128
00129 public:
00130
00131 #ifdef GLIBMM_VFUNCS_ENABLED
00132 #endif //GLIBMM_VFUNCS_ENABLED
00133
00134 protected:
00135
00136 #ifdef GLIBMM_VFUNCS_ENABLED
00137 #endif //GLIBMM_VFUNCS_ENABLED
00138
00139
00140 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00141 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00142
00143
00144 };
00145
00146 }
00147
00148
00149 namespace Glib
00150 {
00159 Glib::RefPtr<GstBase::AlsaMixer> wrap(GstAlsaMixerElement* object, bool take_copy = false);
00160 }
00161
00162
00163 #endif
00164