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 #include <gstreamermm/element.h>
00029
00030
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 typedef struct _GstMultiQueue GstMultiQueue;
00033 typedef struct _GstMultiQueueClass GstMultiQueueClass;
00034 #endif
00035
00036
00037 namespace Gst
00038 { class MultiQueue_Class; }
00039 namespace Gst
00040 {
00041
00052 class MultiQueue
00053 : public Gst::Element
00054 {
00055
00056 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00057
00058 public:
00059 typedef MultiQueue CppObjectType;
00060 typedef MultiQueue_Class CppClassType;
00061 typedef GstMultiQueue BaseObjectType;
00062 typedef GstMultiQueueClass BaseClassType;
00063
00064 private: friend class MultiQueue_Class;
00065 static CppClassType multiqueue_class_;
00066
00067 private:
00068
00069 MultiQueue(const MultiQueue&);
00070 MultiQueue& operator=(const MultiQueue&);
00071
00072 protected:
00073 explicit MultiQueue(const Glib::ConstructParams& construct_params);
00074 explicit MultiQueue(GstMultiQueue* castitem);
00075
00076 #endif
00077
00078 public:
00079 virtual ~MultiQueue();
00080
00081 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00082 static GType get_type() G_GNUC_CONST;
00083 static GType get_base_type() G_GNUC_CONST;
00084 #endif
00085
00087 GstMultiQueue* gobj() { return reinterpret_cast<GstMultiQueue*>(gobject_); }
00088
00090 const GstMultiQueue* gobj() const { return reinterpret_cast<GstMultiQueue*>(gobject_); }
00091
00093 GstMultiQueue* gobj_copy();
00094
00095 private:
00096
00097
00098 protected:
00099 MultiQueue();
00100 MultiQueue(const Glib::ustring& name);
00101
00102 public:
00106 static Glib::RefPtr<MultiQueue> create();
00107
00108
00112 static Glib::RefPtr<MultiQueue> create(const Glib::ustring& name);
00113
00114
00115 #ifdef GLIBMM_PROPERTIES_ENABLED
00116
00122 Glib::PropertyProxy<guint> property_extra_size_bytes() ;
00123 #endif //#GLIBMM_PROPERTIES_ENABLED
00124
00125 #ifdef GLIBMM_PROPERTIES_ENABLED
00126
00132 Glib::PropertyProxy_ReadOnly<guint> property_extra_size_bytes() const;
00133 #endif //#GLIBMM_PROPERTIES_ENABLED
00134
00135 #ifdef GLIBMM_PROPERTIES_ENABLED
00136
00142 Glib::PropertyProxy<guint> property_extra_size_buffers() ;
00143 #endif //#GLIBMM_PROPERTIES_ENABLED
00144
00145 #ifdef GLIBMM_PROPERTIES_ENABLED
00146
00152 Glib::PropertyProxy_ReadOnly<guint> property_extra_size_buffers() const;
00153 #endif //#GLIBMM_PROPERTIES_ENABLED
00154
00155 #ifdef GLIBMM_PROPERTIES_ENABLED
00156
00162 Glib::PropertyProxy<guint64> property_extra_size_time() ;
00163 #endif //#GLIBMM_PROPERTIES_ENABLED
00164
00165 #ifdef GLIBMM_PROPERTIES_ENABLED
00166
00172 Glib::PropertyProxy_ReadOnly<guint64> property_extra_size_time() const;
00173 #endif //#GLIBMM_PROPERTIES_ENABLED
00174
00175 #ifdef GLIBMM_PROPERTIES_ENABLED
00176
00182 Glib::PropertyProxy<guint> property_max_size_bytes() ;
00183 #endif //#GLIBMM_PROPERTIES_ENABLED
00184
00185 #ifdef GLIBMM_PROPERTIES_ENABLED
00186
00192 Glib::PropertyProxy_ReadOnly<guint> property_max_size_bytes() const;
00193 #endif //#GLIBMM_PROPERTIES_ENABLED
00194
00195 #ifdef GLIBMM_PROPERTIES_ENABLED
00196
00202 Glib::PropertyProxy<guint> property_max_size_buffers() ;
00203 #endif //#GLIBMM_PROPERTIES_ENABLED
00204
00205 #ifdef GLIBMM_PROPERTIES_ENABLED
00206
00212 Glib::PropertyProxy_ReadOnly<guint> property_max_size_buffers() const;
00213 #endif //#GLIBMM_PROPERTIES_ENABLED
00214
00215 #ifdef GLIBMM_PROPERTIES_ENABLED
00216
00222 Glib::PropertyProxy<guint64> property_max_size_time() ;
00223 #endif //#GLIBMM_PROPERTIES_ENABLED
00224
00225 #ifdef GLIBMM_PROPERTIES_ENABLED
00226
00232 Glib::PropertyProxy_ReadOnly<guint64> property_max_size_time() const;
00233 #endif //#GLIBMM_PROPERTIES_ENABLED
00234
00235
00241 Glib::SignalProxy0< void > signal_underrun();
00242
00243
00249 Glib::SignalProxy0< void > signal_overrun();
00250
00251
00252 public:
00253
00254 public:
00255
00256 #ifdef GLIBMM_VFUNCS_ENABLED
00257 #endif //GLIBMM_VFUNCS_ENABLED
00258
00259 protected:
00260
00261 #ifdef GLIBMM_VFUNCS_ENABLED
00262 #endif //GLIBMM_VFUNCS_ENABLED
00263
00264
00265 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00266 virtual void on_underrun();
00267 virtual void on_overrun();
00268 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00269
00270
00271 };
00272
00273 }
00274
00275
00276 namespace Glib
00277 {
00286 Glib::RefPtr<Gst::MultiQueue> wrap(GstMultiQueue* object, bool take_copy = false);
00287 }
00288
00289
00290 #endif
00291