gstreamermm: baseaudiosrc.h Source File

- Main Page
- Modules
- Namespaces
- Classes
- Files

# baseaudiosrc.h

Go to the documentation of this file.

    00001 // -*- c++ -*-
    00002 // Generated by gtkmmproc -- DO NOT MODIFY!
    00003 #ifndef _GSTREAMERMM_BASEAUDIOSRC_H
    00004 #define _GSTREAMERMM_BASEAUDIOSRC_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 <gstreamermm/pushsrc.h>
    00029
    00030
    00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00032 typedef struct _GstBaseAudioSrc GstBaseAudioSrc;
    00033 typedef struct _GstBaseAudioSrcClass GstBaseAudioSrcClass;
    00034 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00035
    00036
    00037 namespace Gst
    00038 { class BaseAudioSrc_Class; } // namespace Gst
    00039 namespace Gst
    00040 {
    00041
    00047 enum BaseAudioSrcSlaveMethod
    00048 {
    00049   BASE_AUDIO_SRC_SLAVE_RESAMPLE,
    00050   BASE_AUDIO_SRC_SLAVE_RETIMESTAMP,
    00051   BASE_AUDIO_SRC_SLAVE_SKEW,
    00052   BASE_AUDIO_SRC_SLAVE_NONE
    00053 };
    00054
    00055 } // namespace Gst
    00056
    00057
    00058 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00059 namespace Glib
    00060 {
    00061
    00062 template <>
    00063 class Value<Gst::BaseAudioSrcSlaveMethod> : public Glib::Value_Enum<Gst::BaseAudioSrcSlaveMethod>
    00064 {
    00065 public:
    00066   static GType value_type() G_GNUC_CONST;
    00067 };
    00068
    00069 } // namespace Glib
    00070 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00071
    00072
    00073 namespace Gst
    00074 {
    00075
    00076
    00087 class BaseAudioSrc : public Gst::PushSrc
    00088 {
    00089
    00090 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00091
    00092 public:
    00093   typedef BaseAudioSrc CppObjectType;
    00094   typedef BaseAudioSrc_Class CppClassType;
    00095   typedef GstBaseAudioSrc BaseObjectType;
    00096   typedef GstBaseAudioSrcClass BaseClassType;
    00097
    00098 private:  friend class BaseAudioSrc_Class;
    00099   static CppClassType baseaudiosrc_class_;
    00100
    00101 private:
    00102   // noncopyable
    00103   BaseAudioSrc(const BaseAudioSrc&);
    00104   BaseAudioSrc& operator=(const BaseAudioSrc&);
    00105
    00106 protected:
    00107   explicit BaseAudioSrc(const Glib::ConstructParams& construct_params);
    00108   explicit BaseAudioSrc(GstBaseAudioSrc* castitem);
    00109
    00110 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00111
    00112 public:
    00113   virtual ~BaseAudioSrc();
    00114
    00115 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00116   static GType get_type()      G_GNUC_CONST;
    00117   static GType get_base_type() G_GNUC_CONST;
    00118 #endif
    00119
    00121   GstBaseAudioSrc*       gobj()       { return reinterpret_cast<GstBaseAudioSrc*>(gobject_); }
    00122
    00124   const GstBaseAudioSrc* gobj() const { return reinterpret_cast<GstBaseAudioSrc*>(gobject_); }
    00125
    00127   GstBaseAudioSrc* gobj_copy();
    00128
    00129 private:
    00130
    00131
    00132 public:
    00135    Glib::RefPtr<Gst::Clock> get_clock() const;
    00136
    00137   //TODO: _WRAP_METHOD(Glib::RefPtr<Gst::RingBuffer> create_ring_buffer(), gst_base_audio_src_create_ringbuffer)
    00138
    00139
    00147   void set_provide_clock(bool provide);
    00148
    00155   bool get_provide_clock() const;
    00156
    00157   #ifdef GLIBMM_PROPERTIES_ENABLED
    00158
    00164   Glib::PropertyProxy_ReadOnly<gint64> property_actual_buffer_time() const;
    00165 #endif //#GLIBMM_PROPERTIES_ENABLED
    00166
    00167
    00168   #ifdef GLIBMM_PROPERTIES_ENABLED
    00169
    00175   Glib::PropertyProxy_ReadOnly<gint64> property_actual_latency_time() const;
    00176 #endif //#GLIBMM_PROPERTIES_ENABLED
    00177
    00178
    00179   #ifdef GLIBMM_PROPERTIES_ENABLED
    00180
    00186   Glib::PropertyProxy<gint64> property_buffer_time() ;
    00187 #endif //#GLIBMM_PROPERTIES_ENABLED
    00188
    00189 #ifdef GLIBMM_PROPERTIES_ENABLED
    00190
    00196   Glib::PropertyProxy_ReadOnly<gint64> property_buffer_time() const;
    00197 #endif //#GLIBMM_PROPERTIES_ENABLED
    00198
    00199   #ifdef GLIBMM_PROPERTIES_ENABLED
    00200
    00206   Glib::PropertyProxy<gint64> property_latency_time() ;
    00207 #endif //#GLIBMM_PROPERTIES_ENABLED
    00208
    00209 #ifdef GLIBMM_PROPERTIES_ENABLED
    00210
    00216   Glib::PropertyProxy_ReadOnly<gint64> property_latency_time() const;
    00217 #endif //#GLIBMM_PROPERTIES_ENABLED
    00218
    00219   #ifdef GLIBMM_PROPERTIES_ENABLED
    00220
    00226   Glib::PropertyProxy<bool> property_provide_clock() ;
    00227 #endif //#GLIBMM_PROPERTIES_ENABLED
    00228
    00229 #ifdef GLIBMM_PROPERTIES_ENABLED
    00230
    00236   Glib::PropertyProxy_ReadOnly<bool> property_provide_clock() const;
    00237 #endif //#GLIBMM_PROPERTIES_ENABLED
    00238
    00239
    00240   #ifdef GLIBMM_PROPERTIES_ENABLED
    00241
    00247   Glib::PropertyProxy<BaseAudioSrcSlaveMethod> property_slave_method() ;
    00248 #endif //#GLIBMM_PROPERTIES_ENABLED
    00249
    00250 #ifdef GLIBMM_PROPERTIES_ENABLED
    00251
    00257   Glib::PropertyProxy_ReadOnly<BaseAudioSrcSlaveMethod> property_slave_method() const;
    00258 #endif //#GLIBMM_PROPERTIES_ENABLED
    00259
    00260
    00261   //TODO: Wrap vfuncs.
    00262
    00263
    00264 public:
    00265
    00266 public:
    00267   //C++ methods used to invoke GTK+ virtual functions:
    00268 #ifdef GLIBMM_VFUNCS_ENABLED
    00269 #endif //GLIBMM_VFUNCS_ENABLED
    00270
    00271 protected:
    00272   //GTK+ Virtual Functions (override these to change behaviour):
    00273 #ifdef GLIBMM_VFUNCS_ENABLED
    00274 #endif //GLIBMM_VFUNCS_ENABLED
    00275
    00276   //Default Signal Handlers::
    00277 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00278 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00279
    00280
    00281 };
    00282
    00283 } // namespace Gst
    00284
    00285
    00286 namespace Glib
    00287 {
    00296   Glib::RefPtr<Gst::BaseAudioSrc> wrap(GstBaseAudioSrc* object, bool take_copy = false);
    00297 }
    00298
    00299
    00300 #endif /* _GSTREAMERMM_BASEAUDIOSRC_H */
    00301