diff --git a/gst-libs/gst/vaapi/Makefile.am b/gst-libs/gst/vaapi/Makefile.am index 8260bdbfa1..d5148c33fd 100644 --- a/gst-libs/gst/vaapi/Makefile.am +++ b/gst-libs/gst/vaapi/Makefile.am @@ -41,6 +41,7 @@ libgstvaapi_source_h = \ libgstvaapi_source_priv_h = \ gstvaapidebug.h \ + gstvaapiobject_priv.h \ gstvaapiutils.h \ $(NULL) diff --git a/gst-libs/gst/vaapi/gstvaapiimage.c b/gst-libs/gst/vaapi/gstvaapiimage.c index 21068c26e1..d6d0a401d0 100644 --- a/gst-libs/gst/vaapi/gstvaapiimage.c +++ b/gst-libs/gst/vaapi/gstvaapiimage.c @@ -27,6 +27,7 @@ #include #include "gstvaapiutils.h" #include "gstvaapiimage.h" +#include "gstvaapiobject_priv.h" #include #define DEBUG 1 diff --git a/gst-libs/gst/vaapi/gstvaapiobject.c b/gst-libs/gst/vaapi/gstvaapiobject.c index 0a8853d446..edb961b8a3 100644 --- a/gst-libs/gst/vaapi/gstvaapiobject.c +++ b/gst-libs/gst/vaapi/gstvaapiobject.c @@ -25,6 +25,7 @@ #include "config.h" #include "gstvaapiobject.h" +#include "gstvaapiobject_priv.h" #include "gstvaapimarshal.h" #define DEBUG 1 @@ -32,16 +33,6 @@ G_DEFINE_TYPE(GstVaapiObject, gst_vaapi_object, G_TYPE_OBJECT); -#define GST_VAAPI_OBJECT_GET_PRIVATE(obj) \ - (G_TYPE_INSTANCE_GET_PRIVATE((obj), \ - GST_VAAPI_TYPE_OBJECT, \ - GstVaapiObjectPrivate)) - -struct _GstVaapiObjectPrivate { - GstVaapiDisplay *display; - guint is_destroying : 1; -}; - enum { PROP_0, diff --git a/gst-libs/gst/vaapi/gstvaapiobject.h b/gst-libs/gst/vaapi/gstvaapiobject.h index 5fcd13355f..2c1071094d 100644 --- a/gst-libs/gst/vaapi/gstvaapiobject.h +++ b/gst-libs/gst/vaapi/gstvaapiobject.h @@ -50,15 +50,6 @@ G_BEGIN_DECLS GST_VAAPI_TYPE_OBJECT, \ GstVaapiObjectClass)) -/** - * GST_VAAPI_OBJECT_GET_DISPLAY: - * @object: a #GstVaapiObject - * - * Macro that evaluates to the #GstVaapiDisplay @object is bound to. - */ -#define GST_VAAPI_OBJECT_GET_DISPLAY(object) \ - gst_vaapi_object_get_display(GST_VAAPI_OBJECT(object)) - typedef struct _GstVaapiObject GstVaapiObject; typedef struct _GstVaapiObjectPrivate GstVaapiObjectPrivate; typedef struct _GstVaapiObjectClass GstVaapiObjectClass; diff --git a/gst-libs/gst/vaapi/gstvaapiobject_priv.h b/gst-libs/gst/vaapi/gstvaapiobject_priv.h new file mode 100644 index 0000000000..1e38ba8733 --- /dev/null +++ b/gst-libs/gst/vaapi/gstvaapiobject_priv.h @@ -0,0 +1,54 @@ +/* + * gstvaapiobject_priv.h - Base VA object (private definitions) + * + * gstreamer-vaapi (C) 2010 Splitted-Desktop Systems + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifndef GST_VAAPI_OBJECT_PRIV_H +#define GST_VAAPI_OBJECT_PRIV_H + +#include + +G_BEGIN_DECLS + +#define GST_VAAPI_OBJECT_GET_PRIVATE(obj) \ + (G_TYPE_INSTANCE_GET_PRIVATE((obj), \ + GST_VAAPI_TYPE_OBJECT, \ + GstVaapiObjectPrivate)) + +/** + * GST_VAAPI_OBJECT_GET_DISPLAY: + * @object: a #GstVaapiObject + * + * Macro that evaluates to the #GstVaapiDisplay @object is bound to. + */ +#define GST_VAAPI_OBJECT_GET_DISPLAY(object) \ + gst_vaapi_object_get_display(GST_VAAPI_OBJECT(object)) + +/** + * GstVaapiObjectPrivate: + * + * VA object base. + */ +struct _GstVaapiObjectPrivate { + GstVaapiDisplay *display; + guint is_destroying : 1; +}; + +G_END_DECLS + +#endif /* GST_VAAPI_OBJECT_PRIV_H */ diff --git a/gst-libs/gst/vaapi/gstvaapisubpicture.c b/gst-libs/gst/vaapi/gstvaapisubpicture.c index f2ae92b129..a78e713410 100644 --- a/gst-libs/gst/vaapi/gstvaapisubpicture.c +++ b/gst-libs/gst/vaapi/gstvaapisubpicture.c @@ -27,6 +27,7 @@ #include #include "gstvaapiutils.h" #include "gstvaapisubpicture.h" +#include "gstvaapiobject_priv.h" #include #define DEBUG 1 diff --git a/gst-libs/gst/vaapi/gstvaapisurface.c b/gst-libs/gst/vaapi/gstvaapisurface.c index d605468f3b..34fbb6afe1 100644 --- a/gst-libs/gst/vaapi/gstvaapisurface.c +++ b/gst-libs/gst/vaapi/gstvaapisurface.c @@ -27,6 +27,7 @@ #include "gstvaapiutils.h" #include "gstvaapisurface.h" #include "gstvaapiimage.h" +#include "gstvaapiobject_priv.h" #include #define DEBUG 1 diff --git a/gst-libs/gst/vaapi/gstvaapiwindow_x11.c b/gst-libs/gst/vaapi/gstvaapiwindow_x11.c index f1fb0a5686..fd57c652fa 100644 --- a/gst-libs/gst/vaapi/gstvaapiwindow_x11.c +++ b/gst-libs/gst/vaapi/gstvaapiwindow_x11.c @@ -29,6 +29,7 @@ #include "gstvaapiwindow_x11.h" #include "gstvaapidisplay_x11.h" #include "gstvaapiutils_x11.h" +#include "gstvaapiobject_priv.h" #define DEBUG 1 #include "gstvaapidebug.h"