mixertrack.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _GSTREAMERMM_MIXERTRACK_H
00004 #define _GSTREAMERMM_MIXERTRACK_H
00005 
00006 
00007 #include <glibmm.h>
00008 
00009 /* gstreamermm - a C++ wrapper for gstreamer
00010  *
00011  * Copyright 2008 The gstreamermm Development Team
00012  *
00013  * This library is free software; you can redistribute it and/or
00014  * modify it under the terms of the GNU Lesser General Public
00015  * License as published by the Free Software Foundation; either
00016  * version 2.1 of the License, or (at your option) any later version.
00017  *
00018  * This library is distributed in the hope that it will be useful,
00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00021  * Lesser General Public License for more details.
00022  *
00023  * You should have received a copy of the GNU Lesser General Public
00024  * License along with this library; if not, write to the Free
00025  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00026  */
00027 
00028 #include <glibmm/object.h>
00029 
00030 
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 typedef struct _GstMixerTrack GstMixerTrack;
00033 typedef struct _GstMixerTrackClass GstMixerTrackClass;
00034 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00035 
00036 
00037 namespace Gst
00038 { class MixerTrack_Class; } // namespace Gst
00039 namespace Gst
00040 {
00041 
00055 enum MixerTrackFlags
00056 {
00057   MIXER_TRACK_INPUT = 1<<0,
00058   MIXER_TRACK_OUTPUT = 1<<1,
00059   MIXER_TRACK_MUTE = 1<<2,
00060   MIXER_TRACK_RECORD = 1<<3,
00061   MIXER_TRACK_MASTER = 1<<4,
00062   MIXER_TRACK_SOFTWARE = 1<<5,
00063   MIXER_TRACK_NO_RECORD = 1<<6,
00064   MIXER_TRACK_NO_MUTE = 1<<7,
00065   MIXER_TRACK_WHITELIST = 1<<8
00066 };
00067 
00069 inline MixerTrackFlags operator|(MixerTrackFlags lhs, MixerTrackFlags rhs)
00070   { return static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
00071 
00073 inline MixerTrackFlags operator&(MixerTrackFlags lhs, MixerTrackFlags rhs)
00074   { return static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
00075 
00077 inline MixerTrackFlags operator^(MixerTrackFlags lhs, MixerTrackFlags rhs)
00078   { return static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
00079 
00081 inline MixerTrackFlags operator~(MixerTrackFlags flags)
00082   { return static_cast<MixerTrackFlags>(~static_cast<unsigned>(flags)); }
00083 
00085 inline MixerTrackFlags& operator|=(MixerTrackFlags& lhs, MixerTrackFlags rhs)
00086   { return (lhs = static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
00087 
00089 inline MixerTrackFlags& operator&=(MixerTrackFlags& lhs, MixerTrackFlags rhs)
00090   { return (lhs = static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
00091 
00093 inline MixerTrackFlags& operator^=(MixerTrackFlags& lhs, MixerTrackFlags rhs)
00094   { return (lhs = static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
00095 
00096 } // namespace Gst
00097 
00098 
00099 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00100 namespace Glib
00101 {
00102 
00103 template <>
00104 class Value<Gst::MixerTrackFlags> : public Glib::Value_Flags<Gst::MixerTrackFlags>
00105 {
00106 public:
00107   static GType value_type() G_GNUC_CONST;
00108 };
00109 
00110 } // namespace Glib
00111 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00112 
00113 
00114 namespace Gst
00115 {
00116 
00117 
00123 class MixerTrack : public Glib::Object
00124 {
00125   
00126 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00127 
00128 public:
00129   typedef MixerTrack CppObjectType;
00130   typedef MixerTrack_Class CppClassType;
00131   typedef GstMixerTrack BaseObjectType;
00132   typedef GstMixerTrackClass BaseClassType;
00133 
00134 private:  friend class MixerTrack_Class;
00135   static CppClassType mixertrack_class_;
00136 
00137 private:
00138   // noncopyable
00139   MixerTrack(const MixerTrack&);
00140   MixerTrack& operator=(const MixerTrack&);
00141 
00142 protected:
00143   explicit MixerTrack(const Glib::ConstructParams& construct_params);
00144   explicit MixerTrack(GstMixerTrack* castitem);
00145 
00146 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00147 
00148 public:
00149   virtual ~MixerTrack();
00150 
00151 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00152   static GType get_type()      G_GNUC_CONST;
00153   static GType get_base_type() G_GNUC_CONST;
00154 #endif
00155 
00157   GstMixerTrack*       gobj()       { return reinterpret_cast<GstMixerTrack*>(gobject_); }
00158 
00160   const GstMixerTrack* gobj() const { return reinterpret_cast<GstMixerTrack*>(gobject_); }
00161 
00163   GstMixerTrack* gobj_copy();
00164 
00165 private:
00166 
00167 
00168 public:
00171    Glib::ustring get_label() const;
00174    guint32 get_num_channels() const;
00175  
00178    guint32 get_min_volume() const;
00179  
00182    guint32 get_max_volume() const;
00183  
00184   #ifdef GLIBMM_PROPERTIES_ENABLED
00185 
00191   Glib::PropertyProxy_ReadOnly<guint> property_flags() const;
00192 #endif //#GLIBMM_PROPERTIES_ENABLED
00193 
00194 
00195   #ifdef GLIBMM_PROPERTIES_ENABLED
00196 
00202   Glib::PropertyProxy_ReadOnly<guint> property_index() const;
00203 #endif //#GLIBMM_PROPERTIES_ENABLED
00204 
00205 
00206   #ifdef GLIBMM_PROPERTIES_ENABLED
00207 
00213   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_label() const;
00214 #endif //#GLIBMM_PROPERTIES_ENABLED
00215 
00216 
00217   #ifdef GLIBMM_PROPERTIES_ENABLED
00218 
00224   Glib::PropertyProxy_ReadOnly<int> property_max_volume() const;
00225 #endif //#GLIBMM_PROPERTIES_ENABLED
00226 
00227 
00228   #ifdef GLIBMM_PROPERTIES_ENABLED
00229 
00235   Glib::PropertyProxy_ReadOnly<int> property_min_volume() const;
00236 #endif //#GLIBMM_PROPERTIES_ENABLED
00237 
00238 
00239   #ifdef GLIBMM_PROPERTIES_ENABLED
00240 
00246   Glib::PropertyProxy_ReadOnly<int> property_num_channels() const;
00247 #endif //#GLIBMM_PROPERTIES_ENABLED
00248 
00249 
00250   #ifdef GLIBMM_PROPERTIES_ENABLED
00251 
00257   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_untranslated_label() const;
00258 #endif //#GLIBMM_PROPERTIES_ENABLED
00259 
00260 
00261 public:
00262 
00263 public:
00264   //C++ methods used to invoke GTK+ virtual functions:
00265 #ifdef GLIBMM_VFUNCS_ENABLED
00266 #endif //GLIBMM_VFUNCS_ENABLED
00267 
00268 protected:
00269   //GTK+ Virtual Functions (override these to change behaviour):
00270 #ifdef GLIBMM_VFUNCS_ENABLED
00271 #endif //GLIBMM_VFUNCS_ENABLED
00272 
00273   //Default Signal Handlers::
00274 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00275 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00276 
00277 
00278 };
00279 
00280 } // namespace Gst
00281 
00282 
00283 namespace Glib
00284 {
00293   Glib::RefPtr<Gst::MixerTrack> wrap(GstMixerTrack* object, bool take_copy = false);
00294 }
00295 
00296 
00297 #endif /* _GSTREAMERMM_MIXERTRACK_H */
00298 

Generated on Wed Aug 19 15:53:24 2009 for gstreamermm by  doxygen 1.5.4