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 #include <gstreamermm/basetransform.h>
00029
00030
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 typedef struct _GstVideoScale GstVideoScale;
00033 typedef struct _GstVideoScaleClass GstVideoScaleClass;
00034 #endif
00035
00036
00037 namespace Gst
00038 { class VideoScale_Class; }
00039 namespace Gst
00040 {
00041
00047 enum VideoScaleMethod
00048 {
00049 VIDEO_SCALE_NEAREST,
00050 VIDEO_SCALE_BILINEAR,
00051 VIDEO_SCALE_4TAP
00052 };
00053
00054 }
00055
00056
00057 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00058 namespace Glib
00059 {
00060
00061 template <>
00062 class Value<Gst::VideoScaleMethod> : public Glib::Value_Enum<Gst::VideoScaleMethod>
00063 {
00064 public:
00065 static GType value_type() G_GNUC_CONST;
00066 };
00067
00068 }
00069 #endif
00070
00071
00072 namespace Gst
00073 {
00074
00075
00086 class VideoScale
00087 : public Gst::BaseTransform
00088 {
00089
00090 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00091
00092 public:
00093 typedef VideoScale CppObjectType;
00094 typedef VideoScale_Class CppClassType;
00095 typedef GstVideoScale BaseObjectType;
00096 typedef GstVideoScaleClass BaseClassType;
00097
00098 private: friend class VideoScale_Class;
00099 static CppClassType videoscale_class_;
00100
00101 private:
00102
00103 VideoScale(const VideoScale&);
00104 VideoScale& operator=(const VideoScale&);
00105
00106 protected:
00107 explicit VideoScale(const Glib::ConstructParams& construct_params);
00108 explicit VideoScale(GstVideoScale* castitem);
00109
00110 #endif
00111
00112 public:
00113 virtual ~VideoScale();
00114
00115 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00116 static GType get_type() G_GNUC_CONST;
00117 static GType get_base_type() G_GNUC_CONST;
00118 #endif
00119
00121 GstVideoScale* gobj() { return reinterpret_cast<GstVideoScale*>(gobject_); }
00122
00124 const GstVideoScale* gobj() const { return reinterpret_cast<GstVideoScale*>(gobject_); }
00125
00127 GstVideoScale* gobj_copy();
00128
00129 private:
00130
00131
00132 protected:
00133 VideoScale();
00134 VideoScale(const Glib::ustring& name);
00135
00136 public:
00140 static Glib::RefPtr<VideoScale> create();
00141
00142
00146 static Glib::RefPtr<VideoScale> create(const Glib::ustring& name);
00147
00148
00149 #ifdef GLIBMM_PROPERTIES_ENABLED
00150
00156 Glib::PropertyProxy<VideoScaleMethod> property_method() ;
00157 #endif //#GLIBMM_PROPERTIES_ENABLED
00158
00159 #ifdef GLIBMM_PROPERTIES_ENABLED
00160
00166 Glib::PropertyProxy_ReadOnly<VideoScaleMethod> property_method() const;
00167 #endif //#GLIBMM_PROPERTIES_ENABLED
00168
00169
00170 public:
00171
00172 public:
00173
00174 #ifdef GLIBMM_VFUNCS_ENABLED
00175 #endif //GLIBMM_VFUNCS_ENABLED
00176
00177 protected:
00178
00179 #ifdef GLIBMM_VFUNCS_ENABLED
00180 #endif //GLIBMM_VFUNCS_ENABLED
00181
00182
00183 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00184 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00185
00186
00187 };
00188
00189 }
00190
00191
00192 namespace Glib
00193 {
00202 Glib::RefPtr<Gst::VideoScale> wrap(GstVideoScale* object, bool take_copy = false);
00203 }
00204
00205
00206 #endif
00207