diff --git a/gst-libs/gst/interfaces/colorbalance.c b/gst-libs/gst/interfaces/colorbalance.c index 319c1b9247..550598118c 100644 --- a/gst-libs/gst/interfaces/colorbalance.c +++ b/gst-libs/gst/interfaces/colorbalance.c @@ -41,6 +41,11 @@ * */ +/* FIXME 0.11: check if we need to add API for sometimes-supportedness + * (aka making up for GstImplementsInterface removal) */ + +/* FIXME 0.11: replace signals with messages (+ make API thread-safe) */ + enum { VALUE_CHANGED, @@ -71,8 +76,6 @@ gst_color_balance_get_type (void) gst_color_balance_type = g_type_register_static (G_TYPE_INTERFACE, "GstColorBalance", &gst_color_balance_info, 0); - g_type_interface_add_prerequisite (gst_color_balance_type, - GST_TYPE_IMPLEMENTS_INTERFACE); } return gst_color_balance_type; diff --git a/gst-libs/gst/interfaces/colorbalance.h b/gst-libs/gst/interfaces/colorbalance.h index 62771b5027..896b6b62a3 100644 --- a/gst-libs/gst/interfaces/colorbalance.h +++ b/gst-libs/gst/interfaces/colorbalance.h @@ -28,16 +28,16 @@ G_BEGIN_DECLS +/* FIXME 0.11: remove all CLASS bits, this is an interface */ #define GST_TYPE_COLOR_BALANCE \ (gst_color_balance_get_type ()) #define GST_COLOR_BALANCE(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_COLOR_BALANCE, \ - GstColorBalance)) + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_COLOR_BALANCE, GstColorBalance)) #define GST_COLOR_BALANCE_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_COLOR_BALANCE, \ GstColorBalanceClass)) #define GST_IS_COLOR_BALANCE(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_COLOR_BALANCE)) + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_COLOR_BALANCE)) #define GST_IS_COLOR_BALANCE_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_COLOR_BALANCE)) #define GST_COLOR_BALANCE_GET_CLASS(inst) \ diff --git a/gst-libs/gst/interfaces/mixer.c b/gst-libs/gst/interfaces/mixer.c index 8117d2081a..1e1b394f86 100644 --- a/gst-libs/gst/interfaces/mixer.c +++ b/gst-libs/gst/interfaces/mixer.c @@ -50,6 +50,9 @@ * macro (in C) and the mixer API can be used. */ +/* FIXME 0.11: check if we need to add API for sometimes-supportedness + * (aka making up for GstImplementsInterface removal) */ + #ifndef GST_DISABLE_DEPRECATED enum { @@ -86,8 +89,6 @@ gst_mixer_get_type (void) gst_mixer_type = g_type_register_static (G_TYPE_INTERFACE, "GstMixer", &gst_mixer_info, 0); - g_type_interface_add_prerequisite (gst_mixer_type, - GST_TYPE_IMPLEMENTS_INTERFACE); } return gst_mixer_type; diff --git a/gst-libs/gst/interfaces/mixer.h b/gst-libs/gst/interfaces/mixer.h index 71c8f7542f..ca7f3019c6 100644 --- a/gst-libs/gst/interfaces/mixer.h +++ b/gst-libs/gst/interfaces/mixer.h @@ -29,14 +29,16 @@ G_BEGIN_DECLS +/* FIXME 0.11: remove all CLASS bits, this is an interface */ + #define GST_TYPE_MIXER \ (gst_mixer_get_type ()) #define GST_MIXER(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_MIXER, GstMixer)) + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_MIXER, GstMixer)) #define GST_MIXER_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_MIXER, GstMixerClass)) #define GST_IS_MIXER(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_MIXER)) + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_MIXER)) #define GST_IS_MIXER_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_MIXER)) #define GST_MIXER_GET_CLASS(inst) \ diff --git a/gst-libs/gst/interfaces/tuner.c b/gst-libs/gst/interfaces/tuner.c index 2684517ab3..4e35dac1dc 100644 --- a/gst-libs/gst/interfaces/tuner.c +++ b/gst-libs/gst/interfaces/tuner.c @@ -69,6 +69,11 @@ * */ +/* FIXME 0.11: check if we need to add API for sometimes-supportedness + * (aka making up for GstImplementsInterface removal) */ + +/* FIXME 0.11: replace signals with messages (+ make API thread-safe) */ + enum { NORM_CHANGED, @@ -102,8 +107,6 @@ gst_tuner_get_type (void) gst_tuner_type = g_type_register_static (G_TYPE_INTERFACE, "GstTuner", &gst_tuner_info, 0); - g_type_interface_add_prerequisite (gst_tuner_type, - GST_TYPE_IMPLEMENTS_INTERFACE); } return gst_tuner_type; diff --git a/gst-libs/gst/interfaces/tuner.h b/gst-libs/gst/interfaces/tuner.h index c728135b85..09158d4eab 100644 --- a/gst-libs/gst/interfaces/tuner.h +++ b/gst-libs/gst/interfaces/tuner.h @@ -29,14 +29,16 @@ G_BEGIN_DECLS +/* FIXME 0.11: remove all CLASS bits, this is an interface */ + #define GST_TYPE_TUNER \ (gst_tuner_get_type ()) #define GST_TUNER(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TUNER, GstTuner)) + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TUNER, GstTuner)) #define GST_TUNER_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_TUNER, GstTunerClass)) #define GST_IS_TUNER(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TUNER)) + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TUNER)) #define GST_IS_TUNER_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_TUNER)) #define GST_TUNER_GET_CLASS(inst) \ diff --git a/gst-libs/gst/interfaces/videoorientation.c b/gst-libs/gst/interfaces/videoorientation.c index 35ded695a0..4918862425 100644 --- a/gst-libs/gst/interfaces/videoorientation.c +++ b/gst-libs/gst/interfaces/videoorientation.c @@ -39,6 +39,9 @@ * Since: 0.10.11 */ +/* FIXME 0.11: check if we need to add API for sometimes-supportedness + * (aka making up for GstImplementsInterface removal) (probably yes) */ + static void gst_video_orientation_iface_init (GstVideoOrientationInterface * iface); @@ -62,8 +65,6 @@ gst_video_orientation_get_type (void) gst_video_orientation_type = g_type_register_static (G_TYPE_INTERFACE, "GstVideoOrientation", &gst_video_orientation_info, 0); - g_type_interface_add_prerequisite (gst_video_orientation_type, - GST_TYPE_IMPLEMENTS_INTERFACE); } return gst_video_orientation_type; diff --git a/gst-libs/gst/interfaces/videoorientation.h b/gst-libs/gst/interfaces/videoorientation.h index c02d08b3f2..0ace82798e 100644 --- a/gst-libs/gst/interfaces/videoorientation.h +++ b/gst-libs/gst/interfaces/videoorientation.h @@ -30,9 +30,9 @@ G_BEGIN_DECLS #define GST_TYPE_VIDEO_ORIENTATION \ (gst_video_orientation_get_type ()) #define GST_VIDEO_ORIENTATION(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_VIDEO_ORIENTATION, GstVideoOrientation)) + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_VIDEO_ORIENTATION, GstVideoOrientation)) #define GST_IS_VIDEO_ORIENTATION(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_VIDEO_ORIENTATION)) + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_VIDEO_ORIENTATION)) #define GST_VIDEO_ORIENTATION_GET_IFACE(inst) \ (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_VIDEO_ORIENTATION, GstVideoOrientationInterface)) @@ -61,6 +61,10 @@ typedef struct _GstVideoOrientationInterface GstVideoOrientationInterface; struct _GstVideoOrientationInterface { GTypeInterface parent; + /* FIXME 0.11: fix awkward API? add some kind of get_supported flags thing + * and then just return booleans/int from all vfuncs requiring the caller + * to check the flags first */ + /* virtual functions */ gboolean (* get_hflip) (GstVideoOrientation *video_orientation, gboolean *flip); gboolean (* get_vflip) (GstVideoOrientation *video_orientation, gboolean *flip); diff --git a/gst-libs/gst/interfaces/xoverlay.c b/gst-libs/gst/interfaces/xoverlay.c index 6fcb5ccad0..febf8c7a64 100644 --- a/gst-libs/gst/interfaces/xoverlay.c +++ b/gst-libs/gst/interfaces/xoverlay.c @@ -318,8 +318,6 @@ gst_x_overlay_get_type (void) gst_x_overlay_type = g_type_register_static (G_TYPE_INTERFACE, "GstXOverlay", &gst_x_overlay_info, 0); - g_type_interface_add_prerequisite (gst_x_overlay_type, - GST_TYPE_IMPLEMENTS_INTERFACE); } return gst_x_overlay_type; diff --git a/gst-libs/gst/interfaces/xoverlay.h b/gst-libs/gst/interfaces/xoverlay.h index 6ac355c25f..d0ece43f26 100644 --- a/gst-libs/gst/interfaces/xoverlay.h +++ b/gst-libs/gst/interfaces/xoverlay.h @@ -27,15 +27,16 @@ G_BEGIN_DECLS +/* FIXME 0.11: remove all CLASS bits, this is an interface */ + #define GST_TYPE_X_OVERLAY \ (gst_x_overlay_get_type ()) #define GST_X_OVERLAY(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_X_OVERLAY, \ - GstXOverlay)) + (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_X_OVERLAY, GstXOverlay)) #define GST_X_OVERLAY_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_X_OVERLAY, GstXOverlayClass)) #define GST_IS_X_OVERLAY(obj) \ - (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_X_OVERLAY)) + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_X_OVERLAY)) #define GST_IS_X_OVERLAY_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_X_OVERLAY)) #define GST_X_OVERLAY_GET_CLASS(inst) \