glm.hpp
Go to the documentation of this file.
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
34 
35 
36 
37 
38 
39 
40 
41 
42 
43 
44 
45 
46 
47 
48 
49 
50 
51 
52 
53 
54 
55 
56 
57 
58 
59 
60 
61 
62 
63 
64 
65 
66 
67 
68 
69 
70 
71 
72 
73 
74 
75 
76 
77 
78 #include "core/_fixes.hpp"
79 
80 #ifndef glm_glm
81 #define glm_glm
82 
83 #include <cmath>
84 #include <climits>
85 #include <cfloat>
86 #include <limits>
87 #include <cstdio>
88 //#include <type_traits>
89 #include "core/setup.hpp"
90 
91 #if(defined(GLM_MESSAGES) && !defined(GLM_MESSAGE_CORE_INCLUDED_DISPLAYED))
92 # define GLM_MESSAGE_CORE_INCLUDED_DISPLAYED
93 # pragma message("GLM: Core library included")
94 #endif//GLM_MESSAGE
95 
96 #include "./core/_detail.hpp"
97 #include "./core/_vectorize.hpp"
98 #include "./core/type.hpp"
99 
102 #include "./core/func_common.hpp"
103 #include "./core/func_packing.hpp"
104 #include "./core/func_geometric.hpp"
105 #include "./core/func_matrix.hpp"
107 #include "./core/func_integer.hpp"
108 #include "./core/func_noise.hpp"
109 #include "./core/_swizzle.hpp"
110 
112 // check type sizes
113 #ifndef GLM_STATIC_ASSERT_NULL
114  GLM_STATIC_ASSERT(sizeof(glm::detail::int8) == 1, "int8 size isn't 1 byte on this platform");
115  GLM_STATIC_ASSERT(sizeof(glm::detail::int16) == 2, "int16 size isn't 2 bytes on this platform");
116  GLM_STATIC_ASSERT(sizeof(glm::detail::int32) == 4, "int32 size isn't 4 bytes on this platform");
117  GLM_STATIC_ASSERT(sizeof(glm::detail::int64) == 8, "int64 size isn't 8 bytes on this platform");
118 
119  GLM_STATIC_ASSERT(sizeof(glm::detail::uint8) == 1, "uint8 size isn't 1 byte on this platform");
120  GLM_STATIC_ASSERT(sizeof(glm::detail::uint16) == 2, "uint16 size isn't 2 bytes on this platform");
121  GLM_STATIC_ASSERT(sizeof(glm::detail::uint32) == 4, "uint32 size isn't 4 bytes on this platform");
122  GLM_STATIC_ASSERT(sizeof(glm::detail::uint64) == 8, "uint64 size isn't 8 bytes on this platform");
123 
124  GLM_STATIC_ASSERT(sizeof(glm::detail::float16) == 2, "float16 size isn't 2 bytes on this platform");
125  GLM_STATIC_ASSERT(sizeof(glm::detail::float32) == 4, "float32 size isn't 4 bytes on this platform");
126  GLM_STATIC_ASSERT(sizeof(glm::detail::float64) == 8, "float64 size isn't 8 bytes on this platform");
127 #endif//GLM_STATIC_ASSERT_NULL
128 
129 #endif//glm_glm