00001
00002
00003 #ifndef _GSTREAMERBASEMM_XOVERLAY_H
00004 #define _GSTREAMERBASEMM_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
00029
00030 #include <gst/interfaces/xoverlay.h>
00031 #include <glibmm/interface.h>
00032
00033
00034 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00035 typedef struct _GstXOverlay GstXOverlay;
00036 typedef struct _GstXOverlayClass GstXOverlayClass;
00037 #endif
00038
00039
00040 namespace GstBase
00041 { class XOverlay_Class; }
00042 namespace GstBase
00043 {
00044
00075 class XOverlay : public Glib::Interface
00076 {
00077
00078 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00079
00080 public:
00081 typedef XOverlay CppObjectType;
00082 typedef XOverlay_Class CppClassType;
00083 typedef GstXOverlay BaseObjectType;
00084 typedef GstXOverlayClass BaseClassType;
00085
00086 private:
00087 friend class XOverlay_Class;
00088 static CppClassType xoverlay_class_;
00089
00090
00091 XOverlay(const XOverlay&);
00092 XOverlay& operator=(const XOverlay&);
00093
00094 protected:
00095 XOverlay();
00096
00103 explicit XOverlay(const Glib::Interface_Class& interface_class);
00104
00105 public:
00106
00107
00108
00109 explicit XOverlay(GstXOverlay* castitem);
00110
00111 protected:
00112 #endif
00113
00114 public:
00115 virtual ~XOverlay();
00116
00117 static void add_interface(GType gtype_implementer);
00118
00119 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00120 static GType get_type() G_GNUC_CONST;
00121 static GType get_base_type() G_GNUC_CONST;
00122 #endif
00123
00125 GstXOverlay* gobj() { return reinterpret_cast<GstXOverlay*>(gobject_); }
00126
00128 const GstXOverlay* gobj() const { return reinterpret_cast<GstXOverlay*>(gobject_); }
00129
00130 private:
00131
00132
00133 public:
00134
00141 void set_xwindow_id(gulong xwindow_id);
00142
00148 void got_xwindow_id(gulong xwindow_id);
00149
00157 void prepare_xwindow_id();
00158
00162 void expose();
00163
00171 void handle_events(bool handle_events);
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<GstBase::XOverlay> wrap(GstXOverlay* object, bool take_copy = false);
00207
00208 }
00209
00210
00211 #endif
00212