mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-06-02 03:49:12 +08:00
Improved limits handling
This commit is contained in:
@@ -39,6 +39,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
#include "Limits.hpp"
|
#include "Limits.hpp"
|
||||||
|
|
||||||
@@ -61,6 +62,11 @@ unsigned __EXPORT min(unsigned val1, unsigned val2)
|
|||||||
return (val1 < val2) ? val1 : val2;
|
return (val1 < val2) ? val1 : val2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint64_t __EXPORT min(uint64_t val1, uint64_t val2)
|
||||||
|
{
|
||||||
|
return (val1 < val2) ? val1 : val2;
|
||||||
|
}
|
||||||
|
|
||||||
double __EXPORT min(double val1, double val2)
|
double __EXPORT min(double val1, double val2)
|
||||||
{
|
{
|
||||||
return (val1 < val2) ? val1 : val2;
|
return (val1 < val2) ? val1 : val2;
|
||||||
@@ -81,6 +87,11 @@ unsigned __EXPORT max(unsigned val1, unsigned val2)
|
|||||||
return (val1 > val2) ? val1 : val2;
|
return (val1 > val2) ? val1 : val2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint64_t __EXPORT max(uint64_t val1, uint64_t val2)
|
||||||
|
{
|
||||||
|
return (val1 > val2) ? val1 : val2;
|
||||||
|
}
|
||||||
|
|
||||||
double __EXPORT max(double val1, double val2)
|
double __EXPORT max(double val1, double val2)
|
||||||
{
|
{
|
||||||
return (val1 > val2) ? val1 : val2;
|
return (val1 > val2) ? val1 : val2;
|
||||||
@@ -102,6 +113,11 @@ unsigned __EXPORT constrain(unsigned val, unsigned min, unsigned max)
|
|||||||
return (val < min) ? min : ((val > max) ? max : val);
|
return (val < min) ? min : ((val > max) ? max : val);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint64_t __EXPORT constrain(uint64_t val, uint64_t min, uint64_t max)
|
||||||
|
{
|
||||||
|
return (val < min) ? min : ((val > max) ? max : val);
|
||||||
|
}
|
||||||
|
|
||||||
double __EXPORT constrain(double val, double min, double max)
|
double __EXPORT constrain(double val, double min, double max)
|
||||||
{
|
{
|
||||||
return (val < min) ? min : ((val > max) ? max : val);
|
return (val < min) ? min : ((val > max) ? max : val);
|
||||||
|
|||||||
@@ -40,6 +40,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <nuttx/config.h>
|
#include <nuttx/config.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
namespace math {
|
namespace math {
|
||||||
|
|
||||||
@@ -50,6 +51,8 @@ int __EXPORT min(int val1, int val2);
|
|||||||
|
|
||||||
unsigned __EXPORT min(unsigned val1, unsigned val2);
|
unsigned __EXPORT min(unsigned val1, unsigned val2);
|
||||||
|
|
||||||
|
uint64_t __EXPORT min(uint64_t val1, uint64_t val2);
|
||||||
|
|
||||||
double __EXPORT min(double val1, double val2);
|
double __EXPORT min(double val1, double val2);
|
||||||
|
|
||||||
float __EXPORT max(float val1, float val2);
|
float __EXPORT max(float val1, float val2);
|
||||||
@@ -58,6 +61,8 @@ int __EXPORT max(int val1, int val2);
|
|||||||
|
|
||||||
unsigned __EXPORT max(unsigned val1, unsigned val2);
|
unsigned __EXPORT max(unsigned val1, unsigned val2);
|
||||||
|
|
||||||
|
uint64_t __EXPORT max(uint64_t val1, uint64_t val2);
|
||||||
|
|
||||||
double __EXPORT max(double val1, double val2);
|
double __EXPORT max(double val1, double val2);
|
||||||
|
|
||||||
|
|
||||||
@@ -67,6 +72,8 @@ int __EXPORT constrain(int val, int min, int max);
|
|||||||
|
|
||||||
unsigned __EXPORT constrain(unsigned val, unsigned min, unsigned max);
|
unsigned __EXPORT constrain(unsigned val, unsigned min, unsigned max);
|
||||||
|
|
||||||
|
uint64_t __EXPORT constrain(uint64_t val, uint64_t min, uint64_t max);
|
||||||
|
|
||||||
double __EXPORT constrain(double val, double min, double max);
|
double __EXPORT constrain(double val, double min, double max);
|
||||||
|
|
||||||
float __EXPORT radians(float degrees);
|
float __EXPORT radians(float degrees);
|
||||||
|
|||||||
Reference in New Issue
Block a user