diff options
author | Lennart Poettering <lennart@poettering.net> | 2006-08-12 16:50:58 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2006-08-12 16:50:58 +0000 |
commit | b5207fc9cac954d49132ff4e6760a60e4e6f2b51 (patch) | |
tree | 2fb6bbef5c6bcd4f0f3e24383a4d96de185e594f /src | |
parent | b45c39269fe3f59694056b2ae6bae2ac9eada9dc (diff) |
add pa_sink_used_by()/pa_source_used_by()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1226 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src')
-rw-r--r-- | src/pulsecore/sink.c | 14 | ||||
-rw-r--r-- | src/pulsecore/sink.h | 2 | ||||
-rw-r--r-- | src/pulsecore/source.c | 7 | ||||
-rw-r--r-- | src/pulsecore/source.h | 2 |
4 files changed, 24 insertions, 1 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index d1d9785a..e770950c 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -556,3 +556,17 @@ void pa_sink_set_description(pa_sink *s, const char *description) { pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SINK|PA_SUBSCRIPTION_EVENT_CHANGE, s->index); } + +unsigned pa_sink_used_by(pa_sink *s) { + unsigned ret; + + assert(s); + assert(s->ref >= 1); + + ret = pa_idxset_size(s->inputs); + + if (s->monitor_source) + ret += pa_source_used_by(s->monitor_source); + + return ret; +} diff --git a/src/pulsecore/sink.h b/src/pulsecore/sink.h index fb0912ca..1d870620 100644 --- a/src/pulsecore/sink.h +++ b/src/pulsecore/sink.h @@ -103,4 +103,6 @@ int pa_sink_get_mute(pa_sink *sink, pa_mixer_t m); void pa_sink_set_description(pa_sink *s, const char *description); +unsigned pa_sink_used_by(pa_sink *s); + #endif diff --git a/src/pulsecore/source.c b/src/pulsecore/source.c index 903de88b..ae72f040 100644 --- a/src/pulsecore/source.c +++ b/src/pulsecore/source.c @@ -333,3 +333,10 @@ void pa_source_set_description(pa_source *s, const char *description) { pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SOURCE|PA_SUBSCRIPTION_EVENT_CHANGE, s->index); } + +unsigned pa_source_used_by(pa_source *s) { + assert(s); + assert(s->ref >= 1); + + return pa_idxset_size(s->outputs); +} diff --git a/src/pulsecore/source.h b/src/pulsecore/source.h index be0c969d..4dbe4e01 100644 --- a/src/pulsecore/source.h +++ b/src/pulsecore/source.h @@ -104,5 +104,5 @@ int pa_source_get_mute(pa_source *source, pa_mixer_t m); void pa_source_set_description(pa_source *s, const char *description); - +unsigned pa_source_used_by(pa_source *s); #endif |