17 #include "detail/qualifier.hpp" 18 #include "detail/_fixes.hpp" 31 template<
typename genType>
32 GLM_FUNC_DECL GLM_CONSTEXPR genType
abs(genType x);
42 template<length_t L,
typename T, qualifier Q>
53 template<length_t L,
typename T, qualifier Q>
64 template<length_t L,
typename T, qualifier Q>
76 template<length_t L,
typename T, qualifier Q>
91 template<length_t L,
typename T, qualifier Q>
105 template<length_t L,
typename T, qualifier Q>
117 template<length_t L,
typename T, qualifier Q>
126 template<
typename genType>
127 GLM_FUNC_DECL genType
fract(genType x);
137 template<length_t L,
typename T, qualifier Q>
140 template<
typename genType>
141 GLM_FUNC_DECL genType mod(genType x, genType y);
143 template<length_t L,
typename T, qualifier Q>
155 template<length_t L,
typename T, qualifier Q>
167 template<
typename genType>
168 GLM_FUNC_DECL genType
modf(genType x, genType& i);
176 template<
typename genType>
177 GLM_FUNC_DECL GLM_CONSTEXPR genType
min(genType x, genType y);
187 template<length_t L,
typename T, qualifier Q>
198 template<length_t L,
typename T, qualifier Q>
207 template<
typename genType>
208 GLM_FUNC_DECL GLM_CONSTEXPR genType
max(genType x, genType y);
218 template<length_t L,
typename T, qualifier Q>
229 template<length_t L,
typename T, qualifier Q>
239 template<
typename genType>
240 GLM_FUNC_DECL GLM_CONSTEXPR genType
clamp(genType x, genType minVal, genType maxVal);
251 template<length_t L,
typename T, qualifier Q>
263 template<length_t L,
typename T, qualifier Q>
264 GLM_FUNC_DECL GLM_CONSTEXPR
vec<L, T, Q> clamp(
vec<L, T, Q> const& x,
vec<L, T, Q> const& minVal,
vec<L, T, Q> const& maxVal);
308 template<
typename genTypeT,
typename genTypeU>
309 GLM_FUNC_DECL genTypeT
mix(genTypeT x, genTypeT y, genTypeU a);
311 template<length_t L,
typename T,
typename U, qualifier Q>
312 GLM_FUNC_DECL
vec<L, T, Q> mix(
vec<L, T, Q> const& x,
vec<L, T, Q> const& y,
vec<L, U, Q> const& a);
314 template<length_t L,
typename T,
typename U, qualifier Q>
321 template<
typename genType>
322 GLM_FUNC_DECL genType
step(genType edge, genType x);
332 template<length_t L,
typename T, qualifier Q>
343 template<length_t L,
typename T, qualifier Q>
360 template<
typename genType>
361 GLM_FUNC_DECL genType
smoothstep(genType edge0, genType edge1, genType x);
363 template<length_t L,
typename T, qualifier Q>
366 template<length_t L,
typename T, qualifier Q>
367 GLM_FUNC_DECL
vec<L, T, Q> smoothstep(
vec<L, T, Q> const& edge0,
vec<L, T, Q> const& edge1,
vec<L, T, Q> const& x);
383 template<length_t L,
typename T, qualifier Q>
398 template<length_t L,
typename T, qualifier Q>
418 template<length_t L, qualifier Q>
438 template<length_t L, qualifier Q>
462 template<length_t L, qualifier Q>
486 template<length_t L, qualifier Q>
495 template<
typename genType>
496 GLM_FUNC_DECL genType
fma(genType
const& a, genType
const& b, genType
const& c);
512 template<
typename genType>
513 GLM_FUNC_DECL genType
frexp(genType x,
int&
exp);
515 template<length_t L,
typename T, qualifier Q>
529 template<
typename genType>
530 GLM_FUNC_DECL genType
ldexp(genType
const& x,
int const& exp);
532 template<length_t L,
typename T, qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > trunc(vec< L, T, Q > const &x)
Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolut...
Definition: func_common.inl:314
Definition: qualifier.hpp:35
GLM_FUNC_DECL GLM_CONSTEXPR genType abs(genType x)
Returns x if x >= 0; otherwise, it returns -x.
GLM_FUNC_DECL GLM_CONSTEXPR genType max(genType x, genType y)
Returns y if x < y; otherwise, it returns x.
Definition: func_common.inl:25
Core features
Definition: common.hpp:20
GLM_FUNC_DECL genType smoothstep(genType edge0, genType edge1, genType x)
Returns 0.0 if x <= edge0 and 1.0 if x >= edge1 and performs smooth Hermite interpolation between 0 a...
Definition: func_common.inl:564
GLM_FUNC_DECL GLM_CONSTEXPR genType clamp(genType x, genType minVal, genType maxVal)
Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...
Definition: func_common.inl:505
GLM_FUNC_DECL genType ldexp(genType const &x, int const &exp)
Builds a floating-point number from x and the corresponding integral exponent of two in exp...
Definition: func_common.inl:771
GLM_FUNC_DECL genType step(genType edge, genType x)
Returns 0.0 if x < edge, otherwise it returns 1.0 for each component of a genType.
Definition: func_common.inl:545
GLM_FUNC_DECL vec< L, T, Q > sign(vec< L, T, Q > const &x)
Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0.
Definition: func_common.inl:295
GLM_FUNC_DECL vec< L, T, Q > roundEven(vec< L, T, Q > const &x)
Returns a value equal to the nearest integer to x.
Definition: func_common.inl:371
GLM_FUNC_DECL GLM_CONSTEXPR genType min(genType x, genType y)
Returns y if y < x; otherwise, it returns x.
Definition: func_common.inl:17
GLM_FUNC_DECL int floatBitsToInt(float const &v)
Returns a signed integer value representing the encoding of a floating-point value.
Definition: func_common.inl:665
GLM_FUNC_DECL genType frexp(genType x, int &exp)
Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two...
Definition: func_common.inl:752
GLM_FUNC_DECL vec< L, T, Q > round(vec< L, T, Q > const &x)
Returns a value equal to the nearest integer to x.
Definition: func_common.inl:321
GLM_FUNC_DECL vec< L, T, Q > ceil(vec< L, T, Q > const &x)
Returns a value equal to the nearest integer that is greater than or equal to x.
Definition: func_common.inl:380
GLM_FUNC_DECL float uintBitsToFloat(uint const &v)
Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value...
Definition: func_common.inl:722
GLM_FUNC_DECL genTypeT mix(genTypeT x, genTypeT y, genTypeU a)
If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...
Definition: func_common.inl:526
GLM_FUNC_DECL vec< L, bool, Q > isnan(vec< L, T, Q > const &x)
Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of...
Definition: func_common.inl:613
GLM_FUNC_DECL float intBitsToFloat(int const &v)
Returns a floating-point value corresponding to a signed integer encoding of a floating-point value...
Definition: func_common.inl:703
GLM_FUNC_QUALIFIER vec< L, T, Q > exp(vec< L, T, Q > const &x)
Returns the natural exponentiation of x, i.e., e^x.
Definition: func_exponential.inl:80
GLM_FUNC_DECL genType modf(genType x, genType &i)
Returns the fractional part of x and sets i to the integer part (as a whole number floating point val...
Definition: func_common.inl:427
GLM_FUNC_DECL vec< L, bool, Q > isinf(vec< L, T, Q > const &x)
Returns true if x holds a positive infinity or negative infinity representation in the underlying imp...
Definition: func_common.inl:655
GLM_FUNC_DECL vec< L, T, Q > floor(vec< L, T, Q > const &x)
Returns a value equal to the nearest integer that is less then or equal to x.
Definition: func_common.inl:307
GLM_FUNC_DECL uint floatBitsToUint(float const &v)
Returns a unsigned integer value representing the encoding of a floating-point value.
Definition: func_common.inl:684
GLM_FUNC_DECL genType fma(genType const &a, genType const &b, genType const &c)
Computes and returns a * b + c.
Definition: func_common.inl:745
GLM_FUNC_DECL genType fract(genType x)
Return x - floor(x).
Definition: func_common.inl:388