00001
00002
00003 #ifndef _GSTREAMERMM_VIDEOSCALE_H
00004 #define _GSTREAMERMM_VIDEOSCALE_H
00005
00006
00007 #include <glibmm.h>
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include <gstreamermm/basetransform.h>
00031
00032
00033 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00034 typedef struct _GstVideoScale GstVideoScale;
00035 typedef struct _GstVideoScaleClass GstVideoScaleClass;
00036 #endif
00037
00038
00039 namespace Gst
00040 { class VideoScale_Class; }
00041 namespace Gst
00042 {
00043
00049 enum VideoScaleMethod
00050 {
00051 VIDEO_SCALE_NEAREST,
00052 VIDEO_SCALE_BILINEAR,
00053 VIDEO_SCALE_4TAP
00054 };
00055
00056 }
00057
00058
00059 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00060 namespace Glib
00061 {
00062
00063 template <>
00064 class Value<Gst::VideoScaleMethod> : public Glib::Value_Enum<Gst::VideoScaleMethod>
00065 {
00066 public:
00067 static GType value_type() G_GNUC_CONST;
00068 };
00069
00070 }
00071 #endif
00072
00073
00074 namespace Gst
00075 {
00076
00077
00088 class VideoScale
00089 : public Gst::BaseTransform
00090 {
00091
00092 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00093
00094 public:
00095 typedef VideoScale CppObjectType;
00096 typedef VideoScale_Class CppClassType;
00097 typedef GstVideoScale BaseObjectType;
00098 typedef GstVideoScaleClass BaseClassType;
00099
00100 private: friend class VideoScale_Class;
00101 static CppClassType videoscale_class_;
00102
00103 private:
00104
00105 VideoScale(const VideoScale&);
00106 VideoScale& operator=(const VideoScale&);
00107
00108 protected:
00109 explicit VideoScale(const Glib::ConstructParams& construct_params);
00110 explicit VideoScale(GstVideoScale* castitem);
00111
00112 #endif
00113
00114 public:
00115 virtual ~VideoScale();
00116
00117 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00118 static GType get_type() G_GNUC_CONST;
00119
00120
00121 static GType get_base_type() G_GNUC_CONST;
00122 #endif
00123
00125 GstVideoScale* gobj() { return reinterpret_cast<GstVideoScale*>(gobject_); }
00126
00128 const GstVideoScale* gobj() const { return reinterpret_cast<GstVideoScale*>(gobject_); }
00129
00131 GstVideoScale* gobj_copy();
00132
00133 private:
00134
00135
00136 protected:
00137 VideoScale();
00138 VideoScale(const Glib::ustring& name);
00139
00140 public:
00144 static Glib::RefPtr<VideoScale> create();
00145
00146
00150 static Glib::RefPtr<VideoScale> create(const Glib::ustring& name);
00151
00152
00153 #ifdef GLIBMM_PROPERTIES_ENABLED
00154
00160 Glib::PropertyProxy<Gst::VideoScaleMethod> property_method() ;
00161 #endif //#GLIBMM_PROPERTIES_ENABLED
00162
00163 #ifdef GLIBMM_PROPERTIES_ENABLED
00164
00170 Glib::PropertyProxy_ReadOnly<Gst::VideoScaleMethod> property_method() const;
00171 #endif //#GLIBMM_PROPERTIES_ENABLED
00172
00173
00174 public:
00175
00176 public:
00177
00178 #ifdef GLIBMM_VFUNCS_ENABLED
00179 #endif //GLIBMM_VFUNCS_ENABLED
00180
00181 protected:
00182
00183 #ifdef GLIBMM_VFUNCS_ENABLED
00184 #endif //GLIBMM_VFUNCS_ENABLED
00185
00186
00187 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00188 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00189
00190
00191 };
00192
00193 }
00194
00195
00196 namespace Glib
00197 {
00206 Glib::RefPtr<Gst::VideoScale> wrap(GstVideoScale* object, bool take_copy = false);
00207 }
00208
00209
00210 #endif
00211