00001 // -*- c++ -*- 00002 // Generated by gtkmmproc -- DO NOT MODIFY! 00003 #ifndef _GSTMM_PIPELINE_H 00004 #define _GSTMM_PIPELINE_H 00005 00006 00007 #include <glibmm.h> 00008 00009 #include <gstreamermm/bin.h> 00010 #include <gstreamermm/clock.h> 00011 00012 00013 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00014 typedef struct _GstPipeline GstPipeline; 00015 typedef struct _GstPipelineClass GstPipelineClass; 00016 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00017 00018 00019 namespace Gst 00020 { class Pipeline_Class; } // namespace Gst 00021 namespace Gst 00022 { 00023 00024 class Bus; 00025 00026 00027 class Pipeline : public Bin 00028 { 00029 00030 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00031 00032 public: 00033 typedef Pipeline CppObjectType; 00034 typedef Pipeline_Class CppClassType; 00035 typedef GstPipeline BaseObjectType; 00036 typedef GstPipelineClass BaseClassType; 00037 00038 private: friend class Pipeline_Class; 00039 static CppClassType pipeline_class_; 00040 00041 private: 00042 // noncopyable 00043 Pipeline(const Pipeline&); 00044 Pipeline& operator=(const Pipeline&); 00045 00046 protected: 00047 explicit Pipeline(const Glib::ConstructParams& construct_params); 00048 explicit Pipeline(GstPipeline* castitem); 00049 00050 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00051 00052 public: 00053 virtual ~Pipeline(); 00054 00055 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00056 static GType get_type() G_GNUC_CONST; 00057 static GType get_base_type() G_GNUC_CONST; 00058 #endif 00059 00061 GstPipeline* gobj() { return reinterpret_cast<GstPipeline*>(gobject_); } 00062 00064 const GstPipeline* gobj() const { return reinterpret_cast<GstPipeline*>(gobject_); } 00065 00067 GstPipeline* gobj_copy(); 00068 00069 private: 00070 00071 00072 protected: 00073 Pipeline(); 00074 00075 public: 00076 static Glib::RefPtr<Pipeline> create(const Glib::ustring& name); 00077 00078 00079 Glib::RefPtr<Bus> get_bus(); 00080 00081 Glib::RefPtr<const Bus> get_bus() const; 00082 00083 bool set_clock(const Glib::RefPtr<Clock>& clock); 00084 00085 Glib::RefPtr<Clock> get_clock(); 00086 00087 Glib::RefPtr<const Clock> get_clock() const; 00088 00089 void use_clock(const Glib::RefPtr<Clock>& clock); 00090 00091 void auto_clock(); 00092 00093 void set_new_stream_time(ClockTime time); 00094 00095 ClockTime get_last_stream_time() const; 00096 00097 void set_auto_flush_bus(gboolean auto_flush = true); 00098 00099 bool get_auto_flush_bus() const; 00100 00101 void set_delay(ClockTime delay); 00102 00103 ClockTime get_delay() const; 00104 00105 00106 public: 00107 00108 public: 00109 //C++ methods used to invoke GTK+ virtual functions: 00110 #ifdef GLIBMM_VFUNCS_ENABLED 00111 #endif //GLIBMM_VFUNCS_ENABLED 00112 00113 protected: 00114 //GTK+ Virtual Functions (override these to change behaviour): 00115 #ifdef GLIBMM_VFUNCS_ENABLED 00116 #endif //GLIBMM_VFUNCS_ENABLED 00117 00118 //Default Signal Handlers:: 00119 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED 00120 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED 00121 00122 00123 }; 00124 00125 } //namespace Gst 00126 00127 00128 namespace Glib 00129 { 00138 Glib::RefPtr<Gst::Pipeline> wrap(GstPipeline* object, bool take_copy = false); 00139 } 00140 00141 00142 #endif /* _GSTMM_PIPELINE_H */ 00143