compatibility.hpp
Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031 
00032 
00033 
00034 
00035 
00036 
00037 
00038 
00039 #pragma once
00040 
00041 // Dependency:
00042 #include "../glm.hpp"
00043 #include "../gtc/quaternion.hpp"
00044 
00045 #if(defined(GLM_MESSAGES) && !defined(GLM_EXT_INCLUDED))
00046 #       pragma message("GLM: GLM_GTX_compatibility extension included")
00047 #endif
00048 
00049 #if(GLM_COMPILER & GLM_COMPILER_VC)
00050 #       include <cfloat>
00051 #elif(GLM_COMPILER & GLM_COMPILER_GCC)
00052 #       include <cmath>
00053 #       if(GLM_PLATFORM & GLM_PLATFORM_ANDROID)
00054 #               undef isfinite
00055 #       endif
00056 #endif//GLM_COMPILER
00057 
00058 namespace glm
00059 {
00062 
00063         template <typename T> GLM_FUNC_QUALIFIER T lerp(T x, T y, T a){return mix(x, y, a);}                                                                                                                                                                    
00064         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec2<T, P> lerp(const detail::tvec2<T, P>& x, const detail::tvec2<T, P>& y, T a){return mix(x, y, a);}                                                   
00065 
00066         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec3<T, P> lerp(const detail::tvec3<T, P>& x, const detail::tvec3<T, P>& y, T a){return mix(x, y, a);}                                                   
00067         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec4<T, P> lerp(const detail::tvec4<T, P>& x, const detail::tvec4<T, P>& y, T a){return mix(x, y, a);}                                                   
00068         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec2<T, P> lerp(const detail::tvec2<T, P>& x, const detail::tvec2<T, P>& y, const detail::tvec2<T, P>& a){return mix(x, y, a);}  
00069         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec3<T, P> lerp(const detail::tvec3<T, P>& x, const detail::tvec3<T, P>& y, const detail::tvec3<T, P>& a){return mix(x, y, a);}  
00070         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec4<T, P> lerp(const detail::tvec4<T, P>& x, const detail::tvec4<T, P>& y, const detail::tvec4<T, P>& a){return mix(x, y, a);}  
00071 
00072         template <typename T, precision P> GLM_FUNC_QUALIFIER T slerp(detail::tquat<T, P> const & x, detail::tquat<T, P> const & y, T const & a){return mix(x, y, a);} 
00073 
00074         template <typename T, precision P> GLM_FUNC_QUALIFIER T saturate(T x){return clamp(x, T(0), T(1));}                                                                                                             
00075         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec2<T, P> saturate(const detail::tvec2<T, P>& x){return clamp(x, T(0), T(1));}                                  
00076         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec3<T, P> saturate(const detail::tvec3<T, P>& x){return clamp(x, T(0), T(1));}                                  
00077         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec4<T, P> saturate(const detail::tvec4<T, P>& x){return clamp(x, T(0), T(1));}                                  
00078 
00079         template <typename T, precision P> GLM_FUNC_QUALIFIER T atan2(T x, T y){return atan(x, y);}                                                                                                                             
00080         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec2<T, P> atan2(const detail::tvec2<T, P>& x, const detail::tvec2<T, P>& y){return atan(x, y);} 
00081         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec3<T, P> atan2(const detail::tvec3<T, P>& x, const detail::tvec3<T, P>& y){return atan(x, y);} 
00082         template <typename T, precision P> GLM_FUNC_QUALIFIER detail::tvec4<T, P> atan2(const detail::tvec4<T, P>& x, const detail::tvec4<T, P>& y){return atan(x, y);} 
00083 
00084         template <typename genType> GLM_FUNC_DECL bool isfinite(genType const & x);                                                                                     
00085         template <typename T, precision P> GLM_FUNC_DECL detail::tvec2<bool, P> isfinite(const detail::tvec2<T, P>& x);                         
00086         template <typename T, precision P> GLM_FUNC_DECL detail::tvec3<bool, P> isfinite(const detail::tvec3<T, P>& x);                         
00087         template <typename T, precision P> GLM_FUNC_DECL detail::tvec4<bool, P> isfinite(const detail::tvec4<T, P>& x);                         
00088 
00089         typedef bool                                            bool1;                  
00090         typedef detail::tvec2<bool, highp>                      bool2;                  
00091         typedef detail::tvec3<bool, highp>                      bool3;                  
00092         typedef detail::tvec4<bool, highp>                      bool4;                  
00093 
00094         typedef bool                                            bool1x1;                
00095         typedef detail::tmat2x2<bool, highp>            bool2x2;                
00096         typedef detail::tmat2x3<bool, highp>            bool2x3;                
00097         typedef detail::tmat2x4<bool, highp>            bool2x4;                
00098         typedef detail::tmat3x2<bool, highp>            bool3x2;                
00099         typedef detail::tmat3x3<bool, highp>            bool3x3;                
00100         typedef detail::tmat3x4<bool, highp>            bool3x4;                
00101         typedef detail::tmat4x2<bool, highp>            bool4x2;                
00102         typedef detail::tmat4x3<bool, highp>            bool4x3;                
00103         typedef detail::tmat4x4<bool, highp>            bool4x4;                
00104 
00105         typedef int                                                     int1;                   
00106         typedef detail::tvec2<int, highp>                       int2;                   
00107         typedef detail::tvec3<int, highp>                       int3;                   
00108         typedef detail::tvec4<int, highp>                       int4;                   
00109 
00110         typedef int                                                     int1x1;                 
00111         typedef detail::tmat2x2<int, highp>             int2x2;                 
00112         typedef detail::tmat2x3<int, highp>             int2x3;                 
00113         typedef detail::tmat2x4<int, highp>             int2x4;                 
00114         typedef detail::tmat3x2<int, highp>             int3x2;                 
00115         typedef detail::tmat3x3<int, highp>             int3x3;                 
00116         typedef detail::tmat3x4<int, highp>             int3x4;                 
00117         typedef detail::tmat4x2<int, highp>             int4x2;                 
00118         typedef detail::tmat4x3<int, highp>             int4x3;                 
00119         typedef detail::tmat4x4<int, highp>             int4x4;                 
00120 
00121         typedef float                                           float1;                 
00122         typedef detail::tvec2<float, highp>             float2;                 
00123         typedef detail::tvec3<float, highp>             float3;                 
00124         typedef detail::tvec4<float, highp>             float4;                 
00125 
00126         typedef float                                           float1x1;               
00127         typedef detail::tmat2x2<float, highp>           float2x2;               
00128         typedef detail::tmat2x3<float, highp>           float2x3;               
00129         typedef detail::tmat2x4<float, highp>           float2x4;               
00130         typedef detail::tmat3x2<float, highp>           float3x2;               
00131         typedef detail::tmat3x3<float, highp>           float3x3;               
00132         typedef detail::tmat3x4<float, highp>           float3x4;               
00133         typedef detail::tmat4x2<float, highp>           float4x2;               
00134         typedef detail::tmat4x3<float, highp>           float4x3;               
00135         typedef detail::tmat4x4<float, highp>           float4x4;               
00136 
00137         typedef double                                          double1;                
00138         typedef detail::tvec2<double, highp>            double2;                
00139         typedef detail::tvec3<double, highp>            double3;                
00140         typedef detail::tvec4<double, highp>            double4;                
00141 
00142         typedef double                                          double1x1;              
00143         typedef detail::tmat2x2<double, highp>          double2x2;              
00144         typedef detail::tmat2x3<double, highp>          double2x3;              
00145         typedef detail::tmat2x4<double, highp>          double2x4;              
00146         typedef detail::tmat3x2<double, highp>          double3x2;              
00147         typedef detail::tmat3x3<double, highp>          double3x3;              
00148         typedef detail::tmat3x4<double, highp>          double3x4;              
00149         typedef detail::tmat4x2<double, highp>          double4x2;              
00150         typedef detail::tmat4x3<double, highp>          double4x3;              
00151         typedef detail::tmat4x4<double, highp>          double4x4;              
00152 
00154 }//namespace glm
00155 
00156 #include "compatibility.inl"


rtabmap
Author(s): Mathieu Labbe
autogenerated on Sat Jul 23 2016 11:44:15