diff options
author | Dan Albert <danalbert@google.com> | 2014-11-20 11:31:17 -0800 |
---|---|---|
committer | Dan Albert <danalbert@google.com> | 2014-11-20 11:34:32 -0800 |
commit | 36802bd18b7b4e8c87fa019c7e3068bee330d174 (patch) | |
tree | a5c4847a10d5f77a04b9a621174a774d84cb7c31 /services/audioflinger/AudioResamplerFirGen.h | |
parent | de14fae779240a99c53d58ef16ce3086321ff897 (diff) | |
download | frameworks_av-36802bd18b7b4e8c87fa019c7e3068bee330d174.zip frameworks_av-36802bd18b7b4e8c87fa019c7e3068bee330d174.tar.gz frameworks_av-36802bd18b7b4e8c87fa019c7e3068bee330d174.tar.bz2 |
C++11 compatibility.
* Fix string literal concatenation to not be interpreted as UD
literals.
* Add constexpr compatibility for non-integral static members.
* Use __typeof__ instead of typeof (should become decltype once this
actually becomes C++11).
* Add an appropriate cast for atomic_uintptr_t, since moving to C++11
means moving from <stdatomic.h> to <atomic>, which has better
typechecking (hooray for not macros!).
Bug: 18466763
Change-Id: I9561dcb2526578687819ff85421ba80d8e1a9694
Diffstat (limited to 'services/audioflinger/AudioResamplerFirGen.h')
-rw-r--r-- | services/audioflinger/AudioResamplerFirGen.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/services/audioflinger/AudioResamplerFirGen.h b/services/audioflinger/AudioResamplerFirGen.h index d024b2f..f3718b6 100644 --- a/services/audioflinger/AudioResamplerFirGen.h +++ b/services/audioflinger/AudioResamplerFirGen.h @@ -17,6 +17,8 @@ #ifndef ANDROID_AUDIO_RESAMPLER_FIR_GEN_H #define ANDROID_AUDIO_RESAMPLER_FIR_GEN_H +#include "utils/Compat.h" + namespace android { /* @@ -187,22 +189,22 @@ static inline int64_t toint(double x, int64_t maxval) { template <int N> struct I0Term { - static const double value = I0Term<N-1>::value / (4. * N * N); + static const CONSTEXPR double value = I0Term<N-1>::value / (4. * N * N); }; template <> struct I0Term<0> { - static const double value = 1.; + static const CONSTEXPR double value = 1.; }; template <int N> struct I0ATerm { - static const double value = I0ATerm<N-1>::value * (2.*N-1.) * (2.*N-1.) / (8. * N); + static const CONSTEXPR double value = I0ATerm<N-1>::value * (2.*N-1.) * (2.*N-1.) / (8. * N); }; template <> struct I0ATerm<0> { // 1/sqrt(2*PI); - static const double value = 0.398942280401432677939946059934381868475858631164934657665925; + static const CONSTEXPR double value = 0.398942280401432677939946059934381868475858631164934657665925; }; #if USE_HORNERS_METHOD |