type_float.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 #ifndef glm_core_type_float
00030 #define glm_core_type_float
00031 
00032 #include "type_half.hpp"
00033 #include "setup.hpp"
00034 
00035 namespace glm
00036 {
00037 #ifdef GLM_USE_HALF_SCALAR
00038     typedef detail::half                lowp_float_t;
00039 #else//GLM_USE_HALF_SCALAR
00040     typedef float                               lowp_float_t;
00041 #endif//GLM_USE_HALF_SCALAR
00042     typedef float                               mediump_float_t;
00043     typedef double                              highp_float_t;
00044 
00047 
00053     typedef lowp_float_t                lowp_float;
00054     
00060     typedef mediump_float_t     mediump_float;
00061     
00067     typedef highp_float_t               highp_float;
00068 
00069 #if(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
00070         typedef mediump_float                           float_t;
00071 #elif(defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
00072         typedef highp_float                  float_t;
00073 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
00074         typedef mediump_float                           float_t;
00075 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && defined(GLM_PRECISION_LOWP_FLOAT))
00076         typedef lowp_float                                      float_t;
00077 #else
00078 #       error "GLM error: multiple default precision requested for floating-point types"
00079 #endif
00080 
00082 }//namespace glm
00083 
00084 #endif//glm_core_type_float