effects: Make TrackEffect implementation corresponding to the new effect API description
authorThibault Saunier <thibault.saunier@collabora.co.uk>
Tue, 18 Jan 2011 19:05:54 +0000 (20:05 +0100)
committerEdward Hervey <edward.hervey@collabora.co.uk>
Fri, 6 May 2011 08:38:59 +0000 (10:38 +0200)
Make the effects testsuite correspond to the new API

Fixe a few compilation issues due to TrackEffect

docs/libs/ges-sections.txt
ges/ges-track-effect.c
ges/ges-track-effect.h
ges/ges.h
tests/check/ges/effects.c

index 116bcdc..37b4184 100644 (file)
@@ -703,8 +703,7 @@ ges_keyfile_formatter_get_type
 <TITLE>GESTrackEffect</TITLE>
 GESTrackEffect
 GESTrackEffectClass
-ges_track_effect_new
-ges_track_effect_new_with_name 
+ges_track_effect_new_from_bin_desc
 <SUBSECTION Standard>
 GES_IS_TRACK_EFFECT
 GES_IS_TRACK_EFFECT_CLASS
index 1e45ad0..428e8fc 100644 (file)
@@ -81,8 +81,6 @@ ges_track_effect_class_init (GESTrackEffectClass * klass)
 
   g_type_class_add_private (klass, sizeof (GESTrackEffectPrivate));
 
-  g_type_class_add_private (klass, sizeof (GESTrackEffectPrivate));
-
   object_class->get_property = ges_track_effect_get_property;
   object_class->set_property = ges_track_effect_set_property;
   object_class->dispose = ges_track_effect_dispose;
@@ -102,7 +100,6 @@ ges_track_effect_class_init (GESTrackEffectClass * klass)
           "bin description",
           "Bin description of the effect",
           NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
-
 }
 
 static void
@@ -158,8 +155,8 @@ ges_track_effect_create_element (GESTrackOperation * object)
   src = gst_ghost_pad_new ("src", src_target);
   sink = gst_ghost_pad_new ("video_sink", sink_target);
 
-  g_object_unref (src_target);
-  g_object_unref (sink_target);
+  gst_object_unref (src_target);
+  gst_object_unref (sink_target);
 
   gst_element_add_pad (ret, src);
   gst_element_add_pad (ret, sink);
@@ -170,7 +167,7 @@ ges_track_effect_create_element (GESTrackOperation * object)
 }
 
 GESTrackEffect *
-ges_track_effect_new (const gchar * bin_description)
+ges_track_effect_new_from_bin_desc (const gchar * bin_description)
 {
   return g_object_new (GES_TYPE_TRACK_EFFECT, "bin-description",
       bin_description, NULL);
index 564a4a1..dad7660 100644 (file)
@@ -66,7 +66,7 @@ struct _GESTrackEffectClass
 
 GType ges_track_effect_get_type (void);
 
-GESTrackEffect *ges_track_effect_new (const gchar * bin_description);
+GESTrackEffect *ges_track_effect_new_from_bin_desc (const gchar * bin_description);
 
 G_END_DECLS
 #endif /* _GES_TRACK_EFFECT */
index b600f7c..19953f8 100644 (file)
--- a/ges/ges.h
+++ b/ges/ges.h
@@ -55,6 +55,7 @@
 #include <ges/ges-track-transition.h>
 #include <ges/ges-track-video-transition.h>
 #include <ges/ges-track-audio-transition.h>
+#include <ges/ges-track-effect.h>
 
 #include <ges/ges-formatter.h>
 #include <ges/ges-keyfile-formatter.h>
index 9ac80da..051218c 100644 (file)
@@ -27,7 +27,7 @@ GST_START_TEST (test_effect_basic)
 
   ges_init ();
 
-  effect = ges_track_effect_new ("identity");
+  effect = ges_track_effect_new_from_bin_desc ("identity");
   fail_unless (effect != NULL);
   g_object_unref (effect);
 }
@@ -39,9 +39,8 @@ GST_START_TEST (test_add_effect_to_tl_object)
   GESTimeline *timeline;
   GESTimelineLayer *layer;
   GESTrack *track_audio, *track_video;
-  GESTrackEffect *effect_track;
+  GESTrackEffect *track_effect;
   GESTimelineTestSource *source;
-  gboolean effect_added = FALSE;
 
   ges_init ();
 
@@ -61,20 +60,22 @@ GST_START_TEST (test_add_effect_to_tl_object)
   ges_simple_timeline_layer_add_object ((GESSimpleTimelineLayer *) (layer),
       (GESTimelineObject *) source, 0);
 
-  GST_DEBUG ("Adding effect");
-  ges_timeline_object_add_effect (GES_TIMELINE_OBJECT (source),
-      "identity", track_video);
 
-  effect_track =
-      GES_TRACK_EFFECT (ges_timeline_object_find_track_object
-      (GES_TIMELINE_OBJECT (source), track_video, GES_TYPE_TRACK_EFFECT));
+  GST_DEBUG ("Create effect");
+  track_effect = ges_track_effect_new_from_bin_desc ("identity");
 
-  assert_equals_int (GES_TRACK_OBJECT (effect_track)->active, TRUE);
-  fail_unless (GES_IS_TRACK_EFFECT (effect_track));
+  fail_unless (GES_IS_TRACK_EFFECT (track_effect));
+
+
+  fail_unless (ges_timeline_object_add_track_object (GES_TIMELINE_OBJECT
+          (source), GES_TRACK_OBJECT (track_effect)));
+  fail_unless (ges_track_add_object (track_video,
+          GES_TRACK_OBJECT (track_effect)));
+
+  assert_equals_int (GES_TRACK_OBJECT (track_effect)->active, TRUE);
 
   ges_timeline_layer_remove_object (layer, (GESTimelineObject *) source);
 
-  g_object_unref (effect_track);
   g_object_unref (timeline);
 }