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
00042
00053 class MultiQueue
00054 : public Gst::Element
00055 {
00056
00057 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00058
00059 public:
00060 typedef MultiQueue CppObjectType;
00061 typedef MultiQueue_Class CppClassType;
00062 typedef GstMultiQueue BaseObjectType;
00063 typedef GstMultiQueueClass BaseClassType;
00064
00065 private: friend class MultiQueue_Class;
00066 static CppClassType multiqueue_class_;
00067
00068 private:
00069
00070 MultiQueue(const MultiQueue&);
00071 MultiQueue& operator=(const MultiQueue&);
00072
00073 protected:
00074 explicit MultiQueue(const Glib::ConstructParams& construct_params);
00075 explicit MultiQueue(GstMultiQueue* castitem);
00076
00077 #endif
00078
00079 public:
00080 virtual ~MultiQueue();
00081
00082 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00083 static GType get_type() G_GNUC_CONST;
00084 static GType get_base_type() G_GNUC_CONST;
00085 #endif
00086
00088 GstMultiQueue* gobj() { return reinterpret_cast<GstMultiQueue*>(gobject_); }
00089
00091 const GstMultiQueue* gobj() const { return reinterpret_cast<GstMultiQueue*>(gobject_); }
00092
00094 GstMultiQueue* gobj_copy();
00095
00096 private:
00097
00098
00099 protected:
00100 MultiQueue();
00101 MultiQueue(const Glib::ustring& name);
00102
00103 public:
00107 static Glib::RefPtr<MultiQueue> create();
00108
00109
00113 static Glib::RefPtr<MultiQueue> create(const Glib::ustring& name);
00114
00115
00116 #ifdef GLIBMM_PROPERTIES_ENABLED
00117
00123 Glib::PropertyProxy<guint> property_extra_size_bytes() ;
00124 #endif //#GLIBMM_PROPERTIES_ENABLED
00125
00126 #ifdef GLIBMM_PROPERTIES_ENABLED
00127
00133 Glib::PropertyProxy_ReadOnly<guint> property_extra_size_bytes() const;
00134 #endif //#GLIBMM_PROPERTIES_ENABLED
00135
00136 #ifdef GLIBMM_PROPERTIES_ENABLED
00137
00143 Glib::PropertyProxy<guint> property_extra_size_buffers() ;
00144 #endif //#GLIBMM_PROPERTIES_ENABLED
00145
00146 #ifdef GLIBMM_PROPERTIES_ENABLED
00147
00153 Glib::PropertyProxy_ReadOnly<guint> property_extra_size_buffers() const;
00154 #endif //#GLIBMM_PROPERTIES_ENABLED
00155
00156 #ifdef GLIBMM_PROPERTIES_ENABLED
00157
00163 Glib::PropertyProxy<guint64> property_extra_size_time() ;
00164 #endif //#GLIBMM_PROPERTIES_ENABLED
00165
00166 #ifdef GLIBMM_PROPERTIES_ENABLED
00167
00173 Glib::PropertyProxy_ReadOnly<guint64> property_extra_size_time() const;
00174 #endif //#GLIBMM_PROPERTIES_ENABLED
00175
00176 #ifdef GLIBMM_PROPERTIES_ENABLED
00177
00183 Glib::PropertyProxy<guint> property_max_size_bytes() ;
00184 #endif //#GLIBMM_PROPERTIES_ENABLED
00185
00186 #ifdef GLIBMM_PROPERTIES_ENABLED
00187
00193 Glib::PropertyProxy_ReadOnly<guint> property_max_size_bytes() const;
00194 #endif //#GLIBMM_PROPERTIES_ENABLED
00195
00196 #ifdef GLIBMM_PROPERTIES_ENABLED
00197
00203 Glib::PropertyProxy<guint> property_max_size_buffers() ;
00204 #endif //#GLIBMM_PROPERTIES_ENABLED
00205
00206 #ifdef GLIBMM_PROPERTIES_ENABLED
00207
00213 Glib::PropertyProxy_ReadOnly<guint> property_max_size_buffers() const;
00214 #endif //#GLIBMM_PROPERTIES_ENABLED
00215
00216 #ifdef GLIBMM_PROPERTIES_ENABLED
00217
00223 Glib::PropertyProxy<guint64> property_max_size_time() ;
00224 #endif //#GLIBMM_PROPERTIES_ENABLED
00225
00226 #ifdef GLIBMM_PROPERTIES_ENABLED
00227
00233 Glib::PropertyProxy_ReadOnly<guint64> property_max_size_time() const;
00234 #endif //#GLIBMM_PROPERTIES_ENABLED
00235
00236
00242 Glib::SignalProxy0< void > signal_underrun();
00243
00244
00250 Glib::SignalProxy0< void > signal_overrun();
00251
00252
00253 public:
00254
00255 public:
00256
00257 #ifdef GLIBMM_VFUNCS_ENABLED
00258 #endif //GLIBMM_VFUNCS_ENABLED
00259
00260 protected:
00261
00262 #ifdef GLIBMM_VFUNCS_ENABLED
00263 #endif //GLIBMM_VFUNCS_ENABLED
00264
00265
00266 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00267 virtual void on_underrun();
00268 virtual void on_overrun();
00269 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00270
00271
00272 };
00273
00274 }
00275
00276
00277 namespace Glib
00278 {
00287 Glib::RefPtr<Gst::MultiQueue> wrap(GstMultiQueue* object, bool take_copy = false);
00288 }
00289
00290
00291 #endif
00292