libobs: Add obs_source_enum_filters function

Enumerates filters that are currently present on a source.
This commit is contained in:
jp9000 2015-02-25 21:14:11 -08:00
parent 0b5a5c16a9
commit 9f82085243
2 changed files with 20 additions and 0 deletions

View file

@ -2435,3 +2435,19 @@ void obs_source_dec_showing(obs_source_t *source)
{
obs_source_deactivate(source, AUX_VIEW);
}
void obs_source_enum_filters(obs_source_t *source,
obs_source_enum_proc_t callback, void *param)
{
if (!source || !callback)
return;
pthread_mutex_lock(&source->filter_mutex);
for (size_t i = 0; i < source->filters.num; i++) {
struct obs_source *filter = source->filters.array[i];
callback(source, filter, param);
}
pthread_mutex_unlock(&source->filter_mutex);
}

View file

@ -794,6 +794,10 @@ EXPORT void obs_source_inc_showing(obs_source_t *source);
*/
EXPORT void obs_source_dec_showing(obs_source_t *source);
/** Enumerates filters assigned to the source */
EXPORT void obs_source_enum_filters(obs_source_t *source,
obs_source_enum_proc_t callback, void *param);
/* ------------------------------------------------------------------------- */
/* Functions used by sources */