apibasemath.h File Reference

Detailed Description

Basic math definitions.

Classes

class  LIMIT< T >
 
class  LIMIT< Bool >
 
class  LIMIT< Int64 >
 
class  LIMIT< UInt64 >
 
class  LIMIT< Int32 >
 
class  LIMIT< UInt32 >
 
class  LIMIT< Int16 >
 
class  LIMIT< UInt16 >
 
class  LIMIT< Char >
 
class  LIMIT< UChar >
 
class  LIMIT< Float32 >
 
class  LIMIT< Float64 >
 
struct  Sum< X, Y... >
 
struct  Sum<>
 
struct  Or< T, X, Y... >
 
struct  Or< T >
 

Namespaces

 maxon
 

Macros

#define SIZEOF(...)
 
#define COORDINATESYSTEM_LEFT_HANDED
 

Functions

MAXON_ATTRIBUTE_FORCE_INLINE Float32 Clamp01 (Float32 a)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Clamp01 (Float64 a)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Sin (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Sin (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Cos (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Cos (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Tan (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Tan (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 ATan (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 ATan (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 ATan2 (Float32 valY, Float32 valX)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 ATan2 (Float64 valY, Float64 valX)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Exp (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Exp (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Exp2 (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Exp2 (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Ln (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Ln (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Log10 (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Log10 (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Log2 (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Log2 (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Sqrt (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Sqrt (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Floor (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Floor (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Ceil (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Ceil (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Round (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Round (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Pow (Float32 v1, Float32 v2)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Pow (Float64 v1, Float64 v2)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Sinh (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Sinh (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Cosh (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Cosh (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Tanh (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Tanh (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 FMod (Float32 v1, Float32 v2)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 FMod (Float64 v1, Float64 v2)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Abs (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Abs (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Inverse (Float32 f)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Inverse (Float64 f)
 
template<typename X >
constexpr MAXON_ATTRIBUTE_FORCE_INLINEAbs (X f)
 
template<typename X >
constexpr MAXON_ATTRIBUTE_FORCE_INLINEMin (X a, X b)
 
template<typename X >
constexpr MAXON_ATTRIBUTE_FORCE_INLINEMax (X a, X b)
 
template<typename X >
MAXON_ATTRIBUTE_FORCE_INLINE void Swap (X &a, X &b)
 
template<typename X >
MAXON_ATTRIBUTE_FORCE_INLINEClampValue (X value, X lowerLimit, X upperLimit)
 
template<typename X , typename Y >
MAXON_ATTRIBUTE_FORCE_INLINEBlend (const X &value1, const X &value2, Y blendValue)
 
template<typename X >
MAXON_ATTRIBUTE_FORCE_INLINESqr (X a, X b)
 
template<typename X >
MAXON_ATTRIBUTE_FORCE_INLINESqr (X a)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Gamma (Float32 value, Float32 gamma)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Gamma (Float64 value, Float64 gamma)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Si (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Si (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Sinc (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 Sinc (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 ASin (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 ASin (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 ACos (Float32 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 ACos (Float64 val)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 DegToRad (Float32 r)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 DegToRad (Float64 r)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float32 RadToDeg (Float32 r)
 
MAXON_ATTRIBUTE_FORCE_INLINE Float64 RadToDeg (Float64 r)
 
MAXON_ATTRIBUTE_FORCE_INLINE void SinCos (Float32 val, Float32 &sn, Float32 &cs)
 
MAXON_ATTRIBUTE_FORCE_INLINE void SinCos (Float64 val, Float64 &sn, Float64 &cs)
 
template<typename DEST >
MAXON_ATTRIBUTE_FORCE_INLINE DEST SafeConvert (Float64 src)
 
template<typename DEST >
MAXON_ATTRIBUTE_FORCE_INLINE DEST SafeConvert (Float32 src)
 
template<typename T >
MAXON_ATTRIBUTE_FORCE_INLINE void SetMax (T &a, const typename SFINAEHelper< T >::type &b)
 
template<typename T >
MAXON_ATTRIBUTE_FORCE_INLINE void SetMin (T &a, const typename SFINAEHelper< T >::type &b)
 
template<typename X >
MAXON_ATTRIBUTE_FORCE_INLINE Int Sign (X f)
 
template<typename T >
MAXON_ATTRIBUTE_FORCE_INLINEMod (T a, T b)
 
constexpr MAXON_ATTRIBUTE_FORCE_INLINE Bool IsPowerOfTwo (UInt32 x)
 
constexpr MAXON_ATTRIBUTE_FORCE_INLINE Bool IsPowerOfTwo (UInt64 x)
 

Variables

static constexpr Float32 MINVALUE_FLOAT32
 
static constexpr Float32 MAXVALUE_FLOAT32
 
static constexpr Float64 MINVALUE_FLOAT64
 
static constexpr Float64 MAXVALUE_FLOAT64
 
static constexpr Float32 MINVALUE_INT32_FLOAT32
 
static constexpr Float32 MAXVALUE_INT32_FLOAT32
 
static constexpr Float64 MINVALUE_INT64_FLOAT64
 
static constexpr Float64 MAXVALUE_INT64_FLOAT64
 
static constexpr Float32 MINRANGE_FLOAT32
 
static constexpr Float32 MAXRANGE_FLOAT32
 
static constexpr Float64 MINRANGE_FLOAT64
 
static constexpr Float64 MAXRANGE_FLOAT64
 
static constexpr Float MINVALUE_FLOAT
 
static constexpr Float MAXVALUE_FLOAT
 
static constexpr Float MINRANGE_FLOAT
 
static constexpr Float MAXRANGE_FLOAT
 
static constexpr Int NOTOK
 
static constexpr Float64 PI
 
static constexpr Float64 PI_INV
 
static constexpr Float64 PI2
 
static constexpr Float64 PI2_INV
 
static constexpr Float64 PI05
 
static constexpr Float64 PI05_INV
 
static constexpr Float64 SQRT2
 
static constexpr Float64 SQRT_PI2
 
static constexpr Float64 SQRT2_INV
 
static constexpr Float64 SQRT3
 
static constexpr Float64 LOG2