00001
00002
00003 #ifndef _GSTREAMERMM_FAKESINK_H
00004 #define _GSTREAMERMM_FAKESINK_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/basesink.h>
00031 #include <gstreamermm/buffer.h>
00032 #include <gstreamermm/pad.h>
00033
00034
00035 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00036 typedef struct _GstFakeSink GstFakeSink;
00037 typedef struct _GstFakeSinkClass GstFakeSinkClass;
00038 #endif
00039
00040
00041 namespace Gst
00042 { class FakeSink_Class; }
00043 namespace Gst
00044 {
00045
00051 enum FakeSinkStateError
00052 {
00053 FAKE_SINK_STATE_ERROR_NONE,
00054 FAKE_SINK_STATE_ERROR_NULL_READY,
00055 FAKE_SINK_STATE_ERROR_READY_PAUSED,
00056 FAKE_SINK_STATE_ERROR_PAUSED_PLAYING,
00057 FAKE_SINK_STATE_ERROR_PLAYING_PAUSED,
00058 FAKE_SINK_STATE_ERROR_PAUSED_READY,
00059 FAKE_SINK_STATE_ERROR_READY_NULL
00060 };
00061
00062 }
00063
00064
00065 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00066 namespace Glib
00067 {
00068
00069 template <>
00070 class Value<Gst::FakeSinkStateError> : public Glib::Value_Enum<Gst::FakeSinkStateError>
00071 {
00072 public:
00073 static GType value_type() G_GNUC_CONST;
00074 };
00075
00076 }
00077 #endif
00078
00079
00080 namespace Gst
00081 {
00082
00083
00094 class FakeSink
00095 : public Gst::BaseSink
00096 {
00097
00098 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00099
00100 public:
00101 typedef FakeSink CppObjectType;
00102 typedef FakeSink_Class CppClassType;
00103 typedef GstFakeSink BaseObjectType;
00104 typedef GstFakeSinkClass BaseClassType;
00105
00106 private: friend class FakeSink_Class;
00107 static CppClassType fakesink_class_;
00108
00109 private:
00110
00111 FakeSink(const FakeSink&);
00112 FakeSink& operator=(const FakeSink&);
00113
00114 protected:
00115 explicit FakeSink(const Glib::ConstructParams& construct_params);
00116 explicit FakeSink(GstFakeSink* castitem);
00117
00118 #endif
00119
00120 public:
00121 virtual ~FakeSink();
00122
00123 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00124 static GType get_type() G_GNUC_CONST;
00125
00126
00127 static GType get_base_type() G_GNUC_CONST;
00128 #endif
00129
00131 GstFakeSink* gobj() { return reinterpret_cast<GstFakeSink*>(gobject_); }
00132
00134 const GstFakeSink* gobj() const { return reinterpret_cast<GstFakeSink*>(gobject_); }
00135
00137 GstFakeSink* gobj_copy();
00138
00139 private:
00140
00141
00142 protected:
00143 FakeSink();
00144 FakeSink(const Glib::ustring& name);
00145
00146 public:
00150 static Glib::RefPtr<FakeSink> create();
00151
00152
00156 static Glib::RefPtr<FakeSink> create(const Glib::ustring& name);
00157
00158
00159 #ifdef GLIBMM_PROPERTIES_ENABLED
00160
00166 Glib::PropertyProxy<Gst::FakeSinkStateError> property_state_error() ;
00167 #endif //#GLIBMM_PROPERTIES_ENABLED
00168
00169 #ifdef GLIBMM_PROPERTIES_ENABLED
00170
00176 Glib::PropertyProxy_ReadOnly<Gst::FakeSinkStateError> property_state_error() const;
00177 #endif //#GLIBMM_PROPERTIES_ENABLED
00178
00179 #ifdef GLIBMM_PROPERTIES_ENABLED
00180
00186 Glib::PropertyProxy<bool> property_silent() ;
00187 #endif //#GLIBMM_PROPERTIES_ENABLED
00188
00189 #ifdef GLIBMM_PROPERTIES_ENABLED
00190
00196 Glib::PropertyProxy_ReadOnly<bool> property_silent() const;
00197 #endif //#GLIBMM_PROPERTIES_ENABLED
00198
00199 #ifdef GLIBMM_PROPERTIES_ENABLED
00200
00206 Glib::PropertyProxy<bool> property_dump() ;
00207 #endif //#GLIBMM_PROPERTIES_ENABLED
00208
00209 #ifdef GLIBMM_PROPERTIES_ENABLED
00210
00216 Glib::PropertyProxy_ReadOnly<bool> property_dump() const;
00217 #endif //#GLIBMM_PROPERTIES_ENABLED
00218
00219 #ifdef GLIBMM_PROPERTIES_ENABLED
00220
00226 Glib::PropertyProxy<bool> property_signal_handoffs() ;
00227 #endif //#GLIBMM_PROPERTIES_ENABLED
00228
00229 #ifdef GLIBMM_PROPERTIES_ENABLED
00230
00236 Glib::PropertyProxy_ReadOnly<bool> property_signal_handoffs() const;
00237 #endif //#GLIBMM_PROPERTIES_ENABLED
00238
00239 #ifdef GLIBMM_PROPERTIES_ENABLED
00240
00246 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_last_message() const;
00247 #endif //#GLIBMM_PROPERTIES_ENABLED
00248
00249
00250 #ifdef GLIBMM_PROPERTIES_ENABLED
00251
00257 Glib::PropertyProxy<bool> property_can_activate_push() ;
00258 #endif //#GLIBMM_PROPERTIES_ENABLED
00259
00260 #ifdef GLIBMM_PROPERTIES_ENABLED
00261
00267 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_push() const;
00268 #endif //#GLIBMM_PROPERTIES_ENABLED
00269
00270 #ifdef GLIBMM_PROPERTIES_ENABLED
00271
00277 Glib::PropertyProxy<bool> property_can_activate_pull() ;
00278 #endif //#GLIBMM_PROPERTIES_ENABLED
00279
00280 #ifdef GLIBMM_PROPERTIES_ENABLED
00281
00287 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_pull() const;
00288 #endif //#GLIBMM_PROPERTIES_ENABLED
00289
00290 #ifdef GLIBMM_PROPERTIES_ENABLED
00291
00297 Glib::PropertyProxy<int> property_num_buffers() ;
00298 #endif //#GLIBMM_PROPERTIES_ENABLED
00299
00300 #ifdef GLIBMM_PROPERTIES_ENABLED
00301
00307 Glib::PropertyProxy_ReadOnly<int> property_num_buffers() const;
00308 #endif //#GLIBMM_PROPERTIES_ENABLED
00309
00310
00316 Glib::SignalProxy2< void,const Glib::RefPtr<Gst::Buffer>&,const Glib::RefPtr<Gst::Pad>& > signal_handoff();
00317
00318
00324 Glib::SignalProxy2< void,const Glib::RefPtr<Gst::Buffer>&,const Glib::RefPtr<Gst::Pad>& > signal_preroll_handoff();
00325
00326
00327 public:
00328
00329 public:
00330
00331 #ifdef GLIBMM_VFUNCS_ENABLED
00332 #endif //GLIBMM_VFUNCS_ENABLED
00333
00334 protected:
00335
00336 #ifdef GLIBMM_VFUNCS_ENABLED
00337 #endif //GLIBMM_VFUNCS_ENABLED
00338
00339
00340 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00341 virtual void on_handoff(const Glib::RefPtr<Gst::Buffer>& arg0, const Glib::RefPtr<Gst::Pad>& arg1);
00342 virtual void on_preroll_handoff(const Glib::RefPtr<Gst::Buffer>& arg0, const Glib::RefPtr<Gst::Pad>& arg1);
00343 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00344
00345
00346 };
00347
00348 }
00349
00350
00351 namespace Glib
00352 {
00361 Glib::RefPtr<Gst::FakeSink> wrap(GstFakeSink* object, bool take_copy = false);
00362 }
00363
00364
00365 #endif
00366