Home | History | Annotate | Download | only in gtk
      1 /*
      2  *  Copyright (C) 2007 OpenedHand
      3  *  Copyright (C) 2007 Alp Toker <alp (at) atoker.com>
      4  *
      5  *  This library is free software; you can redistribute it and/or
      6  *  modify it under the terms of the GNU Lesser General Public
      7  *  License as published by the Free Software Foundation; either
      8  *  version 2 of the License, or (at your option) any later version.
      9  *
     10  *  This library is distributed in the hope that it will be useful,
     11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
     12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13  *  Lesser General Public License for more details.
     14  *
     15  *  You should have received a copy of the GNU Lesser General Public
     16  *  License along with this library; if not, write to the Free Software
     17  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
     18  */
     19 
     20 #ifndef _HAVE_WEBKIT_VIDEO_SINK_H
     21 #define _HAVE_WEBKIT_VIDEO_SINK_H
     22 
     23 #include <cairo.h>
     24 #include <glib-object.h>
     25 #include <gst/video/gstvideosink.h>
     26 
     27 G_BEGIN_DECLS
     28 
     29 #define WEBKIT_TYPE_VIDEO_SINK webkit_video_sink_get_type()
     30 
     31 #define WEBKIT_VIDEO_SINK(obj) \
     32     (G_TYPE_CHECK_INSTANCE_CAST((obj), \
     33     WEBKIT_TYPE_VIDEO_SINK, WebKitVideoSink))
     34 
     35 #define WEBKIT_VIDEO_SINK_CLASS(klass) \
     36     (G_TYPE_CHECK_CLASS_CAST((klass), \
     37     WEBKIT_TYPE_VIDEO_SINK, WebKitVideoSinkClass))
     38 
     39 #define WEBKIT_IS_VIDEO_SINK(obj) \
     40     (G_TYPE_CHECK_INSTANCE_TYPE((obj), \
     41     WEBKIT_TYPE_VIDEO_SINK))
     42 
     43 #define WEBKIT_IS_VIDEO_SINK_CLASS(klass) \
     44     (G_TYPE_CHECK_CLASS_TYPE((klass), \
     45     WEBKIT_TYPE_VIDEO_SINK))
     46 
     47 #define WEBKIT_VIDEO_SINK_GET_CLASS(obj) \
     48     (G_TYPE_INSTANCE_GET_CLASS((obj), \
     49     WEBKIT_TYPE_VIDEO_SINK, WebKitVideoSinkClass))
     50 
     51 typedef struct _WebKitVideoSink        WebKitVideoSink;
     52 typedef struct _WebKitVideoSinkClass   WebKitVideoSinkClass;
     53 typedef struct _WebKitVideoSinkPrivate WebKitVideoSinkPrivate;
     54 
     55 struct _WebKitVideoSink {
     56     /*< private >*/
     57     GstVideoSink parent;
     58     WebKitVideoSinkPrivate *priv;
     59 };
     60 
     61 struct _WebKitVideoSinkClass {
     62     /*< private >*/
     63     GstVideoSinkClass parent_class;
     64 
     65     /* Future padding */
     66     void (* _webkit_reserved1)(void);
     67     void (* _webkit_reserved2)(void);
     68     void (* _webkit_reserved3)(void);
     69     void (* _webkit_reserved4)(void);
     70     void (* _webkit_reserved5)(void);
     71     void (* _webkit_reserved6)(void);
     72 };
     73 
     74 GType       webkit_video_sink_get_type(void) G_GNUC_CONST;
     75 GstElement *webkit_video_sink_new(void);
     76 
     77 G_END_DECLS
     78 
     79 #endif
     80