1 /// @ref core
2 /// @file glm/glm.cpp
3 
4 #define GLM_ENABLE_EXPERIMENTAL
5 #include <glm/gtx/dual_quaternion.hpp>
6 #include <glm/gtc/vec1.hpp>
7 #include <glm/gtc/quaternion.hpp>
8 #include <glm/ext/scalar_int_sized.hpp>
9 #include <glm/ext/scalar_uint_sized.hpp>
10 #include <glm/glm.hpp>
11 
12 namespace glm
13 {
14 // tvec1 type explicit instantiation
15 template struct vec<1, uint8, lowp>;
16 template struct vec<1, uint16, lowp>;
17 template struct vec<1, uint32, lowp>;
18 template struct vec<1, uint64, lowp>;
19 template struct vec<1, int8, lowp>;
20 template struct vec<1, int16, lowp>;
21 template struct vec<1, int32, lowp>;
22 template struct vec<1, int64, lowp>;
23 template struct vec<1, float32, lowp>;
24 template struct vec<1, float64, lowp>;
25 
26 template struct vec<1, uint8, mediump>;
27 template struct vec<1, uint16, mediump>;
28 template struct vec<1, uint32, mediump>;
29 template struct vec<1, uint64, mediump>;
30 template struct vec<1, int8, mediump>;
31 template struct vec<1, int16, mediump>;
32 template struct vec<1, int32, mediump>;
33 template struct vec<1, int64, mediump>;
34 template struct vec<1, float32, mediump>;
35 template struct vec<1, float64, mediump>;
36 
37 template struct vec<1, uint8, highp>;
38 template struct vec<1, uint16, highp>;
39 template struct vec<1, uint32, highp>;
40 template struct vec<1, uint64, highp>;
41 template struct vec<1, int8, highp>;
42 template struct vec<1, int16, highp>;
43 template struct vec<1, int32, highp>;
44 template struct vec<1, int64, highp>;
45 template struct vec<1, float32, highp>;
46 template struct vec<1, float64, highp>;
47 
48 // tvec2 type explicit instantiation
49 template struct vec<2, uint8, lowp>;
50 template struct vec<2, uint16, lowp>;
51 template struct vec<2, uint32, lowp>;
52 template struct vec<2, uint64, lowp>;
53 template struct vec<2, int8, lowp>;
54 template struct vec<2, int16, lowp>;
55 template struct vec<2, int32, lowp>;
56 template struct vec<2, int64, lowp>;
57 template struct vec<2, float32, lowp>;
58 template struct vec<2, float64, lowp>;
59 
60 template struct vec<2, uint8, mediump>;
61 template struct vec<2, uint16, mediump>;
62 template struct vec<2, uint32, mediump>;
63 template struct vec<2, uint64, mediump>;
64 template struct vec<2, int8, mediump>;
65 template struct vec<2, int16, mediump>;
66 template struct vec<2, int32, mediump>;
67 template struct vec<2, int64, mediump>;
68 template struct vec<2, float32, mediump>;
69 template struct vec<2, float64, mediump>;
70 
71 template struct vec<2, uint8, highp>;
72 template struct vec<2, uint16, highp>;
73 template struct vec<2, uint32, highp>;
74 template struct vec<2, uint64, highp>;
75 template struct vec<2, int8, highp>;
76 template struct vec<2, int16, highp>;
77 template struct vec<2, int32, highp>;
78 template struct vec<2, int64, highp>;
79 template struct vec<2, float32, highp>;
80 template struct vec<2, float64, highp>;
81 
82 // tvec3 type explicit instantiation
83 template struct vec<3, uint8, lowp>;
84 template struct vec<3, uint16, lowp>;
85 template struct vec<3, uint32, lowp>;
86 template struct vec<3, uint64, lowp>;
87 template struct vec<3, int8, lowp>;
88 template struct vec<3, int16, lowp>;
89 template struct vec<3, int32, lowp>;
90 template struct vec<3, int64, lowp>;
91 template struct vec<3, float32, lowp>;
92 template struct vec<3, float64, lowp>;
93 
94 template struct vec<3, uint8, mediump>;
95 template struct vec<3, uint16, mediump>;
96 template struct vec<3, uint32, mediump>;
97 template struct vec<3, uint64, mediump>;
98 template struct vec<3, int8, mediump>;
99 template struct vec<3, int16, mediump>;
100 template struct vec<3, int32, mediump>;
101 template struct vec<3, int64, mediump>;
102 template struct vec<3, float32, mediump>;
103 template struct vec<3, float64, mediump>;
104 
105 template struct vec<3, uint8, highp>;
106 template struct vec<3, uint16, highp>;
107 template struct vec<3, uint32, highp>;
108 template struct vec<3, uint64, highp>;
109 template struct vec<3, int8, highp>;
110 template struct vec<3, int16, highp>;
111 template struct vec<3, int32, highp>;
112 template struct vec<3, int64, highp>;
113 template struct vec<3, float32, highp>;
114 template struct vec<3, float64, highp>;
115 
116 // tvec4 type explicit instantiation
117 template struct vec<4, uint8, lowp>;
118 template struct vec<4, uint16, lowp>;
119 template struct vec<4, uint32, lowp>;
120 template struct vec<4, uint64, lowp>;
121 template struct vec<4, int8, lowp>;
122 template struct vec<4, int16, lowp>;
123 template struct vec<4, int32, lowp>;
124 template struct vec<4, int64, lowp>;
125 template struct vec<4, float32, lowp>;
126 template struct vec<4, float64, lowp>;
127 
128 template struct vec<4, uint8, mediump>;
129 template struct vec<4, uint16, mediump>;
130 template struct vec<4, uint32, mediump>;
131 template struct vec<4, uint64, mediump>;
132 template struct vec<4, int8, mediump>;
133 template struct vec<4, int16, mediump>;
134 template struct vec<4, int32, mediump>;
135 template struct vec<4, int64, mediump>;
136 template struct vec<4, float32, mediump>;
137 template struct vec<4, float64, mediump>;
138 
139 template struct vec<4, uint8, highp>;
140 template struct vec<4, uint16, highp>;
141 template struct vec<4, uint32, highp>;
142 template struct vec<4, uint64, highp>;
143 template struct vec<4, int8, highp>;
144 template struct vec<4, int16, highp>;
145 template struct vec<4, int32, highp>;
146 template struct vec<4, int64, highp>;
147 template struct vec<4, float32, highp>;
148 template struct vec<4, float64, highp>;
149 
150 // tmat2x2 type explicit instantiation
151 template struct mat<2, 2, float32, lowp>;
152 template struct mat<2, 2, float64, lowp>;
153 
154 template struct mat<2, 2, float32, mediump>;
155 template struct mat<2, 2, float64, mediump>;
156 
157 template struct mat<2, 2, float32, highp>;
158 template struct mat<2, 2, float64, highp>;
159 
160 // tmat2x3 type explicit instantiation
161 template struct mat<2, 3, float32, lowp>;
162 template struct mat<2, 3, float64, lowp>;
163 
164 template struct mat<2, 3, float32, mediump>;
165 template struct mat<2, 3, float64, mediump>;
166 
167 template struct mat<2, 3, float32, highp>;
168 template struct mat<2, 3, float64, highp>;
169 
170 // tmat2x4 type explicit instantiation
171 template struct mat<2, 4, float32, lowp>;
172 template struct mat<2, 4, float64, lowp>;
173 
174 template struct mat<2, 4, float32, mediump>;
175 template struct mat<2, 4, float64, mediump>;
176 
177 template struct mat<2, 4, float32, highp>;
178 template struct mat<2, 4, float64, highp>;
179 
180 // tmat3x2 type explicit instantiation
181 template struct mat<3, 2, float32, lowp>;
182 template struct mat<3, 2, float64, lowp>;
183 
184 template struct mat<3, 2, float32, mediump>;
185 template struct mat<3, 2, float64, mediump>;
186 
187 template struct mat<3, 2, float32, highp>;
188 template struct mat<3, 2, float64, highp>;
189 
190 // tmat3x3 type explicit instantiation
191 template struct mat<3, 3, float32, lowp>;
192 template struct mat<3, 3, float64, lowp>;
193 
194 template struct mat<3, 3, float32, mediump>;
195 template struct mat<3, 3, float64, mediump>;
196 
197 template struct mat<3, 3, float32, highp>;
198 template struct mat<3, 3, float64, highp>;
199 
200 // tmat3x4 type explicit instantiation
201 template struct mat<3, 4, float32, lowp>;
202 template struct mat<3, 4, float64, lowp>;
203 
204 template struct mat<3, 4, float32, mediump>;
205 template struct mat<3, 4, float64, mediump>;
206 
207 template struct mat<3, 4, float32, highp>;
208 template struct mat<3, 4, float64, highp>;
209 
210 // tmat4x2 type explicit instantiation
211 template struct mat<4, 2, float32, lowp>;
212 template struct mat<4, 2, float64, lowp>;
213 
214 template struct mat<4, 2, float32, mediump>;
215 template struct mat<4, 2, float64, mediump>;
216 
217 template struct mat<4, 2, float32, highp>;
218 template struct mat<4, 2, float64, highp>;
219 
220 // tmat4x3 type explicit instantiation
221 template struct mat<4, 3, float32, lowp>;
222 template struct mat<4, 3, float64, lowp>;
223 
224 template struct mat<4, 3, float32, mediump>;
225 template struct mat<4, 3, float64, mediump>;
226 
227 template struct mat<4, 3, float32, highp>;
228 template struct mat<4, 3, float64, highp>;
229 
230 // tmat4x4 type explicit instantiation
231 template struct mat<4, 4, float32, lowp>;
232 template struct mat<4, 4, float64, lowp>;
233 
234 template struct mat<4, 4, float32, mediump>;
235 template struct mat<4, 4, float64, mediump>;
236 
237 template struct mat<4, 4, float32, highp>;
238 template struct mat<4, 4, float64, highp>;
239 
240 // tquat type explicit instantiation
241 template struct qua<float32, lowp>;
242 template struct qua<float64, lowp>;
243 
244 template struct qua<float32, mediump>;
245 template struct qua<float64, mediump>;
246 
247 template struct qua<float32, highp>;
248 template struct qua<float64, highp>;
249 
250 //tdualquat type explicit instantiation
251 template struct tdualquat<float32, lowp>;
252 template struct tdualquat<float64, lowp>;
253 
254 template struct tdualquat<float32, mediump>;
255 template struct tdualquat<float64, mediump>;
256 
257 template struct tdualquat<float32, highp>;
258 template struct tdualquat<float64, highp>;
259 
260 }//namespace glm
261 
262