[pulseaudio-discuss] [PATCH] pulse: Move PA_CLAMP* to pulse/
Peter Meerwald
pmeerw at pmeerw.net
Wed Mar 11 04:24:00 PDT 2015
On Wed, 11 Mar 2015, arun at accosted.net wrote:
> From: Arun Raghavan <git at arunraghavan.net>
>
> We use PA_CLAMP_UNLIKELY in volume.h, which clients might use, so we
> need to make sure the macros is available in exported headers.
nitpicking below
> Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=89515
> ---
> src/pulse/util.h | 31 +++++++++++++++++++++++++++++++
> src/pulse/volume.h | 1 +
> src/pulsecore/macro.h | 28 ----------------------------
> src/pulsecore/sconv-s16le.c | 2 ++
> src/pulsecore/sconv.c | 2 ++
> 5 files changed, 36 insertions(+), 28 deletions(-)
>
> diff --git a/src/pulse/util.h b/src/pulse/util.h
> index e4a62da..6074638 100644
> --- a/src/pulse/util.h
> +++ b/src/pulse/util.h
> @@ -29,6 +29,37 @@
> /** \file
> * Assorted utility functions */
>
> +/* The clamp macros aren't meant to be exported, per se, they're just here for our own use */
> +
> +#ifdef __GNUC__
> +#define PA_CLAMP(x, low, high) \
> + __extension__ ({ \
> + typeof(x) _x = (x); \
> + typeof(low) _low = (low); \
> + typeof(high) _high = (high); \
> + ((_x > _high) ? _high : ((_x < _low) ? _low : _x)); \
> + })
> +#else
> +#define PA_CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x)))
> +#endif
> +
> +#ifdef __GNUC__
> +#define PA_CLAMP_UNLIKELY(x, low, high) \
> + __extension__ ({ \
> + typeof(x) _x = (x); \
> + typeof(low) _low = (low); \
> + typeof(high) _high = (high); \
> + (PA_UNLIKELY(_x > _high) ? _high : (PA_UNLIKELY(_x < _low) ? _low : _x)); \
> + })
> +#else
> +#define PA_CLAMP_UNLIKELY(x, low, high) (PA_UNLIKELY((x) > (high)) ? (high) : (PA_UNLIKELY((x) < (low)) ? (low) : (x)))
> +#endif
> +
> +/* We don't define a PA_CLAMP_LIKELY here, because it doesn't really
> + * make sense: we cannot know if it is more likely that the values is
> + * lower or greater than the boundaries.*/
add one space before */
and just one newline?
> +
> +
> PA_C_DECL_BEGIN
>
> /** Return the current username in the specified string buffer. */
> diff --git a/src/pulse/volume.h b/src/pulse/volume.h
> index ec777b2..a0acde5 100644
> --- a/src/pulse/volume.h
> +++ b/src/pulse/volume.h
> @@ -28,6 +28,7 @@
> #include <pulse/gccmacro.h>
> #include <pulse/sample.h>
> #include <pulse/channelmap.h>
> +#include <pulse/util.h>
> #include <pulse/version.h>
>
> /** \page volume Volume Control
> diff --git a/src/pulsecore/macro.h b/src/pulsecore/macro.h
> index 1716f81..bd98708 100644
> --- a/src/pulsecore/macro.h
> +++ b/src/pulsecore/macro.h
> @@ -121,34 +121,6 @@ static inline size_t PA_PAGE_ALIGN(size_t l) {
> #endif
>
> #ifdef __GNUC__
> -#define PA_CLAMP(x, low, high) \
> - __extension__ ({ \
> - typeof(x) _x = (x); \
> - typeof(low) _low = (low); \
> - typeof(high) _high = (high); \
> - ((_x > _high) ? _high : ((_x < _low) ? _low : _x)); \
> - })
> -#else
> -#define PA_CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x)))
> -#endif
> -
> -#ifdef __GNUC__
> -#define PA_CLAMP_UNLIKELY(x, low, high) \
> - __extension__ ({ \
> - typeof(x) _x = (x); \
> - typeof(low) _low = (low); \
> - typeof(high) _high = (high); \
> - (PA_UNLIKELY(_x > _high) ? _high : (PA_UNLIKELY(_x < _low) ? _low : _x)); \
> - })
> -#else
> -#define PA_CLAMP_UNLIKELY(x, low, high) (PA_UNLIKELY((x) > (high)) ? (high) : (PA_UNLIKELY((x) < (low)) ? (low) : (x)))
> -#endif
> -
> -/* We don't define a PA_CLAMP_LIKELY here, because it doesn't really
> - * make sense: we cannot know if it is more likely that the values is
> - * lower or greater than the boundaries.*/
> -
> -#ifdef __GNUC__
> #define PA_ROUND_UP(a, b) \
> __extension__ ({ \
> typeof(a) _a = (a); \
> diff --git a/src/pulsecore/sconv-s16le.c b/src/pulsecore/sconv-s16le.c
> index c503e0e..440aba7 100644
> --- a/src/pulsecore/sconv-s16le.c
> +++ b/src/pulsecore/sconv-s16le.c
> @@ -27,6 +27,8 @@
> #include <stdio.h>
> #include <math.h>
>
> +#include <pulse/util.h>
> +
> #include <pulsecore/sconv.h>
> #include <pulsecore/macro.h>
> #include <pulsecore/endianmacros.h>
> diff --git a/src/pulsecore/sconv.c b/src/pulsecore/sconv.c
> index 0781b6e..24dd54f 100644
> --- a/src/pulsecore/sconv.c
> +++ b/src/pulsecore/sconv.c
> @@ -26,6 +26,8 @@
> #include <stdlib.h>
> #include <math.h>
>
> +#include <pulse/util.h>
> +
> #include <pulsecore/g711.h>
> #include <pulsecore/macro.h>
> #include <pulsecore/endianmacros.h>
> --
> 2.1.0
>
> _______________________________________________
> pulseaudio-discuss mailing list
> pulseaudio-discuss at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
>
--
Peter Meerwald
+43-664-2444418 (mobile)
More information about the pulseaudio-discuss
mailing list