00001
00002
00003 #ifndef _GSTREAMERMM_FDSRC_H
00004 #define _GSTREAMERMM_FDSRC_H
00005
00006
00007 #include <glibmm.h>
00008
00009 #include <gstreamermm/pushsrc.h>
00010
00011
00012 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00013 typedef struct _GstFdSrc GstFdSrc;
00014 typedef struct _GstFdSrcClass GstFdSrcClass;
00015 #endif
00016
00017
00018 namespace Gst
00019 { class FdSrc_Class; }
00020 namespace Gst
00021 {
00022
00023
00033 class FdSrc
00034 : public Gst::PushSrc
00035 {
00036
00037 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00038
00039 public:
00040 typedef FdSrc CppObjectType;
00041 typedef FdSrc_Class CppClassType;
00042 typedef GstFdSrc BaseObjectType;
00043 typedef GstFdSrcClass BaseClassType;
00044
00045 private: friend class FdSrc_Class;
00046 static CppClassType fdsrc_class_;
00047
00048 private:
00049
00050 FdSrc(const FdSrc&);
00051 FdSrc& operator=(const FdSrc&);
00052
00053 protected:
00054 explicit FdSrc(const Glib::ConstructParams& construct_params);
00055 explicit FdSrc(GstFdSrc* castitem);
00056
00057 #endif
00058
00059 public:
00060 virtual ~FdSrc();
00061
00062 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00063 static GType get_type() G_GNUC_CONST;
00064 static GType get_base_type() G_GNUC_CONST;
00065 #endif
00066
00068 GstFdSrc* gobj() { return reinterpret_cast<GstFdSrc*>(gobject_); }
00069
00071 const GstFdSrc* gobj() const { return reinterpret_cast<GstFdSrc*>(gobject_); }
00072
00074 GstFdSrc* gobj_copy();
00075
00076 private:
00077
00078
00079 protected:
00080 FdSrc();
00081 FdSrc(const Glib::ustring& name);
00082
00083 public:
00087 static Glib::RefPtr<FdSrc> create();
00088
00089
00093 static Glib::RefPtr<FdSrc> create(const Glib::ustring& name);
00094
00095
00096 #ifdef GLIBMM_PROPERTIES_ENABLED
00097
00103 Glib::PropertyProxy<int> property_fd() ;
00104 #endif //#GLIBMM_PROPERTIES_ENABLED
00105
00106 #ifdef GLIBMM_PROPERTIES_ENABLED
00107
00113 Glib::PropertyProxy_ReadOnly<int> property_fd() const;
00114 #endif //#GLIBMM_PROPERTIES_ENABLED
00115
00116 #ifdef GLIBMM_PROPERTIES_ENABLED
00117
00123 Glib::PropertyProxy<guint64> property_timeout() ;
00124 #endif //#GLIBMM_PROPERTIES_ENABLED
00125
00126 #ifdef GLIBMM_PROPERTIES_ENABLED
00127
00133 Glib::PropertyProxy_ReadOnly<guint64> property_timeout() const;
00134 #endif //#GLIBMM_PROPERTIES_ENABLED
00135
00136
00137 public:
00138
00139 public:
00140
00141 #ifdef GLIBMM_VFUNCS_ENABLED
00142 #endif //GLIBMM_VFUNCS_ENABLED
00143
00144 protected:
00145
00146 #ifdef GLIBMM_VFUNCS_ENABLED
00147 #endif //GLIBMM_VFUNCS_ENABLED
00148
00149
00150 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00151 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00152
00153
00154 };
00155
00156 }
00157
00158
00159 namespace Glib
00160 {
00169 Glib::RefPtr<Gst::FdSrc> wrap(GstFdSrc* object, bool take_copy = false);
00170 }
00171
00172
00173 #endif
00174