00001
00002
00003 #ifndef _GSTREAMERMM_MULTIQUEUE_H
00004 #define _GSTREAMERMM_MULTIQUEUE_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/element.h>
00031
00032
00033 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00034 typedef struct _GstMultiQueue GstMultiQueue;
00035 typedef struct _GstMultiQueueClass GstMultiQueueClass;
00036 #endif
00037
00038
00039 namespace Gst
00040 { class MultiQueue_Class; }
00041 namespace Gst
00042 {
00043
00054 class MultiQueue
00055 : public Gst::Element
00056 {
00057
00058 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00059
00060 public:
00061 typedef MultiQueue CppObjectType;
00062 typedef MultiQueue_Class CppClassType;
00063 typedef GstMultiQueue BaseObjectType;
00064 typedef GstMultiQueueClass BaseClassType;
00065
00066 private: friend class MultiQueue_Class;
00067 static CppClassType multiqueue_class_;
00068
00069 private:
00070
00071 MultiQueue(const MultiQueue&);
00072 MultiQueue& operator=(const MultiQueue&);
00073
00074 protected:
00075 explicit MultiQueue(const Glib::ConstructParams& construct_params);
00076 explicit MultiQueue(GstMultiQueue* castitem);
00077
00078 #endif
00079
00080 public:
00081 virtual ~MultiQueue();
00082
00083 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00084 static GType get_type() G_GNUC_CONST;
00085
00086
00087 static GType get_base_type() G_GNUC_CONST;
00088 #endif
00089
00091 GstMultiQueue* gobj() { return reinterpret_cast<GstMultiQueue*>(gobject_); }
00092
00094 const GstMultiQueue* gobj() const { return reinterpret_cast<GstMultiQueue*>(gobject_); }
00095
00097 GstMultiQueue* gobj_copy();
00098
00099 private:
00100
00101
00102 protected:
00103 MultiQueue();
00104 MultiQueue(const Glib::ustring& name);
00105
00106 public:
00110 static Glib::RefPtr<MultiQueue> create();
00111
00112
00116 static Glib::RefPtr<MultiQueue> create(const Glib::ustring& name);
00117
00118
00119 #ifdef GLIBMM_PROPERTIES_ENABLED
00120
00126 Glib::PropertyProxy<guint> property_extra_size_bytes() ;
00127 #endif //#GLIBMM_PROPERTIES_ENABLED
00128
00129 #ifdef GLIBMM_PROPERTIES_ENABLED
00130
00136 Glib::PropertyProxy_ReadOnly<guint> property_extra_size_bytes() const;
00137 #endif //#GLIBMM_PROPERTIES_ENABLED
00138
00139 #ifdef GLIBMM_PROPERTIES_ENABLED
00140
00146 Glib::PropertyProxy<guint> property_extra_size_buffers() ;
00147 #endif //#GLIBMM_PROPERTIES_ENABLED
00148
00149 #ifdef GLIBMM_PROPERTIES_ENABLED
00150
00156 Glib::PropertyProxy_ReadOnly<guint> property_extra_size_buffers() const;
00157 #endif //#GLIBMM_PROPERTIES_ENABLED
00158
00159 #ifdef GLIBMM_PROPERTIES_ENABLED
00160
00166 Glib::PropertyProxy<guint64> property_extra_size_time() ;
00167 #endif //#GLIBMM_PROPERTIES_ENABLED
00168
00169 #ifdef GLIBMM_PROPERTIES_ENABLED
00170
00176 Glib::PropertyProxy_ReadOnly<guint64> property_extra_size_time() const;
00177 #endif //#GLIBMM_PROPERTIES_ENABLED
00178
00179 #ifdef GLIBMM_PROPERTIES_ENABLED
00180
00186 Glib::PropertyProxy<guint> property_max_size_bytes() ;
00187 #endif //#GLIBMM_PROPERTIES_ENABLED
00188
00189 #ifdef GLIBMM_PROPERTIES_ENABLED
00190
00196 Glib::PropertyProxy_ReadOnly<guint> property_max_size_bytes() const;
00197 #endif //#GLIBMM_PROPERTIES_ENABLED
00198
00199 #ifdef GLIBMM_PROPERTIES_ENABLED
00200
00206 Glib::PropertyProxy<guint> property_max_size_buffers() ;
00207 #endif //#GLIBMM_PROPERTIES_ENABLED
00208
00209 #ifdef GLIBMM_PROPERTIES_ENABLED
00210
00216 Glib::PropertyProxy_ReadOnly<guint> property_max_size_buffers() const;
00217 #endif //#GLIBMM_PROPERTIES_ENABLED
00218
00219 #ifdef GLIBMM_PROPERTIES_ENABLED
00220
00226 Glib::PropertyProxy<guint64> property_max_size_time() ;
00227 #endif //#GLIBMM_PROPERTIES_ENABLED
00228
00229 #ifdef GLIBMM_PROPERTIES_ENABLED
00230
00236 Glib::PropertyProxy_ReadOnly<guint64> property_max_size_time() const;
00237 #endif //#GLIBMM_PROPERTIES_ENABLED
00238
00239
00245 Glib::SignalProxy0< void > signal_underrun();
00246
00247
00253 Glib::SignalProxy0< void > signal_overrun();
00254
00255
00256 public:
00257
00258 public:
00259
00260 #ifdef GLIBMM_VFUNCS_ENABLED
00261 #endif //GLIBMM_VFUNCS_ENABLED
00262
00263 protected:
00264
00265 #ifdef GLIBMM_VFUNCS_ENABLED
00266 #endif //GLIBMM_VFUNCS_ENABLED
00267
00268
00269 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00270 virtual void on_underrun();
00271 virtual void on_overrun();
00272 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00273
00274
00275 };
00276
00277 }
00278
00279
00280 namespace Glib
00281 {
00290 Glib::RefPtr<Gst::MultiQueue> wrap(GstMultiQueue* object, bool take_copy = false);
00291 }
00292
00293
00294 #endif
00295