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
This commit is contained in:
Thibault Saunier 2015-02-12 16:23:49 +01:00
parent 16f97e3df6
commit 51593df323
2 changed files with 14 additions and 7 deletions

View file

@ -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");

View file

@ -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);