00001
00002
00003 #ifndef _GSTREAMERMM_FILESRC_H
00004 #define _GSTREAMERMM_FILESRC_H
00005
00006
00007 #include <glibmm.h>
00008
00009 #include <gstreamermm/basesrc.h>
00010
00011
00012 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00013 typedef struct _GstFileSrc GstFileSrc;
00014 typedef struct _GstFileSrcClass GstFileSrcClass;
00015 #endif
00016
00017
00018 namespace Gst
00019 { class FileSrc_Class; }
00020 namespace Gst
00021 {
00022
00023
00033 class FileSrc
00034 : public Gst::BaseSrc
00035 {
00036
00037 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00038
00039 public:
00040 typedef FileSrc CppObjectType;
00041 typedef FileSrc_Class CppClassType;
00042 typedef GstFileSrc BaseObjectType;
00043 typedef GstFileSrcClass BaseClassType;
00044
00045 private: friend class FileSrc_Class;
00046 static CppClassType filesrc_class_;
00047
00048 private:
00049
00050 FileSrc(const FileSrc&);
00051 FileSrc& operator=(const FileSrc&);
00052
00053 protected:
00054 explicit FileSrc(const Glib::ConstructParams& construct_params);
00055 explicit FileSrc(GstFileSrc* castitem);
00056
00057 #endif
00058
00059 public:
00060 virtual ~FileSrc();
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 GstFileSrc* gobj() { return reinterpret_cast<GstFileSrc*>(gobject_); }
00069
00071 const GstFileSrc* gobj() const { return reinterpret_cast<GstFileSrc*>(gobject_); }
00072
00074 GstFileSrc* gobj_copy();
00075
00076 private:
00077
00078
00079 protected:
00080 FileSrc();
00081 FileSrc(const Glib::ustring& name);
00082
00083 public:
00087 static Glib::RefPtr<FileSrc> create();
00088
00089
00093 static Glib::RefPtr<FileSrc> create(const Glib::ustring& name);
00094
00095
00096 #ifdef GLIBMM_PROPERTIES_ENABLED
00097
00103 Glib::PropertyProxy<Glib::ustring> property_location() ;
00104 #endif //#GLIBMM_PROPERTIES_ENABLED
00105
00106 #ifdef GLIBMM_PROPERTIES_ENABLED
00107
00113 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_location() const;
00114 #endif //#GLIBMM_PROPERTIES_ENABLED
00115
00116 #ifdef GLIBMM_PROPERTIES_ENABLED
00117
00123 Glib::PropertyProxy_ReadOnly<int> property_fd() const;
00124 #endif //#GLIBMM_PROPERTIES_ENABLED
00125
00126
00127 #ifdef GLIBMM_PROPERTIES_ENABLED
00128
00134 Glib::PropertyProxy<unsigned long> property_mmapsize() ;
00135 #endif //#GLIBMM_PROPERTIES_ENABLED
00136
00137 #ifdef GLIBMM_PROPERTIES_ENABLED
00138
00144 Glib::PropertyProxy_ReadOnly<unsigned long> property_mmapsize() const;
00145 #endif //#GLIBMM_PROPERTIES_ENABLED
00146
00147 #ifdef GLIBMM_PROPERTIES_ENABLED
00148
00154 Glib::PropertyProxy<bool> property_sequential() ;
00155 #endif //#GLIBMM_PROPERTIES_ENABLED
00156
00157 #ifdef GLIBMM_PROPERTIES_ENABLED
00158
00164 Glib::PropertyProxy_ReadOnly<bool> property_sequential() const;
00165 #endif //#GLIBMM_PROPERTIES_ENABLED
00166
00167 #ifdef GLIBMM_PROPERTIES_ENABLED
00168
00174 Glib::PropertyProxy<bool> property_touch() ;
00175 #endif //#GLIBMM_PROPERTIES_ENABLED
00176
00177 #ifdef GLIBMM_PROPERTIES_ENABLED
00178
00184 Glib::PropertyProxy_ReadOnly<bool> property_touch() const;
00185 #endif //#GLIBMM_PROPERTIES_ENABLED
00186
00187 #ifdef GLIBMM_PROPERTIES_ENABLED
00188
00194 Glib::PropertyProxy<bool> property_use_mmap() ;
00195 #endif //#GLIBMM_PROPERTIES_ENABLED
00196
00197 #ifdef GLIBMM_PROPERTIES_ENABLED
00198
00204 Glib::PropertyProxy_ReadOnly<bool> property_use_mmap() const;
00205 #endif //#GLIBMM_PROPERTIES_ENABLED
00206
00207
00208 public:
00209
00210 public:
00211
00212 #ifdef GLIBMM_VFUNCS_ENABLED
00213 #endif //GLIBMM_VFUNCS_ENABLED
00214
00215 protected:
00216
00217 #ifdef GLIBMM_VFUNCS_ENABLED
00218 #endif //GLIBMM_VFUNCS_ENABLED
00219
00220
00221 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00222 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00223
00224
00225 };
00226
00227 }
00228
00229
00230 namespace Glib
00231 {
00240 Glib::RefPtr<Gst::FileSrc> wrap(GstFileSrc* object, bool take_copy = false);
00241 }
00242
00243
00244 #endif
00245