From 1635054c4f5aef07ad0d4635ce3070c76d2dbabb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrick=20Jos=C3=A9=20Pereira?= Date: Wed, 4 Mar 2020 16:33:16 -0300 Subject: [PATCH] AP_Math: Add missing constexpr MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Patrick José Pereira --- libraries/AP_Math/AP_Math.cpp | 2 +- libraries/AP_Math/AP_Math.h | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/libraries/AP_Math/AP_Math.cpp b/libraries/AP_Math/AP_Math.cpp index d621fc2fe19..5128225fa56 100644 --- a/libraries/AP_Math/AP_Math.cpp +++ b/libraries/AP_Math/AP_Math.cpp @@ -103,7 +103,7 @@ float linear_interpolate(float low_output, float high_output, * alpha range: [0,1] min to max expo * input range: [-1,1] */ -float expo_curve(float alpha, float x) +constexpr float expo_curve(float alpha, float x) { return (1.0f - alpha) * x + alpha * x * x * x; } diff --git a/libraries/AP_Math/AP_Math.h b/libraries/AP_Math/AP_Math.h index 8d7b2c5365e..82d36f2fd81 100644 --- a/libraries/AP_Math/AP_Math.h +++ b/libraries/AP_Math/AP_Math.h @@ -215,32 +215,32 @@ static inline auto MAX(const A &one, const B &two) -> decltype(one > two ? one : return one > two ? one : two; } -inline uint32_t hz_to_nsec(uint32_t freq) +inline constexpr uint32_t hz_to_nsec(uint32_t freq) { return AP_NSEC_PER_SEC / freq; } -inline uint32_t nsec_to_hz(uint32_t nsec) +inline constexpr uint32_t nsec_to_hz(uint32_t nsec) { return AP_NSEC_PER_SEC / nsec; } -inline uint32_t usec_to_nsec(uint32_t usec) +inline constexpr uint32_t usec_to_nsec(uint32_t usec) { return usec * AP_NSEC_PER_USEC; } -inline uint32_t nsec_to_usec(uint32_t nsec) +inline constexpr uint32_t nsec_to_usec(uint32_t nsec) { return nsec / AP_NSEC_PER_USEC; } -inline uint32_t hz_to_usec(uint32_t freq) +inline constexpr uint32_t hz_to_usec(uint32_t freq) { return AP_USEC_PER_SEC / freq; } -inline uint32_t usec_to_hz(uint32_t usec) +inline constexpr uint32_t usec_to_hz(uint32_t usec) { return AP_USEC_PER_SEC / usec; } @@ -256,7 +256,7 @@ float linear_interpolate(float low_output, float high_output, * alpha range: [0,1] min to max expo * input range: [-1,1] */ -float expo_curve(float alpha, float input); +constexpr float expo_curve(float alpha, float input); /* throttle curve generator * thr_mid: output at mid stick