queue.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _GSTREAMERMM_QUEUE_H
00004 #define _GSTREAMERMM_QUEUE_H
00005 
00006 
00007 #include <glibmm.h>
00008 
00009 /* gstreamermm - a C++ wrapper for gstreamer
00010  *
00011  * Copyright 2008 The gstreamermm Development Team
00012  *
00013  * This library is free software; you can redistribute it and/or
00014  * modify it under the terms of the GNU Lesser General Public
00015  * License as published by the Free Software Foundation; either
00016  * version 2.1 of the License, or (at your option) any later version.
00017  *
00018  * This library is distributed in the hope that it will be useful,
00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00021  * Lesser General Public License for more details.
00022  *
00023  * You should have received a copy of the GNU Lesser General Public
00024  * License along with this library; if not, write to the Free
00025  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00026  */
00027 
00028 #include <gstreamermm/element.h>
00029 
00030 
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 typedef struct _GstQueue GstQueue;
00033 typedef struct _GstQueueClass GstQueueClass;
00034 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00035 
00036 
00037 namespace Gst
00038 { class Queue_Class; } // namespace Gst
00039 namespace Gst
00040 {
00041 
00047 enum QueueLeaky
00048 {
00049   QUEUE_LEAKY_NONE,
00050   QUEUE_LEAKY_UPSTREAM,
00051   QUEUE_LEAKY_DOWNSTREAM
00052 };
00053 
00054 } // namespace Gst
00055 
00056 
00057 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00058 namespace Glib
00059 {
00060 
00061 template <>
00062 class Value<Gst::QueueLeaky> : public Glib::Value_Enum<Gst::QueueLeaky>
00063 {
00064 public:
00065   static GType value_type() G_GNUC_CONST;
00066 };
00067 
00068 } // namespace Glib
00069 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00070 
00071 
00072 namespace Gst
00073 {
00074 
00075 
00086 class Queue
00087 : public Gst::Element
00088 {
00089   
00090 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00091 
00092 public:
00093   typedef Queue CppObjectType;
00094   typedef Queue_Class CppClassType;
00095   typedef GstQueue BaseObjectType;
00096   typedef GstQueueClass BaseClassType;
00097 
00098 private:  friend class Queue_Class;
00099   static CppClassType queue_class_;
00100 
00101 private:
00102   // noncopyable
00103   Queue(const Queue&);
00104   Queue& operator=(const Queue&);
00105 
00106 protected:
00107   explicit Queue(const Glib::ConstructParams& construct_params);
00108   explicit Queue(GstQueue* castitem);
00109 
00110 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00111 
00112 public:
00113   virtual ~Queue();
00114 
00115 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00116   static GType get_type()      G_GNUC_CONST;
00117   static GType get_base_type() G_GNUC_CONST;
00118 #endif
00119 
00121   GstQueue*       gobj()       { return reinterpret_cast<GstQueue*>(gobject_); }
00122 
00124   const GstQueue* gobj() const { return reinterpret_cast<GstQueue*>(gobject_); }
00125 
00127   GstQueue* gobj_copy();
00128 
00129 private:
00130 
00131   
00132 protected:
00133   Queue();
00134   Queue(const Glib::ustring& name);
00135 
00136 public:
00140   static Glib::RefPtr<Queue> create();
00141 
00142 
00146   static Glib::RefPtr<Queue> create(const Glib::ustring& name);
00147 
00148 
00149   #ifdef GLIBMM_PROPERTIES_ENABLED
00150 
00156   Glib::PropertyProxy_ReadOnly<guint> property_current_level_buffers() const;
00157 #endif //#GLIBMM_PROPERTIES_ENABLED
00158 
00159 
00160   #ifdef GLIBMM_PROPERTIES_ENABLED
00161 
00167   Glib::PropertyProxy_ReadOnly<guint> property_current_level_bytes() const;
00168 #endif //#GLIBMM_PROPERTIES_ENABLED
00169 
00170 
00171   #ifdef GLIBMM_PROPERTIES_ENABLED
00172 
00178   Glib::PropertyProxy_ReadOnly<guint64> property_current_level_time() const;
00179 #endif //#GLIBMM_PROPERTIES_ENABLED
00180 
00181 
00182   #ifdef GLIBMM_PROPERTIES_ENABLED
00183 
00189   Glib::PropertyProxy<guint> property_max_size_buffers() ;
00190 #endif //#GLIBMM_PROPERTIES_ENABLED
00191 
00192 #ifdef GLIBMM_PROPERTIES_ENABLED
00193 
00199   Glib::PropertyProxy_ReadOnly<guint> property_max_size_buffers() const;
00200 #endif //#GLIBMM_PROPERTIES_ENABLED
00201 
00202   #ifdef GLIBMM_PROPERTIES_ENABLED
00203 
00209   Glib::PropertyProxy<guint> property_max_size_bytes() ;
00210 #endif //#GLIBMM_PROPERTIES_ENABLED
00211 
00212 #ifdef GLIBMM_PROPERTIES_ENABLED
00213 
00219   Glib::PropertyProxy_ReadOnly<guint> property_max_size_bytes() const;
00220 #endif //#GLIBMM_PROPERTIES_ENABLED
00221 
00222   #ifdef GLIBMM_PROPERTIES_ENABLED
00223 
00229   Glib::PropertyProxy<guint64> property_max_size_time() ;
00230 #endif //#GLIBMM_PROPERTIES_ENABLED
00231 
00232 #ifdef GLIBMM_PROPERTIES_ENABLED
00233 
00239   Glib::PropertyProxy_ReadOnly<guint64> property_max_size_time() const;
00240 #endif //#GLIBMM_PROPERTIES_ENABLED
00241 
00242   #ifdef GLIBMM_PROPERTIES_ENABLED
00243 
00249   Glib::PropertyProxy<guint> property_min_threshold_buffers() ;
00250 #endif //#GLIBMM_PROPERTIES_ENABLED
00251 
00252 #ifdef GLIBMM_PROPERTIES_ENABLED
00253 
00259   Glib::PropertyProxy_ReadOnly<guint> property_min_threshold_buffers() const;
00260 #endif //#GLIBMM_PROPERTIES_ENABLED
00261 
00262   #ifdef GLIBMM_PROPERTIES_ENABLED
00263 
00269   Glib::PropertyProxy<guint> property_min_threshold_bytes() ;
00270 #endif //#GLIBMM_PROPERTIES_ENABLED
00271 
00272 #ifdef GLIBMM_PROPERTIES_ENABLED
00273 
00279   Glib::PropertyProxy_ReadOnly<guint> property_min_threshold_bytes() const;
00280 #endif //#GLIBMM_PROPERTIES_ENABLED
00281 
00282   #ifdef GLIBMM_PROPERTIES_ENABLED
00283 
00289   Glib::PropertyProxy<guint64> property_min_threshold_time() ;
00290 #endif //#GLIBMM_PROPERTIES_ENABLED
00291 
00292 #ifdef GLIBMM_PROPERTIES_ENABLED
00293 
00299   Glib::PropertyProxy_ReadOnly<guint64> property_min_threshold_time() const;
00300 #endif //#GLIBMM_PROPERTIES_ENABLED
00301 
00302   #ifdef GLIBMM_PROPERTIES_ENABLED
00303 
00309   Glib::PropertyProxy<QueueLeaky> property_leaky() ;
00310 #endif //#GLIBMM_PROPERTIES_ENABLED
00311 
00312 #ifdef GLIBMM_PROPERTIES_ENABLED
00313 
00319   Glib::PropertyProxy_ReadOnly<QueueLeaky> property_leaky() const;
00320 #endif //#GLIBMM_PROPERTIES_ENABLED
00321 
00322 
00328   Glib::SignalProxy0< void > signal_underrun();
00329 
00330   
00336   Glib::SignalProxy0< void > signal_running();
00337 
00338   
00344   Glib::SignalProxy0< void > signal_overrun();
00345 
00346   
00352   Glib::SignalProxy0< void > signal_pushing();
00353 
00354 
00355 public:
00356 
00357 public:
00358   //C++ methods used to invoke GTK+ virtual functions:
00359 #ifdef GLIBMM_VFUNCS_ENABLED
00360 #endif //GLIBMM_VFUNCS_ENABLED
00361 
00362 protected:
00363   //GTK+ Virtual Functions (override these to change behaviour):
00364 #ifdef GLIBMM_VFUNCS_ENABLED
00365 #endif //GLIBMM_VFUNCS_ENABLED
00366 
00367   //Default Signal Handlers::
00368 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00369   virtual void on_underrun();
00370   virtual void on_running();
00371   virtual void on_overrun();
00372   virtual void on_pushing();
00373 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00374 
00375 
00376 };
00377 
00378 } //namespace Gst
00379 
00380 
00381 namespace Glib
00382 {
00391   Glib::RefPtr<Gst::Queue> wrap(GstQueue* object, bool take_copy = false);
00392 }
00393 
00394 
00395 #endif /* _GSTREAMERMM_QUEUE_H */
00396 

Generated on Wed Aug 19 15:53:27 2009 for gstreamermm by  doxygen 1.5.4