summaryrefslogtreecommitdiffstats
path: root/src/pulse/channelmap.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-05-25 23:51:34 +0200
committerLennart Poettering <lennart@poettering.net>2009-05-25 23:51:34 +0200
commit01fa34ba8a2be006964b87e5e19a2c955bf7131e (patch)
tree779a1bd02fa64041d14dafd9cc73aa012216c8c8 /src/pulse/channelmap.c
parent261a4830fb28f7ae690176cdfbe21607d27d9bcb (diff)
channelmap: introduce pa_channel_map_mask() and pa_channel_position_mask_t
Diffstat (limited to 'src/pulse/channelmap.c')
-rw-r--r--src/pulse/channelmap.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pulse/channelmap.c b/src/pulse/channelmap.c
index fe14df24..4654a9ad 100644
--- a/src/pulse/channelmap.c
+++ b/src/pulse/channelmap.c
@@ -852,3 +852,15 @@ int pa_channel_map_has_position(const pa_channel_map *map, pa_channel_position_t
return 0;
}
+
+pa_channel_position_mask_t pa_channel_map_mask(const pa_channel_map *map) {
+ unsigned c;
+ pa_channel_position_mask_t r = 0;
+
+ pa_return_val_if_fail(pa_channel_map_valid(map), 0);
+
+ for (c = 0; c < map->channels; c++)
+ r |= PA_CHANNEL_POSITION_MASK(map->map[c]);
+
+ return r;
+}