00001
00002
00003 #ifndef _GSTREAMERMM_AUDIOTESTSRC_H
00004 #define _GSTREAMERMM_AUDIOTESTSRC_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 #include <gstreamermm/basesrc.h>
00029
00030
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 typedef struct _GstAudioTestSrc GstAudioTestSrc;
00033 typedef struct _GstAudioTestSrcClass GstAudioTestSrcClass;
00034 #endif
00035
00036
00037 namespace Gst
00038 { class AudioTestSrc_Class; }
00039 namespace Gst
00040 {
00041
00047 enum AudioTestSrcWave
00048 {
00049 AUDIO_TEST_SRC_WAVE_SINE,
00050 AUDIO_TEST_SRC_WAVE_SQUARE,
00051 AUDIO_TEST_SRC_WAVE_SAW,
00052 AUDIO_TEST_SRC_WAVE_TRIANGLE,
00053 AUDIO_TEST_SRC_WAVE_SILENCE,
00054 AUDIO_TEST_SRC_WAVE_WHITE_NOISE,
00055 AUDIO_TEST_SRC_WAVE_PINK_NOISE,
00056 AUDIO_TEST_SRC_WAVE_SINE_TAB,
00057 AUDIO_TEST_SRC_WAVE_TICKS
00058 };
00059
00060 }
00061
00062
00063 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00064 namespace Glib
00065 {
00066
00067 template <>
00068 class Value<Gst::AudioTestSrcWave> : public Glib::Value_Enum<Gst::AudioTestSrcWave>
00069 {
00070 public:
00071 static GType value_type() G_GNUC_CONST;
00072 };
00073
00074 }
00075 #endif
00076
00077
00078 namespace Gst
00079 {
00080
00081
00092 class AudioTestSrc
00093 : public Gst::BaseSrc
00094 {
00095
00096 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00097
00098 public:
00099 typedef AudioTestSrc CppObjectType;
00100 typedef AudioTestSrc_Class CppClassType;
00101 typedef GstAudioTestSrc BaseObjectType;
00102 typedef GstAudioTestSrcClass BaseClassType;
00103
00104 private: friend class AudioTestSrc_Class;
00105 static CppClassType audiotestsrc_class_;
00106
00107 private:
00108
00109 AudioTestSrc(const AudioTestSrc&);
00110 AudioTestSrc& operator=(const AudioTestSrc&);
00111
00112 protected:
00113 explicit AudioTestSrc(const Glib::ConstructParams& construct_params);
00114 explicit AudioTestSrc(GstAudioTestSrc* castitem);
00115
00116 #endif
00117
00118 public:
00119 virtual ~AudioTestSrc();
00120
00121 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00122 static GType get_type() G_GNUC_CONST;
00123 static GType get_base_type() G_GNUC_CONST;
00124 #endif
00125
00127 GstAudioTestSrc* gobj() { return reinterpret_cast<GstAudioTestSrc*>(gobject_); }
00128
00130 const GstAudioTestSrc* gobj() const { return reinterpret_cast<GstAudioTestSrc*>(gobject_); }
00131
00133 GstAudioTestSrc* gobj_copy();
00134
00135 private:
00136
00137
00138 protected:
00139 AudioTestSrc();
00140 AudioTestSrc(const Glib::ustring& name);
00141
00142 public:
00146 static Glib::RefPtr<AudioTestSrc> create();
00147
00148
00152 static Glib::RefPtr<AudioTestSrc> create(const Glib::ustring& name);
00153
00154
00155 #ifdef GLIBMM_PROPERTIES_ENABLED
00156
00162 Glib::PropertyProxy<int> property_samplesperbuffer() ;
00163 #endif //#GLIBMM_PROPERTIES_ENABLED
00164
00165 #ifdef GLIBMM_PROPERTIES_ENABLED
00166
00172 Glib::PropertyProxy_ReadOnly<int> property_samplesperbuffer() const;
00173 #endif //#GLIBMM_PROPERTIES_ENABLED
00174
00175 #ifdef GLIBMM_PROPERTIES_ENABLED
00176
00182 Glib::PropertyProxy<AudioTestSrcWave> property_wave() ;
00183 #endif //#GLIBMM_PROPERTIES_ENABLED
00184
00185 #ifdef GLIBMM_PROPERTIES_ENABLED
00186
00192 Glib::PropertyProxy_ReadOnly<AudioTestSrcWave> property_wave() const;
00193 #endif //#GLIBMM_PROPERTIES_ENABLED
00194
00195 #ifdef GLIBMM_PROPERTIES_ENABLED
00196
00202 Glib::PropertyProxy<double> property_freq() ;
00203 #endif //#GLIBMM_PROPERTIES_ENABLED
00204
00205 #ifdef GLIBMM_PROPERTIES_ENABLED
00206
00212 Glib::PropertyProxy_ReadOnly<double> property_freq() const;
00213 #endif //#GLIBMM_PROPERTIES_ENABLED
00214
00215 #ifdef GLIBMM_PROPERTIES_ENABLED
00216
00222 Glib::PropertyProxy<double> property_volume() ;
00223 #endif //#GLIBMM_PROPERTIES_ENABLED
00224
00225 #ifdef GLIBMM_PROPERTIES_ENABLED
00226
00232 Glib::PropertyProxy_ReadOnly<double> property_volume() const;
00233 #endif //#GLIBMM_PROPERTIES_ENABLED
00234
00235 #ifdef GLIBMM_PROPERTIES_ENABLED
00236
00242 Glib::PropertyProxy<bool> property_is_live() ;
00243 #endif //#GLIBMM_PROPERTIES_ENABLED
00244
00245 #ifdef GLIBMM_PROPERTIES_ENABLED
00246
00252 Glib::PropertyProxy_ReadOnly<bool> property_is_live() const;
00253 #endif //#GLIBMM_PROPERTIES_ENABLED
00254
00255 #ifdef GLIBMM_PROPERTIES_ENABLED
00256
00262 Glib::PropertyProxy<gint64> property_timestamp_offset() ;
00263 #endif //#GLIBMM_PROPERTIES_ENABLED
00264
00265 #ifdef GLIBMM_PROPERTIES_ENABLED
00266
00272 Glib::PropertyProxy_ReadOnly<gint64> property_timestamp_offset() const;
00273 #endif //#GLIBMM_PROPERTIES_ENABLED
00274
00275 #ifdef GLIBMM_PROPERTIES_ENABLED
00276
00282 Glib::PropertyProxy<bool> property_can_activate_push() ;
00283 #endif //#GLIBMM_PROPERTIES_ENABLED
00284
00285 #ifdef GLIBMM_PROPERTIES_ENABLED
00286
00292 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_push() const;
00293 #endif //#GLIBMM_PROPERTIES_ENABLED
00294
00295 #ifdef GLIBMM_PROPERTIES_ENABLED
00296
00302 Glib::PropertyProxy<bool> property_can_activate_pull() ;
00303 #endif //#GLIBMM_PROPERTIES_ENABLED
00304
00305 #ifdef GLIBMM_PROPERTIES_ENABLED
00306
00312 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_pull() const;
00313 #endif //#GLIBMM_PROPERTIES_ENABLED
00314
00315
00316 public:
00317
00318 public:
00319
00320 #ifdef GLIBMM_VFUNCS_ENABLED
00321 #endif //GLIBMM_VFUNCS_ENABLED
00322
00323 protected:
00324
00325 #ifdef GLIBMM_VFUNCS_ENABLED
00326 #endif //GLIBMM_VFUNCS_ENABLED
00327
00328
00329 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00330 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00331
00332
00333 };
00334
00335 }
00336
00337
00338 namespace Glib
00339 {
00348 Glib::RefPtr<Gst::AudioTestSrc> wrap(GstAudioTestSrc* object, bool take_copy = false);
00349 }
00350
00351
00352 #endif
00353