playbin2.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _GSTREAMERMM_PLAYBIN2_H
00004 #define _GSTREAMERMM_PLAYBIN2_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/pipeline.h>
00029 #include <gstreamermm/element.h>
00030 #include <gstreamermm/buffer.h>
00031 #include <gstreamermm/taglist.h>
00032 #include <gstreamermm/caps.h>
00033 #include <gstreamermm/pad.h>
00034 
00035 
00036 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00037 typedef struct _GstPlayBin2 GstPlayBin2;
00038 typedef struct _GstPlayBin2Class GstPlayBin2Class;
00039 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00040 
00041 
00042 namespace Gst
00043 { class PlayBin2_Class; } // namespace Gst
00044 namespace Gst
00045 {
00046 
00060 enum PlayFlags
00061 {
00062   PLAY_FLAG_VIDEO = 1 << 0,
00063   PLAY_FLAG_AUDIO = 1 << 1,
00064   PLAY_FLAG_TEXT = 1 << 2,
00065   PLAY_FLAG_VIS = 1 << 3,
00066   PLAY_FLAG_SOFT_VOLUME = 1 << 4,
00067   PLAY_FLAG_NATIVE_AUDIO = 1 << 5,
00068   PLAY_FLAG_NATIVE_VIDEO = 1 << 6
00069 };
00070 
00072 inline PlayFlags operator|(PlayFlags lhs, PlayFlags rhs)
00073   { return static_cast<PlayFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs)); }
00074 
00076 inline PlayFlags operator&(PlayFlags lhs, PlayFlags rhs)
00077   { return static_cast<PlayFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs)); }
00078 
00080 inline PlayFlags operator^(PlayFlags lhs, PlayFlags rhs)
00081   { return static_cast<PlayFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs)); }
00082 
00084 inline PlayFlags operator~(PlayFlags flags)
00085   { return static_cast<PlayFlags>(~static_cast<unsigned>(flags)); }
00086 
00088 inline PlayFlags& operator|=(PlayFlags& lhs, PlayFlags rhs)
00089   { return (lhs = static_cast<PlayFlags>(static_cast<unsigned>(lhs) | static_cast<unsigned>(rhs))); }
00090 
00092 inline PlayFlags& operator&=(PlayFlags& lhs, PlayFlags rhs)
00093   { return (lhs = static_cast<PlayFlags>(static_cast<unsigned>(lhs) & static_cast<unsigned>(rhs))); }
00094 
00096 inline PlayFlags& operator^=(PlayFlags& lhs, PlayFlags rhs)
00097   { return (lhs = static_cast<PlayFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
00098 
00099 } // namespace Gst
00100 
00101 
00102 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00103 namespace Glib
00104 {
00105 
00106 template <>
00107 class Value<Gst::PlayFlags> : public Glib::Value_Flags<Gst::PlayFlags>
00108 {
00109 public:
00110   static GType value_type() G_GNUC_CONST;
00111 };
00112 
00113 } // namespace Glib
00114 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00115 
00116 
00117 namespace Gst
00118 {
00119 
00120 
00131 class PlayBin2
00132 : public Gst::Pipeline
00133 {
00134   
00135 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00136 
00137 public:
00138   typedef PlayBin2 CppObjectType;
00139   typedef PlayBin2_Class CppClassType;
00140   typedef GstPlayBin2 BaseObjectType;
00141   typedef GstPlayBin2Class BaseClassType;
00142 
00143 private:  friend class PlayBin2_Class;
00144   static CppClassType playbin2_class_;
00145 
00146 private:
00147   // noncopyable
00148   PlayBin2(const PlayBin2&);
00149   PlayBin2& operator=(const PlayBin2&);
00150 
00151 protected:
00152   explicit PlayBin2(const Glib::ConstructParams& construct_params);
00153   explicit PlayBin2(GstPlayBin2* castitem);
00154 
00155 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00156 
00157 public:
00158   virtual ~PlayBin2();
00159 
00160 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00161   static GType get_type()      G_GNUC_CONST;
00162   static GType get_base_type() G_GNUC_CONST;
00163 #endif
00164 
00166   GstPlayBin2*       gobj()       { return reinterpret_cast<GstPlayBin2*>(gobject_); }
00167 
00169   const GstPlayBin2* gobj() const { return reinterpret_cast<GstPlayBin2*>(gobject_); }
00170 
00172   GstPlayBin2* gobj_copy();
00173 
00174 private:
00175 
00176   
00177 protected:
00178   PlayBin2();
00179   PlayBin2(const Glib::ustring& name);
00180 
00181 public:
00185   static Glib::RefPtr<PlayBin2> create();
00186 
00187 
00191   static Glib::RefPtr<PlayBin2> create(const Glib::ustring& name);
00192 
00193 
00194   #ifdef GLIBMM_PROPERTIES_ENABLED
00195 
00201   Glib::PropertyProxy<Glib::ustring> property_uri() ;
00202 #endif //#GLIBMM_PROPERTIES_ENABLED
00203 
00204 #ifdef GLIBMM_PROPERTIES_ENABLED
00205 
00211   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_uri() const;
00212 #endif //#GLIBMM_PROPERTIES_ENABLED
00213 
00214   #ifdef GLIBMM_PROPERTIES_ENABLED
00215 
00221   Glib::PropertyProxy<Glib::ustring> property_suburi() ;
00222 #endif //#GLIBMM_PROPERTIES_ENABLED
00223 
00224 #ifdef GLIBMM_PROPERTIES_ENABLED
00225 
00231   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_suburi() const;
00232 #endif //#GLIBMM_PROPERTIES_ENABLED
00233 
00234   #ifdef GLIBMM_PROPERTIES_ENABLED
00235 
00241   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gst::Element> > property_source() const;
00242 #endif //#GLIBMM_PROPERTIES_ENABLED
00243 
00244 
00245   #ifdef GLIBMM_PROPERTIES_ENABLED
00246 
00252   Glib::PropertyProxy<PlayFlags> property_flags() ;
00253 #endif //#GLIBMM_PROPERTIES_ENABLED
00254 
00255 #ifdef GLIBMM_PROPERTIES_ENABLED
00256 
00262   Glib::PropertyProxy_ReadOnly<PlayFlags> property_flags() const;
00263 #endif //#GLIBMM_PROPERTIES_ENABLED
00264 
00265   #ifdef GLIBMM_PROPERTIES_ENABLED
00266 
00272   Glib::PropertyProxy_ReadOnly<int> property_n_video() const;
00273 #endif //#GLIBMM_PROPERTIES_ENABLED
00274 
00275 
00276   #ifdef GLIBMM_PROPERTIES_ENABLED
00277 
00283   Glib::PropertyProxy<int> property_current_video() ;
00284 #endif //#GLIBMM_PROPERTIES_ENABLED
00285 
00286 #ifdef GLIBMM_PROPERTIES_ENABLED
00287 
00293   Glib::PropertyProxy_ReadOnly<int> property_current_video() const;
00294 #endif //#GLIBMM_PROPERTIES_ENABLED
00295 
00296   #ifdef GLIBMM_PROPERTIES_ENABLED
00297 
00303   Glib::PropertyProxy_ReadOnly<int> property_n_audio() const;
00304 #endif //#GLIBMM_PROPERTIES_ENABLED
00305 
00306 
00307   #ifdef GLIBMM_PROPERTIES_ENABLED
00308 
00314   Glib::PropertyProxy<int> property_current_audio() ;
00315 #endif //#GLIBMM_PROPERTIES_ENABLED
00316 
00317 #ifdef GLIBMM_PROPERTIES_ENABLED
00318 
00324   Glib::PropertyProxy_ReadOnly<int> property_current_audio() const;
00325 #endif //#GLIBMM_PROPERTIES_ENABLED
00326 
00327   #ifdef GLIBMM_PROPERTIES_ENABLED
00328 
00334   Glib::PropertyProxy_ReadOnly<int> property_n_text() const;
00335 #endif //#GLIBMM_PROPERTIES_ENABLED
00336 
00337 
00338   #ifdef GLIBMM_PROPERTIES_ENABLED
00339 
00345   Glib::PropertyProxy<int> property_current_text() ;
00346 #endif //#GLIBMM_PROPERTIES_ENABLED
00347 
00348 #ifdef GLIBMM_PROPERTIES_ENABLED
00349 
00355   Glib::PropertyProxy_ReadOnly<int> property_current_text() const;
00356 #endif //#GLIBMM_PROPERTIES_ENABLED
00357 
00358   #ifdef GLIBMM_PROPERTIES_ENABLED
00359 
00365   Glib::PropertyProxy<Glib::ustring> property_subtitle_encoding() ;
00366 #endif //#GLIBMM_PROPERTIES_ENABLED
00367 
00368 #ifdef GLIBMM_PROPERTIES_ENABLED
00369 
00375   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_subtitle_encoding() const;
00376 #endif //#GLIBMM_PROPERTIES_ENABLED
00377 
00378   #ifdef GLIBMM_PROPERTIES_ENABLED
00379 
00385   Glib::PropertyProxy< Glib::RefPtr<Gst::Element> > property_audio_sink() ;
00386 #endif //#GLIBMM_PROPERTIES_ENABLED
00387 
00388 #ifdef GLIBMM_PROPERTIES_ENABLED
00389 
00395   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gst::Element> > property_audio_sink() const;
00396 #endif //#GLIBMM_PROPERTIES_ENABLED
00397 
00398   #ifdef GLIBMM_PROPERTIES_ENABLED
00399 
00405   Glib::PropertyProxy< Glib::RefPtr<Gst::Element> > property_video_sink() ;
00406 #endif //#GLIBMM_PROPERTIES_ENABLED
00407 
00408 #ifdef GLIBMM_PROPERTIES_ENABLED
00409 
00415   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gst::Element> > property_video_sink() const;
00416 #endif //#GLIBMM_PROPERTIES_ENABLED
00417 
00418   #ifdef GLIBMM_PROPERTIES_ENABLED
00419 
00425   Glib::PropertyProxy< Glib::RefPtr<Gst::Element> > property_vis_plugin() ;
00426 #endif //#GLIBMM_PROPERTIES_ENABLED
00427 
00428 #ifdef GLIBMM_PROPERTIES_ENABLED
00429 
00435   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gst::Element> > property_vis_plugin() const;
00436 #endif //#GLIBMM_PROPERTIES_ENABLED
00437 
00438   #ifdef GLIBMM_PROPERTIES_ENABLED
00439 
00445   Glib::PropertyProxy< Glib::RefPtr<Gst::Element> > property_text_sink() ;
00446 #endif //#GLIBMM_PROPERTIES_ENABLED
00447 
00448 #ifdef GLIBMM_PROPERTIES_ENABLED
00449 
00455   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gst::Element> > property_text_sink() const;
00456 #endif //#GLIBMM_PROPERTIES_ENABLED
00457 
00458   #ifdef GLIBMM_PROPERTIES_ENABLED
00459 
00465   Glib::PropertyProxy<double> property_volume() ;
00466 #endif //#GLIBMM_PROPERTIES_ENABLED
00467 
00468 #ifdef GLIBMM_PROPERTIES_ENABLED
00469 
00475   Glib::PropertyProxy_ReadOnly<double> property_volume() const;
00476 #endif //#GLIBMM_PROPERTIES_ENABLED
00477 
00478   #ifdef GLIBMM_PROPERTIES_ENABLED
00479 
00485   Glib::PropertyProxy<bool> property_mute() ;
00486 #endif //#GLIBMM_PROPERTIES_ENABLED
00487 
00488 #ifdef GLIBMM_PROPERTIES_ENABLED
00489 
00495   Glib::PropertyProxy_ReadOnly<bool> property_mute() const;
00496 #endif //#GLIBMM_PROPERTIES_ENABLED
00497 
00498   #ifdef GLIBMM_PROPERTIES_ENABLED
00499 
00505   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gst::Buffer> > property_frame() const;
00506 #endif //#GLIBMM_PROPERTIES_ENABLED
00507 
00508 
00509   #ifdef GLIBMM_PROPERTIES_ENABLED
00510 
00516   Glib::PropertyProxy_WriteOnly<Glib::ustring> property_subtitle_font_desc() ;
00517 #endif //#GLIBMM_PROPERTIES_ENABLED
00518 
00519 
00520   #ifdef GLIBMM_PROPERTIES_ENABLED
00521 
00527   Glib::PropertyProxy<guint> property_connection_speed() ;
00528 #endif //#GLIBMM_PROPERTIES_ENABLED
00529 
00530 #ifdef GLIBMM_PROPERTIES_ENABLED
00531 
00537   Glib::PropertyProxy_ReadOnly<guint> property_connection_speed() const;
00538 #endif //#GLIBMM_PROPERTIES_ENABLED
00539 
00540   #ifdef GLIBMM_PROPERTIES_ENABLED
00541 
00547   Glib::PropertyProxy<int> property_buffer_size() ;
00548 #endif //#GLIBMM_PROPERTIES_ENABLED
00549 
00550 #ifdef GLIBMM_PROPERTIES_ENABLED
00551 
00557   Glib::PropertyProxy_ReadOnly<int> property_buffer_size() const;
00558 #endif //#GLIBMM_PROPERTIES_ENABLED
00559 
00560   #ifdef GLIBMM_PROPERTIES_ENABLED
00561 
00567   Glib::PropertyProxy<gint64> property_buffer_duration() ;
00568 #endif //#GLIBMM_PROPERTIES_ENABLED
00569 
00570 #ifdef GLIBMM_PROPERTIES_ENABLED
00571 
00577   Glib::PropertyProxy_ReadOnly<gint64> property_buffer_duration() const;
00578 #endif //#GLIBMM_PROPERTIES_ENABLED
00579 
00580 
00586   Glib::SignalProxy0< void > signal_about_to_finish();
00587 
00588   
00594   Glib::SignalProxy0< void > signal_video_changed();
00595 
00596   
00602   Glib::SignalProxy0< void > signal_audio_changed();
00603 
00604   
00610   Glib::SignalProxy0< void > signal_text_changed();
00611 
00612  
00618   Glib::SignalProxy1< Gst::TagList,int > signal_get_video_tags();
00619 
00620  
00626   Glib::SignalProxy1< Gst::TagList,int > signal_get_audio_tags();
00627 
00628  
00634   Glib::SignalProxy1< Gst::TagList,int > signal_get_text_tags();
00635 
00636  
00642   Glib::SignalProxy1< Glib::RefPtr<Gst::Buffer>,const Glib::RefPtr<Gst::Caps>& > signal_convert_frame();
00643 
00644  
00650   Glib::SignalProxy1< Glib::RefPtr<Gst::Pad>,int > signal_get_video_pad();
00651 
00652  
00658   Glib::SignalProxy1< Glib::RefPtr<Gst::Pad>,int > signal_get_audio_pad();
00659 
00660  
00666   Glib::SignalProxy1< Glib::RefPtr<Gst::Pad>,int > signal_get_text_pad();
00667 
00668 
00669 public:
00670 
00671 public:
00672   //C++ methods used to invoke GTK+ virtual functions:
00673 #ifdef GLIBMM_VFUNCS_ENABLED
00674 #endif //GLIBMM_VFUNCS_ENABLED
00675 
00676 protected:
00677   //GTK+ Virtual Functions (override these to change behaviour):
00678 #ifdef GLIBMM_VFUNCS_ENABLED
00679 #endif //GLIBMM_VFUNCS_ENABLED
00680 
00681   //Default Signal Handlers::
00682 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00683   virtual void on_about_to_finish();
00684   virtual void on_video_changed();
00685   virtual void on_audio_changed();
00686   virtual void on_text_changed();
00687   virtual Gst::TagList on_get_video_tags(int arg0);
00688   virtual Gst::TagList on_get_audio_tags(int arg0);
00689   virtual Gst::TagList on_get_text_tags(int arg0);
00690   virtual Glib::RefPtr<Gst::Buffer> on_convert_frame(const Glib::RefPtr<Gst::Caps>& arg0);
00691   virtual Glib::RefPtr<Gst::Pad> on_get_video_pad(int arg0);
00692   virtual Glib::RefPtr<Gst::Pad> on_get_audio_pad(int arg0);
00693   virtual Glib::RefPtr<Gst::Pad> on_get_text_pad(int arg0);
00694 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00695 
00696 
00697 };
00698 
00699 } //namespace Gst
00700 
00701 
00702 namespace Glib
00703 {
00712   Glib::RefPtr<Gst::PlayBin2> wrap(GstPlayBin2* object, bool take_copy = false);
00713 }
00714 
00715 
00716 #endif /* _GSTREAMERMM_PLAYBIN2_H */
00717 

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