Cinder  0.9.1
Namespaces | Macros | Typedefs | Enumerations | Functions
setup.hpp File Reference
#include <cassert>
#include <cstddef>

Namespaces

 glm
 
 glm::detail
 

Macros

#define GLM_VERSION   96
 
#define GLM_VERSION_MAJOR   0
 
#define GLM_VERSION_MINOR   9
 
#define GLM_VERSION_PATCH   6
 
#define GLM_VERSION_REVISION   3
 
#define GLM_PLATFORM_UNKNOWN   0x00000000
 
#define GLM_PLATFORM_WINDOWS   0x00010000
 
#define GLM_PLATFORM_LINUX   0x00020000
 
#define GLM_PLATFORM_APPLE   0x00040000
 
#define GLM_PLATFORM_ANDROID   0x00100000
 
#define GLM_PLATFORM_CHROME_NACL   0x00200000
 
#define GLM_PLATFORM_UNIX   0x00400000
 
#define GLM_PLATFORM_QNXNTO   0x00800000
 
#define GLM_PLATFORM_WINCE   0x01000000
 
#define GLM_PLATFORM   GLM_PLATFORM_UNKNOWN
 
#define GLM_COMPILER_UNKNOWN   0x00000000
 
#define GLM_COMPILER_INTEL   0x00100000
 
#define GLM_COMPILER_INTEL12   0x00100010
 
#define GLM_COMPILER_INTEL12_1   0x00100020
 
#define GLM_COMPILER_INTEL13   0x00100030
 
#define GLM_COMPILER_INTEL14   0x00100040
 
#define GLM_COMPILER_INTEL15   0x00100050
 
#define GLM_COMPILER_VC   0x01000000
 
#define GLM_COMPILER_VC2010   0x01000090
 
#define GLM_COMPILER_VC2012   0x010000A0
 
#define GLM_COMPILER_VC2013   0x010000B0
 
#define GLM_COMPILER_VC2015   0x010000C0
 
#define GLM_COMPILER_GCC   0x02000000
 
#define GLM_COMPILER_GCC44   0x020000B0
 
#define GLM_COMPILER_GCC45   0x020000C0
 
#define GLM_COMPILER_GCC46   0x020000D0
 
#define GLM_COMPILER_GCC47   0x020000E0
 
#define GLM_COMPILER_GCC48   0x020000F0
 
#define GLM_COMPILER_GCC49   0x02000100
 
#define GLM_COMPILER_GCC50   0x02000200
 
#define GLM_COMPILER_CUDA   0x10000000
 
#define GLM_COMPILER_CUDA40   0x10000040
 
#define GLM_COMPILER_CUDA41   0x10000050
 
#define GLM_COMPILER_CUDA42   0x10000060
 
#define GLM_COMPILER_CUDA50   0x10000070
 
#define GLM_COMPILER_CUDA60   0x10000080
 
#define GLM_COMPILER_CUDA65   0x10000090
 
#define GLM_COMPILER_LLVM   0x20000000
 
#define GLM_COMPILER_LLVM32   0x20000030
 
#define GLM_COMPILER_LLVM33   0x20000040
 
#define GLM_COMPILER_LLVM34   0x20000050
 
#define GLM_COMPILER_LLVM35   0x20000060
 
#define GLM_COMPILER_APPLE_CLANG   0x40000000
 
#define GLM_COMPILER_APPLE_CLANG40   0x40000010
 
#define GLM_COMPILER_APPLE_CLANG41   0x40000020
 
#define GLM_COMPILER_APPLE_CLANG42   0x40000030
 
#define GLM_COMPILER_APPLE_CLANG50   0x40000040
 
#define GLM_COMPILER_APPLE_CLANG51   0x40000050
 
#define GLM_COMPILER_APPLE_CLANG60   0x40000060
 
#define GLM_MODEL_32   0x00000010
 
#define GLM_MODEL_64   0x00000020
 
#define GLM_COMPILER   GLM_COMPILER_UNKNOWN
 
#define GLM_MODEL   GLM_MODEL_32
 
#define GLM_LANG_CXX98_FLAG   (1 << 1)
 
#define GLM_LANG_CXX03_FLAG   (1 << 2)
 
#define GLM_LANG_CXX0X_FLAG   (1 << 3)
 
#define GLM_LANG_CXX11_FLAG   (1 << 4)
 
#define GLM_LANG_CXX1Y_FLAG   (1 << 5)
 
#define GLM_LANG_CXX14_FLAG   (1 << 6)
 
#define GLM_LANG_CXX1Z_FLAG   (1 << 7)
 
#define GLM_LANG_CXXMS_FLAG   (1 << 8)
 
#define GLM_LANG_CXXGNU_FLAG   (1 << 9)
 
#define GLM_LANG_CXX98   GLM_LANG_CXX98_FLAG
 
#define GLM_LANG_CXX03   (GLM_LANG_CXX98 | GLM_LANG_CXX03_FLAG)
 
#define GLM_LANG_CXX0X   (GLM_LANG_CXX03 | GLM_LANG_CXX0X_FLAG)
 
#define GLM_LANG_CXX11   (GLM_LANG_CXX0X | GLM_LANG_CXX11_FLAG)
 
#define GLM_LANG_CXX1Y   (GLM_LANG_CXX11 | GLM_LANG_CXX1Y_FLAG)
 
#define GLM_LANG_CXX14   (GLM_LANG_CXX1Y | GLM_LANG_CXX14_FLAG)
 
#define GLM_LANG_CXX1Z   (GLM_LANG_CXX14 | GLM_LANG_CXX1Z_FLAG)
 
#define GLM_LANG_CXXMS   GLM_LANG_CXXMS_FLAG
 
#define GLM_LANG_CXXGNU   GLM_LANG_CXXGNU_FLAG
 
#define GLM_LANG   GLM_LANG_CXX
 
#define GLM_FORCE_PURE
 
#define GLM_HAS_CXX11_STL
 
#define GLM_HAS_STATIC_ASSERT
 
#define GLM_HAS_EXTENDED_INTEGER_TYPE
 
#define GLM_HAS_CONSTEXPR
 
#define GLM_HAS_CONSTEXPR_PARTIAL   GLM_HAS_CONSTEXPR || ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2015))
 
#define GLM_HAS_INITIALIZER_LISTS
 
#define GLM_HAS_UNRESTRICTED_UNIONS
 
#define GLM_HAS_DEFAULTED_FUNCTIONS
 
#define GLM_HAS_RVALUE_REFERENCES
 
#define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS
 
#define GLM_HAS_TEMPLATE_ALIASES
 
#define GLM_HAS_RANGE_FOR
 
#define GLM_HAS_ASSIGNABLE
 
#define GLM_HAS_TRIVIAL_QUERIES   0
 
#define GLM_HAS_MAKE_SIGNED
 
#define GLM_HAS_BITSCAN_WINDOWS   0
 
#define GLM_HAS_ANONYMOUS_UNION   (GLM_LANG & GLM_LANG_CXXMS_FLAG) && !(GLM_COMPILER & GLM_COMPILER_VC)
 
#define GLM_ARCH_PURE   0x0000
 
#define GLM_ARCH_ARM   0x0001
 
#define GLM_ARCH_X86   0x0002
 
#define GLM_ARCH_SSE2   0x0004
 
#define GLM_ARCH_SSE3   0x0008
 
#define GLM_ARCH_SSE4   0x0010
 
#define GLM_ARCH_AVX   0x0020
 
#define GLM_ARCH_AVX2   0x0040
 
#define GLM_ARCH   GLM_ARCH_PURE
 
#define GLM_STATIC_ASSERT(x, message)
 
#define GLM_STATIC_ASSERT_NULL
 
#define GLM_CUDA_FUNC_DEF
 
#define GLM_CUDA_FUNC_DECL
 
#define GLM_VAR_USED
 
#define GLM_INLINE   inline
 
#define GLM_NEVER_INLINE
 
#define GLM_FUNC_DECL   GLM_CUDA_FUNC_DECL
 
#define GLM_FUNC_QUALIFIER   GLM_CUDA_FUNC_DEF GLM_INLINE
 
#define GLM_DEPRECATED
 
#define GLM_ALIGN
 
#define GLM_ALIGNED_STRUCT(x)   struct
 
#define GLM_ALIGNED_TYPEDEF(type, name, alignment)   typedef type name
 
#define GLM_RESTRICT
 
#define GLM_RESTRICT_VAR
 
#define GLM_CONSTEXPR
 
#define __has_feature(x)   0
 
#define GLM_COUNTOF(arr)   sizeof(arr) / sizeof(arr[0])
 

Typedefs

typedef int glm::length_t
 
typedef length_t glm::detail::component_count_t
 

Enumerations

enum  glm::ctor { glm::uninitialize }
 

Functions

template<typename genType >
GLM_FUNC_QUALIFIER GLM_CONSTEXPR component_count_t glm::detail::component_count (genType const &m)
 

Detailed Description

OpenGL Mathematics (glm.g-truc.net)

Copyright (c) 2005 - 2015 G-Truc Creation (www.g-truc.net) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

Restrictions: By making use of the Software for military purposes, you choose to make a Bunny unhappy.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

GLM Core

Date
2006-11-13 / 2014-10-05
Author
Christophe Riccio

Macro Definition Documentation

#define GLM_VERSION   96
#define GLM_VERSION_MAJOR   0
#define GLM_VERSION_MINOR   9
#define GLM_VERSION_PATCH   6
#define GLM_VERSION_REVISION   3
#define GLM_PLATFORM_UNKNOWN   0x00000000
#define GLM_PLATFORM_WINDOWS   0x00010000
#define GLM_PLATFORM_LINUX   0x00020000
#define GLM_PLATFORM_APPLE   0x00040000
#define GLM_PLATFORM_ANDROID   0x00100000
#define GLM_PLATFORM_CHROME_NACL   0x00200000
#define GLM_PLATFORM_UNIX   0x00400000
#define GLM_PLATFORM_QNXNTO   0x00800000
#define GLM_PLATFORM_WINCE   0x01000000
#define GLM_PLATFORM   GLM_PLATFORM_UNKNOWN
#define GLM_COMPILER_UNKNOWN   0x00000000
#define GLM_COMPILER_INTEL   0x00100000
#define GLM_COMPILER_INTEL12   0x00100010
#define GLM_COMPILER_INTEL12_1   0x00100020
#define GLM_COMPILER_INTEL13   0x00100030
#define GLM_COMPILER_INTEL14   0x00100040
#define GLM_COMPILER_INTEL15   0x00100050
#define GLM_COMPILER_VC   0x01000000
#define GLM_COMPILER_VC2010   0x01000090
#define GLM_COMPILER_VC2012   0x010000A0
#define GLM_COMPILER_VC2013   0x010000B0
#define GLM_COMPILER_VC2015   0x010000C0
#define GLM_COMPILER_GCC   0x02000000
#define GLM_COMPILER_GCC44   0x020000B0
#define GLM_COMPILER_GCC45   0x020000C0
#define GLM_COMPILER_GCC46   0x020000D0
#define GLM_COMPILER_GCC47   0x020000E0
#define GLM_COMPILER_GCC48   0x020000F0
#define GLM_COMPILER_GCC49   0x02000100
#define GLM_COMPILER_GCC50   0x02000200
#define GLM_COMPILER_CUDA   0x10000000
#define GLM_COMPILER_CUDA40   0x10000040
#define GLM_COMPILER_CUDA41   0x10000050
#define GLM_COMPILER_CUDA42   0x10000060
#define GLM_COMPILER_CUDA50   0x10000070
#define GLM_COMPILER_CUDA60   0x10000080
#define GLM_COMPILER_CUDA65   0x10000090
#define GLM_COMPILER_LLVM   0x20000000
#define GLM_COMPILER_LLVM32   0x20000030
#define GLM_COMPILER_LLVM33   0x20000040
#define GLM_COMPILER_LLVM34   0x20000050
#define GLM_COMPILER_LLVM35   0x20000060
#define GLM_COMPILER_APPLE_CLANG   0x40000000
#define GLM_COMPILER_APPLE_CLANG40   0x40000010
#define GLM_COMPILER_APPLE_CLANG41   0x40000020
#define GLM_COMPILER_APPLE_CLANG42   0x40000030
#define GLM_COMPILER_APPLE_CLANG50   0x40000040
#define GLM_COMPILER_APPLE_CLANG51   0x40000050
#define GLM_COMPILER_APPLE_CLANG60   0x40000060
#define GLM_MODEL_32   0x00000010
#define GLM_MODEL_64   0x00000020
#define GLM_COMPILER   GLM_COMPILER_UNKNOWN
#define GLM_MODEL   GLM_MODEL_32
#define GLM_LANG_CXX98_FLAG   (1 << 1)
#define GLM_LANG_CXX03_FLAG   (1 << 2)
#define GLM_LANG_CXX0X_FLAG   (1 << 3)
#define GLM_LANG_CXX11_FLAG   (1 << 4)
#define GLM_LANG_CXX1Y_FLAG   (1 << 5)
#define GLM_LANG_CXX14_FLAG   (1 << 6)
#define GLM_LANG_CXX1Z_FLAG   (1 << 7)
#define GLM_LANG_CXXMS_FLAG   (1 << 8)
#define GLM_LANG_CXXGNU_FLAG   (1 << 9)
#define GLM_LANG_CXX98   GLM_LANG_CXX98_FLAG
#define GLM_LANG_CXX03   (GLM_LANG_CXX98 | GLM_LANG_CXX03_FLAG)
#define GLM_LANG_CXX0X   (GLM_LANG_CXX03 | GLM_LANG_CXX0X_FLAG)
#define GLM_LANG_CXX11   (GLM_LANG_CXX0X | GLM_LANG_CXX11_FLAG)
#define GLM_LANG_CXX1Y   (GLM_LANG_CXX11 | GLM_LANG_CXX1Y_FLAG)
#define GLM_LANG_CXX14   (GLM_LANG_CXX1Y | GLM_LANG_CXX14_FLAG)
#define GLM_LANG_CXX1Z   (GLM_LANG_CXX14 | GLM_LANG_CXX1Z_FLAG)
#define GLM_LANG_CXXMS   GLM_LANG_CXXMS_FLAG
#define GLM_LANG_CXXGNU   GLM_LANG_CXXGNU_FLAG
#define GLM_LANG   GLM_LANG_CXX
#define GLM_FORCE_PURE
#define GLM_HAS_CXX11_STL
Value:
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_VC2013
Definition: setup.hpp:136
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_COMPILER_GCC48
Definition: setup.hpp:145
#define GLM_HAS_STATIC_ASSERT
Value:
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_VC2010
Definition: setup.hpp:134
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_HAS_EXTENDED_INTEGER_TYPE
Value:
(\
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_LLVM) && (GLM_COMPILER >= GLM_COMPILER_LLVM30)) || \
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_VC2012
Definition: setup.hpp:135
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_COMPILER_APPLE_CLANG40
Definition: setup.hpp:167
#define GLM_COMPILER_LLVM
Definition: setup.hpp:159
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_COMPILER_APPLE_CLANG
Definition: setup.hpp:166
#define GLM_HAS_CONSTEXPR
Value:
#define GLM_COMPILER_GCC46
Definition: setup.hpp:143
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_HAS_CONSTEXPR_PARTIAL   GLM_HAS_CONSTEXPR || ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2015))
#define GLM_HAS_INITIALIZER_LISTS
Value:
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_GCC44
Definition: setup.hpp:141
#define GLM_COMPILER_VC2013
Definition: setup.hpp:136
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_HAS_UNRESTRICTED_UNIONS
Value:
#define GLM_COMPILER_GCC46
Definition: setup.hpp:143
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_HAS_DEFAULTED_FUNCTIONS
Value:
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_GCC44
Definition: setup.hpp:141
#define GLM_COMPILER_VC2013
Definition: setup.hpp:136
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_HAS_RVALUE_REFERENCES
Value:
((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_VC2012
Definition: setup.hpp:135
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS
Value:
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_INTEL14
Definition: setup.hpp:129
#define GLM_COMPILER_VC2013
Definition: setup.hpp:136
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_COMPILER_GCC45
Definition: setup.hpp:142
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_COMPILER_INTEL
Definition: setup.hpp:125
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_HAS_TEMPLATE_ALIASES
Value:
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_GCC47
Definition: setup.hpp:144
#define GLM_COMPILER_VC2013
Definition: setup.hpp:136
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_COMPILER_INTEL
Definition: setup.hpp:125
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_COMPILER_INTEL12_1
Definition: setup.hpp:127
#define GLM_HAS_RANGE_FOR
Value:
#define GLM_COMPILER_GCC46
Definition: setup.hpp:143
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER_VC2012
Definition: setup.hpp:135
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_COMPILER_INTEL
Definition: setup.hpp:125
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_COMPILER_INTEL13
Definition: setup.hpp:128
#define GLM_HAS_ASSIGNABLE
Value:
#define GLM_COMPILER_GCC
Definition: setup.hpp:140
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_COMPILER_GCC49
Definition: setup.hpp:146
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_HAS_TRIVIAL_QUERIES   0
#define GLM_HAS_MAKE_SIGNED
Value:
#define GLM_COMPILER_VC2013
Definition: setup.hpp:136
#define GLM_COMPILER
Definition: setup.hpp:283
#define GLM_LANG
Definition: setup.hpp:462
#define GLM_LANG_CXX0X_FLAG
Definition: setup.hpp:341
#define GLM_COMPILER_VC
Definition: setup.hpp:133
#define GLM_HAS_BITSCAN_WINDOWS   0
#define GLM_HAS_ANONYMOUS_UNION   (GLM_LANG & GLM_LANG_CXXMS_FLAG) && !(GLM_COMPILER & GLM_COMPILER_VC)
#define GLM_ARCH_PURE   0x0000
#define GLM_ARCH_ARM   0x0001
#define GLM_ARCH_X86   0x0002
#define GLM_ARCH_SSE2   0x0004
#define GLM_ARCH_SSE3   0x0008
#define GLM_ARCH_SSE4   0x0010
#define GLM_ARCH_AVX   0x0020
#define GLM_ARCH_AVX2   0x0040
#define GLM_ARCH   GLM_ARCH_PURE
#define GLM_STATIC_ASSERT (   x,
  message 
)
#define GLM_STATIC_ASSERT_NULL
#define GLM_CUDA_FUNC_DEF
#define GLM_CUDA_FUNC_DECL
#define GLM_VAR_USED
#define GLM_INLINE   inline
#define GLM_NEVER_INLINE
#define GLM_FUNC_DECL   GLM_CUDA_FUNC_DECL
#define GLM_FUNC_QUALIFIER   GLM_CUDA_FUNC_DEF GLM_INLINE
#define GLM_DEPRECATED
#define GLM_ALIGN
#define GLM_ALIGNED_STRUCT (   x)    struct
#define GLM_ALIGNED_TYPEDEF (   type,
  name,
  alignment 
)    typedef type name
#define GLM_RESTRICT
#define GLM_RESTRICT_VAR
#define GLM_CONSTEXPR
#define __has_feature (   x)    0
#define GLM_COUNTOF (   arr)    sizeof(arr) / sizeof(arr[0])