diff options
author | Max Kellermann <max@duempel.org> | 2013-11-22 23:00:39 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2013-11-22 23:24:40 +0100 |
commit | 45d27a52f17be05f5269d7dc37f380ed595196e7 (patch) | |
tree | 18c1054ea447671578c8c7e6dc5b47460c1314fd | |
parent | d22acc59c928bf4fd96eb569897bf6f64ae7df7a (diff) | |
download | mpd-45d27a52f17be05f5269d7dc37f380ed595196e7.tar.gz mpd-45d27a52f17be05f5269d7dc37f380ed595196e7.tar.xz mpd-45d27a52f17be05f5269d7dc37f380ed595196e7.zip |
PcmUtils: add function PcmClampN()
-rw-r--r-- | src/pcm/PcmUtils.hxx | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pcm/PcmUtils.hxx b/src/pcm/PcmUtils.hxx index 108ba85ae..febe12d7b 100644 --- a/src/pcm/PcmUtils.hxx +++ b/src/pcm/PcmUtils.hxx @@ -63,4 +63,16 @@ PcmClamp(U x) return T(x); } +/** + * Check if the values in this buffer are within the range of the + * provided bit size, and clamps them whenever necessary. + */ +template<typename T, typename U, unsigned bits> +static inline void +PcmClampN(T *dest, const U *src, unsigned n) +{ + while (n-- > 0) + *dest++ = PcmClamp<T, U, bits>(*src++); +} + #endif |