29         template <
typename genType>
 
   30         GLM_FUNC_DECL genType 
abs(genType x);
 
   32         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   33         GLM_FUNC_DECL vecType<T, P> 
abs(vecType<T, P> 
const & x);
 
   41         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   42         GLM_FUNC_DECL vecType<T, P> 
sign(vecType<T, P> 
const & x);
 
   50         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   51         GLM_FUNC_DECL vecType<T, P> 
floor(vecType<T, P> 
const & x);
 
   60         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   61         GLM_FUNC_DECL vecType<T, P> 
trunc(vecType<T, P> 
const & x);
 
   73         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   74         GLM_FUNC_DECL vecType<T, P> 
round(vecType<T, P> 
const & x);
 
   85         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   86         GLM_FUNC_DECL vecType<T, P> 
roundEven(vecType<T, P> 
const & x);
 
   95         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   96         GLM_FUNC_DECL vecType<T, P> 
ceil(vecType<T, P> 
const & x);
 
  104         template <
typename genType>
 
  105         GLM_FUNC_DECL genType 
fract(genType x);
 
  107         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  108         GLM_FUNC_DECL vecType<T, P> 
fract(vecType<T, P> 
const & x);
 
  117         template <
typename genType>
 
  118         GLM_FUNC_DECL genType 
mod(genType x, genType y);
 
  120         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  121         GLM_FUNC_DECL vecType<T, P> 
mod(vecType<T, P> 
const & x, T y);
 
  123         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  124         GLM_FUNC_DECL vecType<T, P> 
mod(vecType<T, P> 
const & x, vecType<T, P> 
const & y);
 
  135         template <
typename genType>
 
  136         GLM_FUNC_DECL genType 
modf(genType x, genType & i);
 
  144         template <
typename genType>
 
  145         GLM_FUNC_DECL genType 
min(genType x, genType y);
 
  147         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  148         GLM_FUNC_DECL vecType<T, P> 
min(vecType<T, P> 
const & x, T y);
 
  150         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  151         GLM_FUNC_DECL vecType<T, P> 
min(vecType<T, P> 
const & x, vecType<T, P> 
const & y);
 
  159         template <
typename genType>
 
  160         GLM_FUNC_DECL genType 
max(genType x, genType y);
 
  162         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  163         GLM_FUNC_DECL vecType<T, P> 
max(vecType<T, P> 
const & x, T y);
 
  165         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  166         GLM_FUNC_DECL vecType<T, P> 
max(vecType<T, P> 
const & x, vecType<T, P> 
const & y);
 
  175         template <
typename genType>
 
  176         GLM_FUNC_DECL genType 
clamp(genType x, genType minVal, genType maxVal);
 
  178         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  179         GLM_FUNC_DECL vecType<T, P> 
clamp(vecType<T, P> 
const & x, T minVal, T maxVal);
 
  181         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  182         GLM_FUNC_DECL vecType<T, P> 
clamp(vecType<T, P> 
const & x, vecType<T, P> 
const & minVal, vecType<T, P> 
const & maxVal);
 
  226         template <
typename T, 
typename U, precision P, 
template <
typename, precision> 
class vecType>
 
  227         GLM_FUNC_DECL vecType<T, P> 
mix(vecType<T, P> 
const & x, vecType<T, P> 
const & y, vecType<U, P> 
const & a);
 
  229         template <
typename T, 
typename U, precision P, 
template <
typename, precision> 
class vecType>
 
  230         GLM_FUNC_DECL vecType<T, P> 
mix(vecType<T, P> 
const & x, vecType<T, P> 
const & y, U a);
 
  232         template <
typename genTypeT, 
typename genTypeU>
 
  233         GLM_FUNC_DECL genTypeT 
mix(genTypeT x, genTypeT y, genTypeU a);
 
  239         template <
typename genType>
 
  240         GLM_FUNC_DECL genType 
step(genType edge, genType x);
 
  246         template <
template <
typename, precision> 
class vecType, 
typename T, precision P>
 
  247         GLM_FUNC_DECL vecType<T, P> 
step(T edge, vecType<T, P> 
const & x);
 
  253         template <
template <
typename, precision> 
class vecType, 
typename T, precision P>
 
  254         GLM_FUNC_DECL vecType<T, P> 
step(vecType<T, P> 
const & edge, vecType<T, P> 
const & x);
 
  270         template <
typename genType>
 
  271         GLM_FUNC_DECL genType 
smoothstep(genType edge0, genType edge1, genType x);
 
  273         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  274         GLM_FUNC_DECL vecType<T, P> 
smoothstep(T edge0, T edge1, vecType<T, P> 
const & x);
 
  276         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  277         GLM_FUNC_DECL vecType<T, P> 
smoothstep(vecType<T, P> 
const & edge0, vecType<T, P> 
const & edge1, vecType<T, P> 
const & x);
 
  291         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  292         GLM_FUNC_DECL vecType<bool, P> 
isnan(vecType<T, P> 
const & x);
 
  304         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  305         GLM_FUNC_DECL vecType<bool, P> 
isinf(vecType<T, P> 
const & x);
 
  321         template <
template <
typename, precision> 
class vecType, precision P>
 
  322         GLM_FUNC_DECL vecType<int, P> 
floatBitsToInt(vecType<float, P> 
const & v);
 
  338         template <
template <
typename, precision> 
class vecType, precision P>
 
  339         GLM_FUNC_DECL vecType<uint, P> 
floatBitsToUint(vecType<float, P> 
const & v);
 
  359         template <
template <
typename, precision> 
class vecType, precision P>
 
  360         GLM_FUNC_DECL vecType<float, P> 
intBitsToFloat(vecType<int, P> 
const & v);
 
  380         template <
template <
typename, precision> 
class vecType, precision P>
 
  381         GLM_FUNC_DECL vecType<float, P> 
uintBitsToFloat(vecType<uint, P> 
const & v);
 
  389         template <
typename genType>
 
  390         GLM_FUNC_DECL genType 
fma(genType 
const & a, genType 
const & b, genType 
const & c);
 
  406         template <
typename genType, 
typename genIType>
 
  407         GLM_FUNC_DECL genType 
frexp(genType 
const & x, genIType & 
exp);
 
  420         template <
typename genType, 
typename genIType>
 
  421         GLM_FUNC_DECL genType 
ldexp(genType 
const & x, genIType 
const & 
exp);
 
  426 #include "func_common.inl" 
GLM_FUNC_DECL genType frexp(genType const &x, genIType &exp)
Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two...
GLM_FUNC_DECL vecType< uint, P > floatBitsToUint(vecType< float, P > const &v)
Returns a unsigned integer value representing the encoding of a floating-point value. 
GLM_FUNC_DECL vecType< T, P > exp(vecType< T, P > const &v)
Returns the natural exponentiation of x, i.e., e^x. 
unsigned int uint
Unsigned integer type. 
GLM_FUNC_DECL vecType< T, P > step(vecType< T, P > const &edge, vecType< T, P > const &x)
Returns 0.0 if x < edge, otherwise it returns 1.0. 
GLM_FUNC_DECL genType fma(genType const &a, genType const &b, genType const &c)
Computes and returns a * b + c. 
GLM_FUNC_DECL vecType< bool, P > isinf(vecType< T, P > const &x)
Returns true if x holds a positive infinity or negative infinity representation in the underlying imp...
GLM_FUNC_DECL vecType< float, P > uintBitsToFloat(vecType< uint, P > const &v)
Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value...
GLM_FUNC_DECL vecType< T, P > floor(vecType< T, P > const &x)
Returns a value equal to the nearest integer that is less then or equal to x. 
GLM_FUNC_DECL vecType< int, P > floatBitsToInt(vecType< float, P > const &v)
Returns a signed integer value representing the encoding of a floating-point value. 
GLM_FUNC_DECL genType min(genType x, genType y)
Returns y if y < x; otherwise, it returns x. 
GLM_FUNC_DECL 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...
GLM_FUNC_DECL vecType< float, P > intBitsToFloat(vecType< int, P > const &v)
Returns a floating-point value corresponding to a signed integer encoding of a floating-point value...
GLM_FUNC_DECL vecType< T, P > sign(vecType< T, P > const &x)
Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0. 
GLM_FUNC_DECL vecType< T, P > ceil(vecType< T, P > const &x)
Returns a value equal to the nearest integer that is greater than or equal to x. 
GLM_FUNC_DECL genType fract(genType x)
Return x - floor(x). 
GLM_FUNC_DECL genType ldexp(genType const &x, genIType const &exp)
Builds a floating-point number from x and the corresponding integral exponent of two in exp...
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...
GLM_FUNC_DECL vecType< T, P > round(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x. 
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...
GLM_FUNC_DECL vecType< T, P > mix(vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...
GLM_FUNC_DECL vecType< T, P > mod(vecType< T, P > const &x, vecType< T, P > const &y)
Modulus. 
GLM_FUNC_DECL vecType< bool, P > isnan(vecType< T, P > const &x)
Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of...
GLM_FUNC_DECL genType max(genType x, genType y)
Returns y if x < y; otherwise, it returns x. 
GLM_FUNC_DECL vecType< T, P > trunc(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolut...
GLM_FUNC_DECL genType abs(genType x)
Returns x if x >= 0; otherwise, it returns -x. 
GLM_FUNC_DECL vecType< T, P > roundEven(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x.