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 #include <gstreamermm/basesink.h>
00029 #include <gstreamermm/buffer.h>
00030 #include <gstreamermm/pad.h>
00031
00032
00033 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00034 typedef struct _GstFakeSink GstFakeSink;
00035 typedef struct _GstFakeSinkClass GstFakeSinkClass;
00036 #endif
00037
00038
00039 namespace Gst
00040 { class FakeSink_Class; }
00041 namespace Gst
00042 {
00043
00049 enum FakeSinkStateError
00050 {
00051 FAKE_SINK_STATE_ERROR_NONE,
00052 FAKE_SINK_STATE_ERROR_NULL_READY,
00053 FAKE_SINK_STATE_ERROR_READY_PAUSED,
00054 FAKE_SINK_STATE_ERROR_PAUSED_PLAYING,
00055 FAKE_SINK_STATE_ERROR_PLAYING_PAUSED,
00056 FAKE_SINK_STATE_ERROR_PAUSED_READY,
00057 FAKE_SINK_STATE_ERROR_READY_NULL
00058 };
00059
00060 }
00061
00062
00063 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00064 namespace Glib
00065 {
00066
00067 template <>
00068 class Value<Gst::FakeSinkStateError> : public Glib::Value_Enum<Gst::FakeSinkStateError>
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 FakeSink
00093 : public Gst::BaseSink
00094 {
00095
00096 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00097
00098 public:
00099 typedef FakeSink CppObjectType;
00100 typedef FakeSink_Class CppClassType;
00101 typedef GstFakeSink BaseObjectType;
00102 typedef GstFakeSinkClass BaseClassType;
00103
00104 private: friend class FakeSink_Class;
00105 static CppClassType fakesink_class_;
00106
00107 private:
00108
00109 FakeSink(const FakeSink&);
00110 FakeSink& operator=(const FakeSink&);
00111
00112 protected:
00113 explicit FakeSink(const Glib::ConstructParams& construct_params);
00114 explicit FakeSink(GstFakeSink* castitem);
00115
00116 #endif
00117
00118 public:
00119 virtual ~FakeSink();
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 GstFakeSink* gobj() { return reinterpret_cast<GstFakeSink*>(gobject_); }
00128
00130 const GstFakeSink* gobj() const { return reinterpret_cast<GstFakeSink*>(gobject_); }
00131
00133 GstFakeSink* gobj_copy();
00134
00135 private:
00136
00137
00138 protected:
00139 FakeSink();
00140 FakeSink(const Glib::ustring& name);
00141
00142 public:
00146 static Glib::RefPtr<FakeSink> create();
00147
00148
00152 static Glib::RefPtr<FakeSink> create(const Glib::ustring& name);
00153
00154
00155 #ifdef GLIBMM_PROPERTIES_ENABLED
00156
00162 Glib::PropertyProxy<FakeSinkStateError> property_state_error() ;
00163 #endif //#GLIBMM_PROPERTIES_ENABLED
00164
00165 #ifdef GLIBMM_PROPERTIES_ENABLED
00166
00172 Glib::PropertyProxy_ReadOnly<FakeSinkStateError> property_state_error() const;
00173 #endif //#GLIBMM_PROPERTIES_ENABLED
00174
00175 #ifdef GLIBMM_PROPERTIES_ENABLED
00176
00182 Glib::PropertyProxy<bool> property_silent() ;
00183 #endif //#GLIBMM_PROPERTIES_ENABLED
00184
00185 #ifdef GLIBMM_PROPERTIES_ENABLED
00186
00192 Glib::PropertyProxy_ReadOnly<bool> property_silent() const;
00193 #endif //#GLIBMM_PROPERTIES_ENABLED
00194
00195 #ifdef GLIBMM_PROPERTIES_ENABLED
00196
00202 Glib::PropertyProxy<bool> property_dump() ;
00203 #endif //#GLIBMM_PROPERTIES_ENABLED
00204
00205 #ifdef GLIBMM_PROPERTIES_ENABLED
00206
00212 Glib::PropertyProxy_ReadOnly<bool> property_dump() const;
00213 #endif //#GLIBMM_PROPERTIES_ENABLED
00214
00215 #ifdef GLIBMM_PROPERTIES_ENABLED
00216
00222 Glib::PropertyProxy<bool> property_signal_handoffs() ;
00223 #endif //#GLIBMM_PROPERTIES_ENABLED
00224
00225 #ifdef GLIBMM_PROPERTIES_ENABLED
00226
00232 Glib::PropertyProxy_ReadOnly<bool> property_signal_handoffs() const;
00233 #endif //#GLIBMM_PROPERTIES_ENABLED
00234
00235 #ifdef GLIBMM_PROPERTIES_ENABLED
00236
00242 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_last_message() const;
00243 #endif //#GLIBMM_PROPERTIES_ENABLED
00244
00245
00246 #ifdef GLIBMM_PROPERTIES_ENABLED
00247
00253 Glib::PropertyProxy<bool> property_can_activate_push() ;
00254 #endif //#GLIBMM_PROPERTIES_ENABLED
00255
00256 #ifdef GLIBMM_PROPERTIES_ENABLED
00257
00263 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_push() const;
00264 #endif //#GLIBMM_PROPERTIES_ENABLED
00265
00266 #ifdef GLIBMM_PROPERTIES_ENABLED
00267
00273 Glib::PropertyProxy<bool> property_can_activate_pull() ;
00274 #endif //#GLIBMM_PROPERTIES_ENABLED
00275
00276 #ifdef GLIBMM_PROPERTIES_ENABLED
00277
00283 Glib::PropertyProxy_ReadOnly<bool> property_can_activate_pull() const;
00284 #endif //#GLIBMM_PROPERTIES_ENABLED
00285
00286 #ifdef GLIBMM_PROPERTIES_ENABLED
00287
00293 Glib::PropertyProxy<int> property_num_buffers() ;
00294 #endif //#GLIBMM_PROPERTIES_ENABLED
00295
00296 #ifdef GLIBMM_PROPERTIES_ENABLED
00297
00303 Glib::PropertyProxy_ReadOnly<int> property_num_buffers() const;
00304 #endif //#GLIBMM_PROPERTIES_ENABLED
00305
00306
00312 Glib::SignalProxy2< void,const Glib::RefPtr<Gst::Buffer>&,const Glib::RefPtr<Gst::Pad>& > signal_handoff();
00313
00314
00320 Glib::SignalProxy2< void,const Glib::RefPtr<Gst::Buffer>&,const Glib::RefPtr<Gst::Pad>& > signal_preroll_handoff();
00321
00322
00323 public:
00324
00325 public:
00326
00327 #ifdef GLIBMM_VFUNCS_ENABLED
00328 #endif //GLIBMM_VFUNCS_ENABLED
00329
00330 protected:
00331
00332 #ifdef GLIBMM_VFUNCS_ENABLED
00333 #endif //GLIBMM_VFUNCS_ENABLED
00334
00335
00336 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00337 virtual void on_handoff(const Glib::RefPtr<Gst::Buffer>& arg0, const Glib::RefPtr<Gst::Pad>& arg1);
00338 virtual void on_preroll_handoff(const Glib::RefPtr<Gst::Buffer>& arg0, const Glib::RefPtr<Gst::Pad>& arg1);
00339 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00340
00341
00342 };
00343
00344 }
00345
00346
00347 namespace Glib
00348 {
00357 Glib::RefPtr<Gst::FakeSink> wrap(GstFakeSink* object, bool take_copy = false);
00358 }
00359
00360
00361 #endif
00362