10 template<length_t L,
typename T, qualifier Q,
bool isFloat = true>
19 template<length_t L,
typename T, qualifier Q>
32 GLM_STATIC_ASSERT(std::numeric_limits<T>::is_iec559,
"'isdenormal' only accept floating-point inputs");
35 return std::fpclassify(x) == FP_SUBNORMAL;
41 template<
typename T, qualifier Q>
42 GLM_FUNC_QUALIFIER
typename vec<1, T, Q>::bool_type
isdenormal
47 GLM_STATIC_ASSERT(std::numeric_limits<T>::is_iec559,
"'isdenormal' only accept floating-point inputs");
49 return typename vec<1, T, Q>::bool_type(
53 template<
typename T, qualifier Q>
54 GLM_FUNC_QUALIFIER
typename vec<2, T, Q>::bool_type
isdenormal
59 GLM_STATIC_ASSERT(std::numeric_limits<T>::is_iec559,
"'isdenormal' only accept floating-point inputs");
61 return typename vec<2, T, Q>::bool_type(
66 template<
typename T, qualifier Q>
67 GLM_FUNC_QUALIFIER
typename vec<3, T, Q>::bool_type
isdenormal
72 GLM_STATIC_ASSERT(std::numeric_limits<T>::is_iec559,
"'isdenormal' only accept floating-point inputs");
74 return typename vec<3, T, Q>::bool_type(
80 template<
typename T, qualifier Q>
81 GLM_FUNC_QUALIFIER
typename vec<4, T, Q>::bool_type
isdenormal
86 GLM_STATIC_ASSERT(std::numeric_limits<T>::is_iec559,
"'isdenormal' only accept floating-point inputs");
88 return typename vec<4, T, Q>::bool_type(
96 template<
typename genType>
97 GLM_FUNC_QUALIFIER genType
fmod(genType x, genType y)
99 return fmod(vec<1, genType>(x), y).x;
102 template<length_t L,
typename T, qualifier Q>
103 GLM_FUNC_QUALIFIER vec<L, T, Q>
fmod(vec<L, T, Q>
const& x, T y)
105 return detail::compute_fmod<L, T, Q, std::numeric_limits<T>::is_iec559>::call(x, vec<L, T, Q>(y));
108 template<length_t L,
typename T, qualifier Q>
109 GLM_FUNC_QUALIFIER vec<L, T, Q>
fmod(vec<L, T, Q>
const& x, vec<L, T, Q>
const& y)
111 return detail::compute_fmod<L, T, Q, std::numeric_limits<T>::is_iec559>::call(x, y);
114 template <length_t L,
typename T, qualifier Q>
115 GLM_FUNC_QUALIFIER
vec<L, bool, Q> openBounded(
vec<L, T, Q> const& Value,
vec<L, T, Q> const& Min,
vec<L, T, Q> const& Max)
120 template <length_t L,
typename T, qualifier Q>
121 GLM_FUNC_QUALIFIER
vec<L, bool, Q> closeBounded(
vec<L, T, Q> const& Value,
vec<L, T, Q> const& Min,
vec<L, T, Q> const& Max)
GLM_FUNC_QUALIFIER GLM_CONSTEXPR vec< L, bool, Q > greaterThanEqual(vec< L, T, Q > const &x, vec< L, T, Q > const &y)
Definition func_vector_relational.inl:31
GLM_FUNC_QUALIFIER GLM_CONSTEXPR vec< L, bool, Q > greaterThan(vec< L, T, Q > const &x, vec< L, T, Q > const &y)
Definition func_vector_relational.inl:22
GLM_FUNC_QUALIFIER GLM_CONSTEXPR vec< L, bool, Q > lessThanEqual(vec< L, T, Q > const &x, vec< L, T, Q > const &y)
Definition func_vector_relational.inl:13
GLM_FUNC_QUALIFIER GLM_CONSTEXPR vec< L, bool, Q > lessThan(vec< L, T, Q > const &x, vec< L, T, Q > const &y)
Definition func_vector_relational.inl:4
GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon()
Return the epsilon constant for floating point types.
Definition scalar_constants.inl:6
GLM_FUNC_DECL vec< L, bool, Q > epsilonNotEqual(vec< L, T, Q > const &x, vec< L, T, Q > const &y, T const &epsilon)
Definition epsilon.inl:56
GLM_FUNC_DECL vec< L, T, Q > fmod(vec< L, T, Q > const &v)
GLM_FUNC_DECL vec< L, bool, Q > openBounded(vec< L, T, Q > const &Value, vec< L, T, Q > const &Min, vec< L, T, Q > const &Max)
Definition common.inl:115
GLM_FUNC_DECL genType::bool_type isdenormal(genType const &x)
GLM_FUNC_DECL vec< L, bool, Q > closeBounded(vec< L, T, Q > const &Value, vec< L, T, Q > const &Min, vec< L, T, Q > const &Max)
Definition common.inl:121
detail namespace with internal helper functions
Definition json.h:249
Core features
Definition common.hpp:21
Definition _vectorize.hpp:46
Definition qualifier.hpp:35