- Main Page
- Modules
- Namespaces
- Classes
- Files

# 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