gstreamermm: mixertrack.h Source File

- 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 };
    00064
    00066 inline MixerTrackFlags operator|(MixerTrackFlags lhs, MixerTrackFlags rhs)
    00067   { return static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
    00068
    00070 inline MixerTrackFlags operator&(MixerTrackFlags lhs, MixerTrackFlags rhs)
    00071   { return static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
    00072
    00074 inline MixerTrackFlags operator^(MixerTrackFlags lhs, MixerTrackFlags rhs)
    00075   { return static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
    00076
    00078 inline MixerTrackFlags operator~(MixerTrackFlags flags)
    00079   { return static_cast<MixerTrackFlags>(~static_cast<unsigned>(flags)); }
    00080
    00082 inline MixerTrackFlags& operator|=(MixerTrackFlags& lhs, MixerTrackFlags rhs)
    00083   { return (lhs = static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
    00084
    00086 inline MixerTrackFlags& operator&=(MixerTrackFlags& lhs, MixerTrackFlags rhs)
    00087   { return (lhs = static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
    00088
    00090 inline MixerTrackFlags& operator^=(MixerTrackFlags& lhs, MixerTrackFlags rhs)
    00091   { return (lhs = static_cast<MixerTrackFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
    00092
    00093 } // namespace Gst
    00094
    00095
    00096 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00097 namespace Glib
    00098 {
    00099
    00100 template <>
    00101 class Value<Gst::MixerTrackFlags> : public Glib::Value_Flags<Gst::MixerTrackFlags>
    00102 {
    00103 public:
    00104   static GType value_type() G_GNUC_CONST;
    00105 };
    00106
    00107 } // namespace Glib
    00108 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00109
    00110
    00111 namespace Gst
    00112 {
    00113
    00114
    00120 class MixerTrack : public Glib::Object
    00121 {
    00122
    00123 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00124
    00125 public:
    00126   typedef MixerTrack CppObjectType;
    00127   typedef MixerTrack_Class CppClassType;
    00128   typedef GstMixerTrack BaseObjectType;
    00129   typedef GstMixerTrackClass BaseClassType;
    00130
    00131 private:  friend class MixerTrack_Class;
    00132   static CppClassType mixertrack_class_;
    00133
    00134 private:
    00135   // noncopyable
    00136   MixerTrack(const MixerTrack&);
    00137   MixerTrack& operator=(const MixerTrack&);
    00138
    00139 protected:
    00140   explicit MixerTrack(const Glib::ConstructParams& construct_params);
    00141   explicit MixerTrack(GstMixerTrack* castitem);
    00142
    00143 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00144
    00145 public:
    00146   virtual ~MixerTrack();
    00147
    00148 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00149   static GType get_type()      G_GNUC_CONST;
    00150   static GType get_base_type() G_GNUC_CONST;
    00151 #endif
    00152
    00154   GstMixerTrack*       gobj()       { return reinterpret_cast<GstMixerTrack*>(gobject_); }
    00155
    00157   const GstMixerTrack* gobj() const { return reinterpret_cast<GstMixerTrack*>(gobject_); }
    00158
    00160   GstMixerTrack* gobj_copy();
    00161
    00162 private:
    00163
    00164
    00165 public:
    00168    Glib::ustring get_label() const;
    00171    guint32 get_num_channels() const;
    00172
    00175    guint32 get_min_volume() const;
    00176
    00179    guint32 get_max_volume() const;
    00180
    00181   #ifdef GLIBMM_PROPERTIES_ENABLED
    00182
    00188   Glib::PropertyProxy_ReadOnly<guint> property_flags() const;
    00189 #endif //#GLIBMM_PROPERTIES_ENABLED
    00190
    00191
    00192   #ifdef GLIBMM_PROPERTIES_ENABLED
    00193
    00199   Glib::PropertyProxy_ReadOnly<guint> property_index() const;
    00200 #endif //#GLIBMM_PROPERTIES_ENABLED
    00201
    00202
    00203   #ifdef GLIBMM_PROPERTIES_ENABLED
    00204
    00210   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_label() const;
    00211 #endif //#GLIBMM_PROPERTIES_ENABLED
    00212
    00213
    00214   #ifdef GLIBMM_PROPERTIES_ENABLED
    00215
    00221   Glib::PropertyProxy_ReadOnly<int> property_max_volume() const;
    00222 #endif //#GLIBMM_PROPERTIES_ENABLED
    00223
    00224
    00225   #ifdef GLIBMM_PROPERTIES_ENABLED
    00226
    00232   Glib::PropertyProxy_ReadOnly<int> property_min_volume() const;
    00233 #endif //#GLIBMM_PROPERTIES_ENABLED
    00234
    00235
    00236   #ifdef GLIBMM_PROPERTIES_ENABLED
    00237
    00243   Glib::PropertyProxy_ReadOnly<int> property_num_channels() const;
    00244 #endif //#GLIBMM_PROPERTIES_ENABLED
    00245
    00246
    00247   #ifdef GLIBMM_PROPERTIES_ENABLED
    00248
    00254   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_untranslated_label() const;
    00255 #endif //#GLIBMM_PROPERTIES_ENABLED
    00256
    00257
    00258 public:
    00259
    00260 public:
    00261   //C++ methods used to invoke GTK+ virtual functions:
    00262 #ifdef GLIBMM_VFUNCS_ENABLED
    00263 #endif //GLIBMM_VFUNCS_ENABLED
    00264
    00265 protected:
    00266   //GTK+ Virtual Functions (override these to change behaviour):
    00267 #ifdef GLIBMM_VFUNCS_ENABLED
    00268 #endif //GLIBMM_VFUNCS_ENABLED
    00269
    00270   //Default Signal Handlers::
    00271 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00272 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00273
    00274
    00275 };
    00276
    00277 } // namespace Gst
    00278
    00279
    00280 namespace Glib
    00281 {
    00290   Glib::RefPtr<Gst::MixerTrack> wrap(GstMixerTrack* object, bool take_copy = false);
    00291 }
    00292
    00293
    00294 #endif /* _GSTREAMERMM_MIXERTRACK_H */
    00295