- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

# 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
    00154
    00155   static GType get_base_type() G_GNUC_CONST;
    00156 #endif
    00157
    00159   GstMixerTrack*       gobj()       { return reinterpret_cast<GstMixerTrack*>(gobject_); }
    00160
    00162   const GstMixerTrack* gobj() const { return reinterpret_cast<GstMixerTrack*>(gobject_); }
    00163
    00165   GstMixerTrack* gobj_copy();
    00166
    00167 private:
    00168
    00169
    00170 public:
    00173    Glib::ustring get_label() const;
    00176    guint32 get_num_channels() const;
    00177
    00180    guint32 get_min_volume() const;
    00181
    00184    guint32 get_max_volume() const;
    00185
    00186   #ifdef GLIBMM_PROPERTIES_ENABLED
    00187
    00193   Glib::PropertyProxy_ReadOnly<guint> property_flags() const;
    00194 #endif //#GLIBMM_PROPERTIES_ENABLED
    00195
    00196
    00197   #ifdef GLIBMM_PROPERTIES_ENABLED
    00198
    00204   Glib::PropertyProxy_ReadOnly<guint> property_index() const;
    00205 #endif //#GLIBMM_PROPERTIES_ENABLED
    00206
    00207
    00208   #ifdef GLIBMM_PROPERTIES_ENABLED
    00209
    00215   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_label() const;
    00216 #endif //#GLIBMM_PROPERTIES_ENABLED
    00217
    00218
    00219   #ifdef GLIBMM_PROPERTIES_ENABLED
    00220
    00226   Glib::PropertyProxy_ReadOnly<int> property_max_volume() const;
    00227 #endif //#GLIBMM_PROPERTIES_ENABLED
    00228
    00229
    00230   #ifdef GLIBMM_PROPERTIES_ENABLED
    00231
    00237   Glib::PropertyProxy_ReadOnly<int> property_min_volume() const;
    00238 #endif //#GLIBMM_PROPERTIES_ENABLED
    00239
    00240
    00241   #ifdef GLIBMM_PROPERTIES_ENABLED
    00242
    00248   Glib::PropertyProxy_ReadOnly<int> property_num_channels() const;
    00249 #endif //#GLIBMM_PROPERTIES_ENABLED
    00250
    00251
    00252   #ifdef GLIBMM_PROPERTIES_ENABLED
    00253
    00259   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_untranslated_label() const;
    00260 #endif //#GLIBMM_PROPERTIES_ENABLED
    00261
    00262
    00263 public:
    00264
    00265 public:
    00266   //C++ methods used to invoke GTK+ virtual functions:
    00267 #ifdef GLIBMM_VFUNCS_ENABLED
    00268 #endif //GLIBMM_VFUNCS_ENABLED
    00269
    00270 protected:
    00271   //GTK+ Virtual Functions (override these to change behaviour):
    00272 #ifdef GLIBMM_VFUNCS_ENABLED
    00273 #endif //GLIBMM_VFUNCS_ENABLED
    00274
    00275   //Default Signal Handlers::
    00276 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00277 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00278
    00279
    00280 };
    00281
    00282 } // namespace Gst
    00283
    00284
    00285 namespace Glib
    00286 {
    00295   Glib::RefPtr<Gst::MixerTrack> wrap(GstMixerTrack* object, bool take_copy = false);
    00296 }
    00297
    00298
    00299 #endif /* _GSTREAMERMM_MIXERTRACK_H */
    00300