diff options
author | Tanu Kaskinen <tanu.kaskinen@linux.intel.com> | 2014-03-26 11:52:33 +0200 |
---|---|---|
committer | Tanu Kaskinen <tanu.kaskinen@linux.intel.com> | 2014-03-27 10:02:57 +0200 |
commit | b9147fad0fc33acf8c90a8c05f49cbae427fd33a (patch) | |
tree | e7263794d5c2efff50b7fdac225fd4a8b7b0d677 /src/pulse | |
parent | 5621b7898b3074ea9bcb189ee7c9f82b0cd52c2f (diff) |
direction: Add a couple of direction helper functions
Diffstat (limited to 'src/pulse')
-rw-r--r-- | src/pulse/direction.c | 46 | ||||
-rw-r--r-- | src/pulse/direction.h | 37 | ||||
-rw-r--r-- | src/pulse/pulseaudio.h | 5 |
3 files changed, 86 insertions, 2 deletions
diff --git a/src/pulse/direction.c b/src/pulse/direction.c new file mode 100644 index 000000000..95f5e00cc --- /dev/null +++ b/src/pulse/direction.c @@ -0,0 +1,46 @@ +/*** + This file is part of PulseAudio. + + Copyright 2014 Intel Corporation + + PulseAudio is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2.1 of the License, + or (at your option) any later version. + + PulseAudio is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with PulseAudio; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + USA. +***/ + +#include "direction.h" + +#include <pulsecore/i18n.h> + +int pa_direction_valid(pa_direction_t direction) { + if (direction != PA_DIRECTION_INPUT + && direction != PA_DIRECTION_OUTPUT + && direction != (PA_DIRECTION_INPUT | PA_DIRECTION_OUTPUT)) + return 0; + + return 1; +} + +const char *pa_direction_to_string(pa_direction_t direction) { + pa_init_i18n(); + + if (direction == PA_DIRECTION_INPUT) + return _("input"); + if (direction == PA_DIRECTION_OUTPUT) + return _("output"); + if (direction == (PA_DIRECTION_INPUT | PA_DIRECTION_OUTPUT)) + return _("bidirectional"); + + return _("invalid"); +} diff --git a/src/pulse/direction.h b/src/pulse/direction.h new file mode 100644 index 000000000..127f07af9 --- /dev/null +++ b/src/pulse/direction.h @@ -0,0 +1,37 @@ +#ifndef foodirectionhfoo +#define foodirectionhfoo + +/*** + This file is part of PulseAudio. + + Copyright 2014 Intel Corporation + + PulseAudio is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2.1 of the License, + or (at your option) any later version. + + PulseAudio is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with PulseAudio; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + USA. +***/ + +#include <pulse/def.h> + +/** \file + * Utility functions for \ref pa_direction_t. */ + +/** Return non-zero if the given value is a valid direction (either input, + * output or bidirectional). \since 6.0 */ +int pa_direction_valid(pa_direction_t direction) PA_GCC_CONST; + +/** Return a textual representation of the direction. \since 6.0 */ +const char *pa_direction_to_string(pa_direction_t direction); + +#endif diff --git a/src/pulse/pulseaudio.h b/src/pulse/pulseaudio.h index 21b7213f8..2e270ddc7 100644 --- a/src/pulse/pulseaudio.h +++ b/src/pulse/pulseaudio.h @@ -23,6 +23,7 @@ USA. ***/ +#include <pulse/direction.h> #include <pulse/mainloop-api.h> #include <pulse/sample.h> #include <pulse/format.h> @@ -49,8 +50,8 @@ /** \file * Include all libpulse header files at once. The following files are - * included: \ref mainloop-api.h, \ref sample.h, \ref def.h, \ref - * context.h, \ref stream.h, \ref introspect.h, \ref subscribe.h, \ref + * included: \ref direction.h, \ref mainloop-api.h, \ref sample.h, \ref def.h, + * \ref context.h, \ref stream.h, \ref introspect.h, \ref subscribe.h, \ref * scache.h, \ref version.h, \ref error.h, \ref channelmap.h, \ref * operation.h,\ref volume.h, \ref xmalloc.h, \ref utf8.h, \ref * thread-mainloop.h, \ref mainloop.h, \ref util.h, \ref proplist.h, |