00001
00002
00003 #ifndef _GSTREAMERBASEMM_VIDEOSCALE_H
00004 #define _GSTREAMERBASEMM_VIDEOSCALE_H
00005
00006
00007 #include <glibmm.h>
00008
00009 #include <gstreamermm/basetransform.h>
00010
00011
00012 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00013 typedef struct _GstVideoScale GstVideoScale;
00014 typedef struct _GstVideoScaleClass GstVideoScaleClass;
00015 #endif
00016
00017
00018 namespace GstBase
00019 { class VideoScale_Class; }
00020 namespace GstBase
00021 {
00022
00028 enum VideoScaleMethod
00029 {
00030 VIDEO_SCALE_NEAREST,
00031 VIDEO_SCALE_BILINEAR,
00032 VIDEO_SCALE_4TAP
00033 };
00034
00035 }
00036
00037
00038 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00039 namespace Glib
00040 {
00041
00042 template <>
00043 class Value<GstBase::VideoScaleMethod> : public Glib::Value_Enum<GstBase::VideoScaleMethod>
00044 {
00045 public:
00046 static GType value_type() G_GNUC_CONST;
00047 };
00048
00049 }
00050 #endif
00051
00052
00053 namespace GstBase
00054 {
00055
00056
00066 class VideoScale
00067 : public Gst::BaseTransform
00068 {
00069
00070 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00071
00072 public:
00073 typedef VideoScale CppObjectType;
00074 typedef VideoScale_Class CppClassType;
00075 typedef GstVideoScale BaseObjectType;
00076 typedef GstVideoScaleClass BaseClassType;
00077
00078 private: friend class VideoScale_Class;
00079 static CppClassType videoscale_class_;
00080
00081 private:
00082
00083 VideoScale(const VideoScale&);
00084 VideoScale& operator=(const VideoScale&);
00085
00086 protected:
00087 explicit VideoScale(const Glib::ConstructParams& construct_params);
00088 explicit VideoScale(GstVideoScale* castitem);
00089
00090 #endif
00091
00092 public:
00093 virtual ~VideoScale();
00094
00095 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00096 static GType get_type() G_GNUC_CONST;
00097 static GType get_base_type() G_GNUC_CONST;
00098 #endif
00099
00101 GstVideoScale* gobj() { return reinterpret_cast<GstVideoScale*>(gobject_); }
00102
00104 const GstVideoScale* gobj() const { return reinterpret_cast<GstVideoScale*>(gobject_); }
00105
00107 GstVideoScale* gobj_copy();
00108
00109 private:
00110
00111
00112 protected:
00113 VideoScale();
00114 VideoScale(const Glib::ustring& name);
00115
00116 public:
00120 static Glib::RefPtr<VideoScale> create();
00121
00122
00126 static Glib::RefPtr<VideoScale> create(const Glib::ustring& name);
00127
00128
00129 #ifdef GLIBMM_PROPERTIES_ENABLED
00130
00136 Glib::PropertyProxy<VideoScaleMethod> property_method() ;
00137 #endif //#GLIBMM_PROPERTIES_ENABLED
00138
00139 #ifdef GLIBMM_PROPERTIES_ENABLED
00140
00146 Glib::PropertyProxy_ReadOnly<VideoScaleMethod> property_method() const;
00147 #endif //#GLIBMM_PROPERTIES_ENABLED
00148
00149
00150 public:
00151
00152 public:
00153
00154 #ifdef GLIBMM_VFUNCS_ENABLED
00155 #endif //GLIBMM_VFUNCS_ENABLED
00156
00157 protected:
00158
00159 #ifdef GLIBMM_VFUNCS_ENABLED
00160 #endif //GLIBMM_VFUNCS_ENABLED
00161
00162
00163 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00164 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00165
00166
00167 };
00168
00169 }
00170
00171
00172 namespace Glib
00173 {
00182 Glib::RefPtr<GstBase::VideoScale> wrap(GstVideoScale* object, bool take_copy = false);
00183 }
00184
00185
00186 #endif
00187