00001
00002
00003 #ifndef _GSTREAMERMM_XOVERLAY_H
00004 #define _GSTREAMERMM_XOVERLAY_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 <gst/interfaces/xoverlay.h>
00029 #include <glibmm/interface.h>
00030
00031
00032 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00033 typedef struct _GstXOverlay GstXOverlay;
00034 typedef struct _GstXOverlayClass GstXOverlayClass;
00035 #endif
00036
00037
00038 namespace Gst
00039 { class XOverlay_Class; }
00040 namespace Gst
00041 {
00042
00115 class XOverlay : public Glib::Interface
00116 {
00117
00118 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00119
00120 public:
00121 typedef XOverlay CppObjectType;
00122 typedef XOverlay_Class CppClassType;
00123 typedef GstXOverlay BaseObjectType;
00124 typedef GstXOverlayClass BaseClassType;
00125
00126 private:
00127 friend class XOverlay_Class;
00128 static CppClassType xoverlay_class_;
00129
00130
00131 XOverlay(const XOverlay&);
00132 XOverlay& operator=(const XOverlay&);
00133
00134 protected:
00135 XOverlay();
00136
00143 explicit XOverlay(const Glib::Interface_Class& interface_class);
00144
00145 public:
00146
00147
00148
00149 explicit XOverlay(GstXOverlay* castitem);
00150
00151 protected:
00152 #endif
00153
00154 public:
00155 virtual ~XOverlay();
00156
00157 static void add_interface(GType gtype_implementer);
00158
00159 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00160 static GType get_type() G_GNUC_CONST;
00161 static GType get_base_type() G_GNUC_CONST;
00162 #endif
00163
00165 GstXOverlay* gobj() { return reinterpret_cast<GstXOverlay*>(gobject_); }
00166
00168 const GstXOverlay* gobj() const { return reinterpret_cast<GstXOverlay*>(gobject_); }
00169
00170 private:
00171
00172
00173 public:
00174
00181 void set_xwindow_id(gulong xwindow_id);
00182
00188 void got_xwindow_id(gulong xwindow_id);
00189
00197 void prepare_xwindow_id();
00198
00202 void expose();
00203
00211 void handle_events(bool handle_events);
00212
00213
00214
00215
00216 public:
00217
00218 public:
00219
00220 #ifdef GLIBMM_VFUNCS_ENABLED
00221 #endif //GLIBMM_VFUNCS_ENABLED
00222
00223 protected:
00224
00225 #ifdef GLIBMM_VFUNCS_ENABLED
00226 #endif //GLIBMM_VFUNCS_ENABLED
00227
00228
00229 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00230 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00231
00232
00233 };
00234
00235 }
00236
00237
00238 namespace Glib
00239 {
00248 Glib::RefPtr<Gst::XOverlay> wrap(GstXOverlay* object, bool take_copy = false);
00249
00250 }
00251
00252
00253 #endif
00254