GNOME Bugzilla – Bug 739854
validate:scenario: Properly handle ASYNC action execution in the API
Last modified: 2015-06-24 14:44:19 UTC
The ->execute function now return a GstValidateExecuteActionReturn which can be set as ASYNC in order to tell the scenario that the action will be executed asynchronously, when the action is done, the caller is responsible for calling gst_validate_action_set_done(); so that the scenario keeps going on. In this commit we make sure that the old API keeps working as GST_VALIDATE_EXECUTE_ACTION_ERROR == FALSE and GST_VALIDATE_EXECUTE_ACTION_OK == TRUE Morevover GstValidateExecuteActionReturn is just a define API: + gst_validate_action_set_done + GstValidateExecuteActionReturn
Created attachment 290283 [details] [review] validate:scenario: Properly handle ASYNC action execution in the API
Created attachment 290284 [details] [review] validate: Add a GstValidateActionTypeFlag flag Allowing us to define action types more in detail. Keep backward compatibility, at least with the C API
Created attachment 290433 [details] [review] validate:scenario: Properly handle ASYNC action execution in the API The ->execute function now return a GstValidateExecuteActionReturn which can be set as ASYNC in order to tell the scenario that the action will be executed asynchronously, when the action is done, the caller is responsible for calling gst_validate_action_set_done(); so that the scenario keeps going on. In this commit we make sure that the old API keeps working as GST_VALIDATE_EXECUTE_ACTION_ERROR == FALSE and GST_VALIDATE_EXECUTE_ACTION_OK == TRUE Morevover GstValidateExecuteActionReturn is just a define API: + gst_validate_action_set_done + GstValidateExecuteActionReturn
Review of attachment 290284 [details] [review]: All good except for that :) ::: validate/gst/validate/gst-validate-internal.h @@ +34,3 @@ typedef struct _GstValidateActionType GstValidateActionType; +#define IS_CONFIG_ACTION_TYPE(type) (((type) & GST_VALIDATE_ACTION_TYPE_CONFIG) || ((type) == TRUE)) A comment would be welcome here to explain why || ((type) == TRUE) is needed.
Review of attachment 290433 [details] [review]: OK
Attachment 290284 [details] pushed as 4cbcb97 - validate: Add a GstValidateActionTypeFlag flag Attachment 290433 [details] pushed as cdfa1ee - validate:scenario: Properly handle ASYNC action execution in the API