00001
00002
00003 #ifndef _GSTREAMERMM_FAKESRC_H
00004 #define _GSTREAMERMM_FAKESRC_H
00005
00006
00007 #include <glibmm.h>
00008
00009 #include <gstreamermm/basesrc.h>
00010 #include <gstreamermm/buffer.h>
00011 #include <gstreamermm/pad.h>
00012
00013
00014 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00015 typedef struct _GstFakeSrc GstFakeSrc;
00016 typedef struct _GstFakeSrcClass GstFakeSrcClass;
00017 #endif
00018
00019
00020 namespace Gst
00021 { class FakeSrc_Class; }
00022 namespace Gst
00023 {
00024
00030 enum FakeSrcDataType
00031 {
00032 FAKE_SRC_DATA_ALLOCATE = 1,
00033 FAKE_SRC_DATA_SUBBUFFER
00034 };
00035
00036 }
00037
00038
00039 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00040 namespace Glib
00041 {
00042
00043 template <>
00044 class Value<Gst::FakeSrcDataType> : public Glib::Value_Enum<Gst::FakeSrcDataType>
00045 {
00046 public:
00047 static GType value_type() G_GNUC_CONST;
00048 };
00049
00050 }
00051 #endif
00052
00053
00054 namespace Gst
00055 {
00056
00060 enum FakeSrcSizeType
00061 {
00062 FAKE_SRC_SIZETYPE_EMPTY = 1,
00063 FAKE_SRC_SIZETYPE_FIXED,
00064 FAKE_SRC_SIZETYPE_RANDOM
00065 };
00066
00067 }
00068
00069
00070 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00071 namespace Glib
00072 {
00073
00074 template <>
00075 class Value<Gst::FakeSrcSizeType> : public Glib::Value_Enum<Gst::FakeSrcSizeType>
00076 {
00077 public:
00078 static GType value_type() G_GNUC_CONST;
00079 };
00080
00081 }
00082 #endif
00083
00084
00085 namespace Gst
00086 {
00087
00091 enum FakeSrcFillType
00092 {
00093 FAKE_SRC_FILLTYPE_NOTHING = 1,
00094 FAKE_SRC_FILLTYPE_ZERO,
00095 FAKE_SRC_FILLTYPE_RANDOM,
00096 FAKE_SRC_FILLTYPE_PATTERN,
00097 FAKE_SRC_FILLTYPE_PATTERN_CONT
00098 };
00099
00100 }
00101
00102
00103 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00104 namespace Glib
00105 {
00106
00107 template <>
00108 class Value<Gst::FakeSrcFillType> : public Glib::Value_Enum<Gst::FakeSrcFillType>
00109 {
00110 public:
00111 static GType value_type() G_GNUC_CONST;
00112 };
00113
00114 }
00115 #endif
00116
00117
00118 namespace Gst
00119 {
00120
00121
00131 class FakeSrc
00132 : public Gst::BaseSrc
00133 {
00134
00135 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00136
00137 public:
00138 typedef FakeSrc CppObjectType;
00139 typedef FakeSrc_Class CppClassType;
00140 typedef GstFakeSrc BaseObjectType;
00141 typedef GstFakeSrcClass BaseClassType;
00142
00143 private: friend class FakeSrc_Class;
00144 static CppClassType fakesrc_class_;
00145
00146 private:
00147
00148 FakeSrc(const FakeSrc&);
00149 FakeSrc& operator=(const FakeSrc&);
00150
00151 protected:
00152 explicit FakeSrc(const Glib::ConstructParams& construct_params);
00153 explicit FakeSrc(GstFakeSrc* castitem);
00154
00155 #endif
00156
00157 public:
00158 virtual ~FakeSrc();
00159
00160 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00161 static GType get_type() G_GNUC_CONST;
00162 static GType get_base_type() G_GNUC_CONST;
00163 #endif
00164
00166 GstFakeSrc* gobj() { return reinterpret_cast<GstFakeSrc*>(gobject_); }
00167
00169 const GstFakeSrc* gobj() const { return reinterpret_cast<GstFakeSrc*>(gobject_); }
00170
00172 GstFakeSrc* gobj_copy();
00173
00174 private:
00175
00176
00177 protected:
00178 FakeSrc();
00179 FakeSrc(const Glib::ustring& name);
00180
00181 public:
00185 static Glib::RefPtr<FakeSrc> create();
00186
00187
00191 static Glib::RefPtr<FakeSrc> create(const Glib::ustring& name);
00192
00193
00194 #ifdef GLIBMM_PROPERTIES_ENABLED
00195
00201 Glib::PropertyProxy<FakeSrcDataType> property_data() ;
00202 #endif //#GLIBMM_PROPERTIES_ENABLED
00203
00204 #ifdef GLIBMM_PROPERTIES_ENABLED
00205
00211 Glib::PropertyProxy_ReadOnly<FakeSrcDataType> property_data() const;
00212 #endif //#GLIBMM_PROPERTIES_ENABLED
00213
00214 #ifdef GLIBMM_PROPERTIES_ENABLED
00215
00221 Glib::PropertyProxy<FakeSrcSizeType> property_sizetype() ;
00222 #endif //#GLIBMM_PROPERTIES_ENABLED
00223
00224 #ifdef GLIBMM_PROPERTIES_ENABLED
00225
00231 Glib::PropertyProxy_ReadOnly<FakeSrcSizeType> property_sizetype() const;
00232 #endif //#GLIBMM_PROPERTIES_ENABLED
00233
00234 #ifdef GLIBMM_PROPERTIES_ENABLED
00235
00241 Glib::PropertyProxy<int> property_sizemin() ;
00242 #endif //#GLIBMM_PROPERTIES_ENABLED
00243
00244 #ifdef GLIBMM_PROPERTIES_ENABLED
00245
00251 Glib::PropertyProxy_ReadOnly<int> property_sizemin() const;
00252 #endif //#GLIBMM_PROPERTIES_ENABLED
00253
00254 #ifdef GLIBMM_PROPERTIES_ENABLED
00255
00261 Glib::PropertyProxy<int> property_sizemax() ;
00262 #endif //#GLIBMM_PROPERTIES_ENABLED
00263
00264 #ifdef GLIBMM_PROPERTIES_ENABLED
00265
00271 Glib::PropertyProxy_ReadOnly<int> property_sizemax() const;
00272 #endif //#GLIBMM_PROPERTIES_ENABLED
00273
00274 #ifdef GLIBMM_PROPERTIES_ENABLED
00275
00281 Glib::PropertyProxy<FakeSrcFillType> property_filltype() ;
00282 #endif //#GLIBMM_PROPERTIES_ENABLED
00283
00284 #ifdef GLIBMM_PROPERTIES_ENABLED
00285
00291 Glib::PropertyProxy_ReadOnly<FakeSrcFillType> property_filltype() const;
00292 #endif //#GLIBMM_PROPERTIES_ENABLED
00293
00294 #ifdef GLIBMM_PROPERTIES_ENABLED
00295
00301 Glib::PropertyProxy<int> property_datarate() ;
00302 #endif //#GLIBMM_PROPERTIES_ENABLED
00303
00304 #ifdef GLIBMM_PROPERTIES_ENABLED
00305
00311 Glib::PropertyProxy_ReadOnly<int> property_datarate() const;
00312 #endif //#GLIBMM_PROPERTIES_ENABLED
00313
00314 #ifdef GLIBMM_PROPERTIES_ENABLED
00315
00321 Glib::PropertyProxy<bool> property_sync() ;
00322 #endif //#GLIBMM_PROPERTIES_ENABLED
00323
00324 #ifdef GLIBMM_PROPERTIES_ENABLED
00325
00331 Glib::PropertyProxy_ReadOnly<bool> property_sync() const;
00332 #endif //#GLIBMM_PROPERTIES_ENABLED
00333
00334 #ifdef GLIBMM_PROPERTIES_ENABLED
00335
00341 Glib::PropertyProxy<Glib::ustring> property_pattern() ;
00342 #endif //#GLIBMM_PROPERTIES_ENABLED
00343
00344 #ifdef GLIBMM_PROPERTIES_ENABLED
00345
00351 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_pattern() const;
00352 #endif //#GLIBMM_PROPERTIES_ENABLED
00353
00354 #ifdef GLIBMM_PROPERTIES_ENABLED
00355
00361 Glib::PropertyProxy<bool> property_signal_handoffs() ;
00362 #endif //#GLIBMM_PROPERTIES_ENABLED
00363
00364 #ifdef GLIBMM_PROPERTIES_ENABLED
00365
00371 Glib::PropertyProxy_ReadOnly<bool> property_signal_handoffs() const;
00372 #endif //#GLIBMM_PROPERTIES_ENABLED
00373
00374 #ifdef GLIBMM_PROPERTIES_ENABLED
00375
00381 Glib::PropertyProxy<bool> property_silent() ;
00382 #endif //#GLIBMM_PROPERTIES_ENABLED
00383
00384 #ifdef GLIBMM_PROPERTIES_ENABLED
00385
00391 Glib::PropertyProxy_ReadOnly<bool> property_silent() const;
00392 #endif //#GLIBMM_PROPERTIES_ENABLED
00393
00394 #ifdef GLIBMM_PROPERTIES_ENABLED
00395
00401 Glib::PropertyProxy<bool> property_dump() ;
00402 #endif //#GLIBMM_PROPERTIES_ENABLED
00403
00404 #ifdef GLIBMM_PROPERTIES_ENABLED
00405
00411 Glib::PropertyProxy_ReadOnly<bool> property_dump() const;
00412 #endif //#GLIBMM_PROPERTIES_ENABLED
00413
00414 #ifdef GLIBMM_PROPERTIES_ENABLED
00415
00421 Glib::PropertyProxy<int> property_parentsize() ;
00422 #endif //#GLIBMM_PROPERTIES_ENABLED
00423
00424 #ifdef GLIBMM_PROPERTIES_ENABLED
00425
00431 Glib::PropertyProxy_ReadOnly<int> property_parentsize() const;
00432 #endif //#GLIBMM_PROPERTIES_ENABLED
00433
00434 #ifdef GLIBMM_PROPERTIES_ENABLED
00435
00441 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_last_message() const;
00442 #endif //#GLIBMM_PROPERTIES_ENABLED
00443
00444
00445 #ifdef GLIBMM_PROPERTIES_ENABLED
00446
00452 Glib::PropertyProxy<bool> property_can_activate_pull() ;
00453 #endif //#GLIBMM_PROPERTIES_ENABLED
00454
00455 #ifdef GLIBMM_PROPERTIES_ENABLED
00456
00462 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_pull() const;
00463 #endif //#GLIBMM_PROPERTIES_ENABLED
00464
00465 #ifdef GLIBMM_PROPERTIES_ENABLED
00466
00472 Glib::PropertyProxy<bool> property_can_activate_push() ;
00473 #endif //#GLIBMM_PROPERTIES_ENABLED
00474
00475 #ifdef GLIBMM_PROPERTIES_ENABLED
00476
00482 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_push() const;
00483 #endif //#GLIBMM_PROPERTIES_ENABLED
00484
00485 #ifdef GLIBMM_PROPERTIES_ENABLED
00486
00492 Glib::PropertyProxy<bool> property_is_live() ;
00493 #endif //#GLIBMM_PROPERTIES_ENABLED
00494
00495 #ifdef GLIBMM_PROPERTIES_ENABLED
00496
00502 Glib::PropertyProxy_ReadOnly<bool> property_is_live() const;
00503 #endif //#GLIBMM_PROPERTIES_ENABLED
00504
00505 #ifdef GLIBMM_PROPERTIES_ENABLED
00506
00512 Glib::PropertyProxy<Gst::Format> property_format() ;
00513 #endif //#GLIBMM_PROPERTIES_ENABLED
00514
00515 #ifdef GLIBMM_PROPERTIES_ENABLED
00516
00522 Glib::PropertyProxy_ReadOnly<Gst::Format> property_format() const;
00523 #endif //#GLIBMM_PROPERTIES_ENABLED
00524
00525
00531 Glib::SignalProxy2< void,const Glib::RefPtr<Gst::Buffer>&,const Glib::RefPtr<Gst::Pad>& > signal_handoff();
00532
00533
00534 public:
00535
00536 public:
00537
00538 #ifdef GLIBMM_VFUNCS_ENABLED
00539 #endif //GLIBMM_VFUNCS_ENABLED
00540
00541 protected:
00542
00543 #ifdef GLIBMM_VFUNCS_ENABLED
00544 #endif //GLIBMM_VFUNCS_ENABLED
00545
00546
00547 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00548 virtual void on_handoff(const Glib::RefPtr<Gst::Buffer>& arg0, const Glib::RefPtr<Gst::Pad>& arg1);
00549 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00550
00551
00552 };
00553
00554 }
00555
00556
00557 namespace Glib
00558 {
00567 Glib::RefPtr<Gst::FakeSrc> wrap(GstFakeSrc* object, bool take_copy = false);
00568 }
00569
00570
00571 #endif
00572