From 51593df323c164a11a37e21c3ab8416d3eb22e2b Mon Sep 17 00:00:00 2001 From: Thibault Saunier Date: Thu, 12 Feb 2015 16:23:49 +0100 Subject: [PATCH] validate:scenario: Add a method to retrieve all remaining actions Not only the next one as it was not making much sense! API: - gst_validate_scenario_get_next_action + gst_validate_scenario_get_actions --- validate/gst/validate/gst-validate-scenario.c | 17 ++++++++++++----- validate/gst/validate/gst-validate-scenario.h | 4 ++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/validate/gst/validate/gst-validate-scenario.c b/validate/gst/validate/gst-validate-scenario.c index 5ec22e4..bb6e79d 100644 --- a/validate/gst/validate/gst-validate-scenario.c +++ b/validate/gst/validate/gst-validate-scenario.c @@ -2487,13 +2487,20 @@ gst_validate_print_action_types (const gchar ** wanted_types, return TRUE; } -GstValidateAction * -gst_validate_scenario_get_next_action (GstValidateScenario * scenario) +/** + * gst_validate_scenario_get_actions: + * @scenario: The scenario to retrieve remaining actions for + * + * Get remaining actions from @scenario. + * + * Returns: (transfer full) (element-type GstValidateAction): A list of #GstValidateAction. + */ +GList * +gst_validate_scenario_get_actions (GstValidateScenario * scenario) { if (GPOINTER_TO_INT (g_private_get (&main_thread_priv))) { - if (scenario->priv->actions && scenario->priv->actions->next) - return (GstValidateAction *) gst_mini_object_ref ((GstMiniObject *) - scenario->priv->actions->next->data); + return g_list_copy_deep (scenario->priv->actions, + (GCopyFunc) gst_mini_object_ref, NULL); } else { GST_WARNING_OBJECT (scenario, "Trying to get next action from outside" " the 'main' thread"); diff --git a/validate/gst/validate/gst-validate-scenario.h b/validate/gst/validate/gst-validate-scenario.h index 025059b..243fc16 100644 --- a/validate/gst/validate/gst-validate-scenario.h +++ b/validate/gst/validate/gst-validate-scenario.h @@ -273,8 +273,8 @@ gboolean gst_validate_scenario_execute_seek (GstValidateScenario *scenario, GstSeekType stop_type, GstClockTime stop); -GstValidateAction * -gst_validate_scenario_get_next_action (GstValidateScenario *scenario); +GList * +gst_validate_scenario_get_actions (GstValidateScenario *scenario); GstValidateExecuteActionReturn gst_validate_execute_action (GstValidateActionType * action_type, GstValidateAction * action); -- 2.7.4