- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List

# type_int.hpp

    00001
    00002 // OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
    00004 // Created : 2008-08-22
    00005 // Updated : 2008-09-17
    00006 // Licence : This source is under MIT License
    00007 // File    : glm/core/type_int.hpp
    00009
    00010 #ifndef glm_core_type_int
    00011 #define glm_core_type_int
    00012
    00013 #include "setup.hpp"
    00014 #include "_detail.hpp"
    00015
    00016 namespace glm
    00017 {
    00018         namespace detail
    00019         {
    00020                 typedef signed short                    lowp_int_t;
    00021                 typedef signed int                              mediump_int_t;
    00022                 typedef sint64                                  highp_int_t;
    00023
    00024                 typedef unsigned short                  lowp_uint_t;
    00025                 typedef unsigned int                    mediump_uint_t;
    00026                 typedef uint64                                  highp_uint_t;
    00027
    00028                 GLM_DETAIL_IS_INT(signed char);
    00029                 GLM_DETAIL_IS_INT(signed short);
    00030                 GLM_DETAIL_IS_INT(signed int);
    00031                 GLM_DETAIL_IS_INT(signed long);
    00032                 GLM_DETAIL_IS_INT(highp_int_t);
    00033
    00034                 GLM_DETAIL_IS_UINT(unsigned char);
    00035                 GLM_DETAIL_IS_UINT(unsigned short);
    00036                 GLM_DETAIL_IS_UINT(unsigned int);
    00037                 GLM_DETAIL_IS_UINT(unsigned long);
    00038                 GLM_DETAIL_IS_UINT(highp_uint_t);
    00039         }
    00040         //namespace detail
    00041
    00042         namespace core{
    00043         namespace type{
    00044
    00046         namespace precision
    00047         {
    00052                 typedef detail::lowp_int_t                              lowp_int;
    00057                 typedef detail::mediump_int_t                   mediump_int;
    00062                 typedef detail::highp_int_t                             highp_int;
    00063
    00068                 typedef detail::lowp_uint_t                             lowp_uint;
    00073                 typedef detail::mediump_uint_t                  mediump_uint;
    00078                 typedef detail::highp_uint_t                    highp_uint;
    00079         }
    00080         //namespace precision
    00081
    00082 #ifndef GLM_PRECISION
    00083         typedef precision::mediump_int                          int_t;
    00084 #elif(GLM_PRECISION & GLM_PRECISION_HIGHP_INT)
    00085         typedef precision::highp_int                            int_t;
    00086 #elif(GLM_PRECISION & GLM_PRECISION_MEDIUMP_INT)
    00087         typedef precision::mediump_int                          int_t;
    00088 #elif(GLM_PRECISION & GLM_PRECISION_LOWP_INT)
    00089         typedef precision::lowp_int                                     int_t;
    00090 #else
    00091         typedef mediump_int                                                     int_t;
    00092 #       pragma message("GLM message: Precisson undefined for signed integer number.");
    00093 #endif//GLM_PRECISION
    00094
    00095 #ifndef GLM_PRECISION
    00096         typedef precision::mediump_uint                         uint_t;
    00097 #elif(GLM_PRECISION & GLM_PRECISION_HIGHP_UINT)
    00098         typedef precision::highp_uint                           uint_t;
    00099 #elif(GLM_PRECISION & GLM_PRECISION_MEDIUMP_UINT)
    00100         typedef precision::mediump_uint                         uint_t;
    00101 #elif(GLM_PRECISION & GLM_PRECISION_LOWP_UINT)
    00102         typedef precision::lowp_uint                            uint_t;
    00103 #else
    00104         typedef precision::mediump_uint                         uint_t;
    00105 #       pragma message("GLM message: Precisson undefined for unsigned integer number.");
    00106 #endif//GLM_PRECISION
    00107
    00110         typedef uint_t                                                          uint;
    00111
    00112         }//namespace type
    00113         }//namespace core
    00114 }//namespace glm
    00115
    00116 #endif//glm_core_type_int