00001
00002
00003 #ifndef _GSTREAMERBASEMM_BASEAUDIOSRC_H
00004 #define _GSTREAMERBASEMM_BASEAUDIOSRC_H
00005
00006
00007 #include <glibmm.h>
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include <gstreamermm/pushsrc.h>
00031
00032
00033 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00034 typedef struct _GstBaseAudioSrc GstBaseAudioSrc;
00035 typedef struct _GstBaseAudioSrcClass GstBaseAudioSrcClass;
00036 #endif
00037
00038
00039 namespace GstBase
00040 { class BaseAudioSrc_Class; }
00041 namespace GstBase
00042 {
00043
00054 class BaseAudioSrc : public Gst::PushSrc
00055 {
00056
00057 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00058
00059 public:
00060 typedef BaseAudioSrc CppObjectType;
00061 typedef BaseAudioSrc_Class CppClassType;
00062 typedef GstBaseAudioSrc BaseObjectType;
00063 typedef GstBaseAudioSrcClass BaseClassType;
00064
00065 private: friend class BaseAudioSrc_Class;
00066 static CppClassType baseaudiosrc_class_;
00067
00068 private:
00069
00070 BaseAudioSrc(const BaseAudioSrc&);
00071 BaseAudioSrc& operator=(const BaseAudioSrc&);
00072
00073 protected:
00074 explicit BaseAudioSrc(const Glib::ConstructParams& construct_params);
00075 explicit BaseAudioSrc(GstBaseAudioSrc* castitem);
00076
00077 #endif
00078
00079 public:
00080 virtual ~BaseAudioSrc();
00081
00082 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00083 static GType get_type() G_GNUC_CONST;
00084 static GType get_base_type() G_GNUC_CONST;
00085 #endif
00086
00088 GstBaseAudioSrc* gobj() { return reinterpret_cast<GstBaseAudioSrc*>(gobject_); }
00089
00091 const GstBaseAudioSrc* gobj() const { return reinterpret_cast<GstBaseAudioSrc*>(gobject_); }
00092
00094 GstBaseAudioSrc* gobj_copy();
00095
00096 private:
00097
00098
00099 public:
00102 Glib::RefPtr<Gst::Clock> get_clock() const;
00103
00104
00105
00106
00114 void set_provide_clock(bool provide);
00115
00122 bool get_provide_clock();
00123
00124 #ifdef GLIBMM_PROPERTIES_ENABLED
00125
00131 Glib::PropertyProxy_ReadOnly<gint64> property_actual_buffer_time() const;
00132 #endif //#GLIBMM_PROPERTIES_ENABLED
00133
00134
00135 #ifdef GLIBMM_PROPERTIES_ENABLED
00136
00142 Glib::PropertyProxy_ReadOnly<gint64> property_actual_latency_time() const;
00143 #endif //#GLIBMM_PROPERTIES_ENABLED
00144
00145
00146 #ifdef GLIBMM_PROPERTIES_ENABLED
00147
00153 Glib::PropertyProxy<gint64> property_buffer_time() ;
00154 #endif //#GLIBMM_PROPERTIES_ENABLED
00155
00156 #ifdef GLIBMM_PROPERTIES_ENABLED
00157
00163 Glib::PropertyProxy_ReadOnly<gint64> property_buffer_time() const;
00164 #endif //#GLIBMM_PROPERTIES_ENABLED
00165
00166 #ifdef GLIBMM_PROPERTIES_ENABLED
00167
00173 Glib::PropertyProxy<gint64> property_latency_time() ;
00174 #endif //#GLIBMM_PROPERTIES_ENABLED
00175
00176 #ifdef GLIBMM_PROPERTIES_ENABLED
00177
00183 Glib::PropertyProxy_ReadOnly<gint64> property_latency_time() const;
00184 #endif //#GLIBMM_PROPERTIES_ENABLED
00185
00186 #ifdef GLIBMM_PROPERTIES_ENABLED
00187
00193 Glib::PropertyProxy<bool> property_provide_clock() ;
00194 #endif //#GLIBMM_PROPERTIES_ENABLED
00195
00196 #ifdef GLIBMM_PROPERTIES_ENABLED
00197
00203 Glib::PropertyProxy_ReadOnly<bool> property_provide_clock() const;
00204 #endif //#GLIBMM_PROPERTIES_ENABLED
00205
00206
00207
00208
00209
00210
00211
00212
00213 public:
00214
00215 public:
00216
00217 #ifdef GLIBMM_VFUNCS_ENABLED
00218 #endif //GLIBMM_VFUNCS_ENABLED
00219
00220 protected:
00221
00222 #ifdef GLIBMM_VFUNCS_ENABLED
00223 #endif //GLIBMM_VFUNCS_ENABLED
00224
00225
00226 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00227 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00228
00229
00230 };
00231
00232 }
00233
00234
00235 namespace Glib
00236 {
00245 Glib::RefPtr<GstBase::BaseAudioSrc> wrap(GstBaseAudioSrc* object, bool take_copy = false);
00246 }
00247
00248
00249 #endif
00250