29 #ifndef glm_core_type_int 
   30 #define glm_core_type_int 
   34 #if GLM_HAS_EXTENDED_INTEGER_TYPE 
   41 #       if GLM_HAS_EXTENDED_INTEGER_TYPE 
   52 #               if(defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)) // C99 detected, 64 bit types available 
   55 #               elif(GLM_COMPILER & GLM_COMPILER_VC) 
   56                         typedef signed __int64                  sint64;
 
   57                         typedef unsigned __int64                
uint64;
 
   58 #               elif(GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_LLVM_GCC | GLM_COMPILER_CLANG)) 
   59                         __extension__ 
typedef signed long long          sint64;
 
   60                         __extension__ 
typedef unsigned long long        uint64;
 
   61 #               elif(GLM_COMPILER & GLM_COMPILER_BC) 
   64 #               else//unknown compiler 
   65                         typedef signed long     long            sint64;
 
   66                         typedef unsigned long long              uint64;
 
   69                 typedef signed char                                     int8;
 
   70                 typedef signed short                            int16;
 
   71                 typedef signed int                                      int32;
 
   74                 typedef unsigned char                           uint8;
 
   75                 typedef unsigned short                          uint16;
 
   76                 typedef unsigned int                            uint32;
 
   80         typedef signed int                                              lowp_int_t;
 
   81         typedef signed int                                              mediump_int_t;
 
   82         typedef signed int                                              highp_int_t;
 
   84         typedef unsigned int                                    lowp_uint_t;
 
   85         typedef unsigned int                                    mediump_uint_t;
 
   86         typedef unsigned int                                    highp_uint_t;
 
  144 #if(!defined(GLM_PRECISION_HIGHP_INT) && !defined(GLM_PRECISION_MEDIUMP_INT) && !defined(GLM_PRECISION_LOWP_INT)) 
  146 #elif(defined(GLM_PRECISION_HIGHP_INT) && !defined(GLM_PRECISION_MEDIUMP_INT) && !defined(GLM_PRECISION_LOWP_INT)) 
  148 #elif(!defined(GLM_PRECISION_HIGHP_INT) && defined(GLM_PRECISION_MEDIUMP_INT) && !defined(GLM_PRECISION_LOWP_INT)) 
  150 #elif(!defined(GLM_PRECISION_HIGHP_INT) && !defined(GLM_PRECISION_MEDIUMP_INT) && defined(GLM_PRECISION_LOWP_INT)) 
  153 #       error "GLM error: multiple default precision requested for signed interger types" 
  156 #if(!defined(GLM_PRECISION_HIGHP_UINT) && !defined(GLM_PRECISION_MEDIUMP_UINT) && !defined(GLM_PRECISION_LOWP_UINT)) 
  158 #elif(defined(GLM_PRECISION_HIGHP_UINT) && !defined(GLM_PRECISION_MEDIUMP_UINT) && !defined(GLM_PRECISION_LOWP_UINT)) 
  160 #elif(!defined(GLM_PRECISION_HIGHP_UINT) && defined(GLM_PRECISION_MEDIUMP_UINT) && !defined(GLM_PRECISION_LOWP_UINT)) 
  162 #elif(!defined(GLM_PRECISION_HIGHP_UINT) && !defined(GLM_PRECISION_MEDIUMP_UINT) && defined(GLM_PRECISION_LOWP_UINT)) 
  165 #       error "GLM error: multiple default precision requested for unsigned interger types" 
  177 #ifndef GLM_STATIC_ASSERT_NULL 
  178         GLM_STATIC_ASSERT(
sizeof(
glm::int8) == 1, 
"int8 size isn't 1 byte on this platform");
 
  179         GLM_STATIC_ASSERT(
sizeof(
glm::int16) == 2, 
"int16 size isn't 2 bytes on this platform");
 
  180         GLM_STATIC_ASSERT(
sizeof(
glm::int32) == 4, 
"int32 size isn't 4 bytes on this platform");
 
  181         GLM_STATIC_ASSERT(
sizeof(
glm::int64) == 8, 
"int64 size isn't 8 bytes on this platform");
 
  183         GLM_STATIC_ASSERT(
sizeof(
glm::uint8) == 1, 
"uint8 size isn't 1 byte on this platform");
 
  184         GLM_STATIC_ASSERT(
sizeof(
glm::uint16) == 2, 
"uint16 size isn't 2 bytes on this platform");
 
  185         GLM_STATIC_ASSERT(
sizeof(
glm::uint32) == 4, 
"uint32 size isn't 4 bytes on this platform");
 
  186         GLM_STATIC_ASSERT(
sizeof(
glm::uint64) == 8, 
"uint64 size isn't 8 bytes on this platform");
 
  187 #endif//GLM_STATIC_ASSERT_NULL 
  191 #endif//glm_core_type_int 
detail::highp_int_t highp_int
High precision signed integer. 
detail::int8 int8
8 bit signed integer type. 
detail::uint32 uint32
32 bit unsigned integer type. 
detail::int16 int16
16 bit signed integer type. 
detail::uint8 uint8_t
8 bit unsigned integer type. 
detail::int64 int64_t
64 bit signed integer type. 
detail::uint32 uint32_t
32 bit unsigned integer type. 
detail::int64 int64
64 bit signed integer type. 
unsigned int uint
Unsigned integer type. 
detail::uint64 uint64_t
64 bit unsigned integer type. 
detail::int16 int16_t
16 bit signed integer type. 
detail::uint64 uint64
64 bit unsigned integer type. 
detail::lowp_uint_t lowp_uint
Low precision unsigned integer. 
detail::int8 int8_t
8 bit signed integer type. 
detail::uint16 uint16_t
16 bit unsigned integer type. 
detail::int32 int32
32 bit signed integer type. 
detail::int32 int32_t
32 bit signed integer type. 
detail::mediump_uint_t mediump_uint
Medium precision unsigned integer. 
detail::uint8 uint8
8 bit unsigned integer type. 
detail::mediump_int_t mediump_int
Medium precision signed integer. 
detail::highp_uint_t highp_uint
High precision unsigned integer. 
detail::lowp_int_t lowp_int
Low precision signed integer. 
detail::uint16 uint16
16 bit unsigned integer type.