base
Float.hpp
Go to the documentation of this file.
1 #ifndef BASE_FLOAT_H
2 #define BASE_FLOAT_H
3 
4 #include <cmath>
5 #include <limits>
6 
7 namespace base {
8  template<typename T> T NaN() { return std::numeric_limits<T>::quiet_NaN(); }
9  template<typename T> bool isNaN(T value) { return std::isnan(value); }
10  template<typename T> T unset() { return std::numeric_limits<T>::quiet_NaN(); }
11  template<typename T> bool isUnset(T value) { return std::isnan(value); }
12  template<typename T> T unknown() { return std::numeric_limits<T>::quiet_NaN(); }
13  template<typename T> bool isUnknown(T value) { return std::isnan(value); }
14  template<typename T> T infinity() { return std::numeric_limits<T>::infinity(); }
15  template<typename T> bool isInfinity(T value) { return std::isinf(value); }
16 }
17 
18 #endif
T NaN()
Definition: Float.hpp:8
bool isUnknown(T value)
Definition: Float.hpp:13
bool isInfinity(T value)
Definition: Float.hpp:15
T unknown()
Definition: Float.hpp:12
T unset()
Definition: Float.hpp:10
Definition: LinearAngular6DCommand.hpp:8
T infinity()
Definition: Float.hpp:14
bool isUnset(T value)
Definition: Float.hpp:11
bool isNaN(T value)
Definition: Float.hpp:9