0.9.8 API documenation
gtx/type_aligned.hpp
Go to the documentation of this file.
1 
16 #pragma once
17 
18 // Dependency:
19 #include "../gtc/type_precision.hpp"
20 
21 #ifndef GLM_ENABLE_EXPERIMENTAL
22 # error "GLM: GLM_GTX_type_aligned is an experimetal extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."
23 #endif
24 
25 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
26 # pragma message("GLM: GLM_GTX_type_aligned extension included")
27 #endif
28 
29 namespace glm
30 {
32  // Signed int vector types
33 
36 
39  GLM_ALIGNED_TYPEDEF(lowp_int8, aligned_lowp_int8, 1);
40 
43  GLM_ALIGNED_TYPEDEF(lowp_int16, aligned_lowp_int16, 2);
44 
47  GLM_ALIGNED_TYPEDEF(lowp_int32, aligned_lowp_int32, 4);
48 
51  GLM_ALIGNED_TYPEDEF(lowp_int64, aligned_lowp_int64, 8);
52 
53 
56  GLM_ALIGNED_TYPEDEF(lowp_int8_t, aligned_lowp_int8_t, 1);
57 
60  GLM_ALIGNED_TYPEDEF(lowp_int16_t, aligned_lowp_int16_t, 2);
61 
64  GLM_ALIGNED_TYPEDEF(lowp_int32_t, aligned_lowp_int32_t, 4);
65 
68  GLM_ALIGNED_TYPEDEF(lowp_int64_t, aligned_lowp_int64_t, 8);
69 
70 
73  GLM_ALIGNED_TYPEDEF(lowp_i8, aligned_lowp_i8, 1);
74 
77  GLM_ALIGNED_TYPEDEF(lowp_i16, aligned_lowp_i16, 2);
78 
81  GLM_ALIGNED_TYPEDEF(lowp_i32, aligned_lowp_i32, 4);
82 
85  GLM_ALIGNED_TYPEDEF(lowp_i64, aligned_lowp_i64, 8);
86 
87 
90  GLM_ALIGNED_TYPEDEF(mediump_int8, aligned_mediump_int8, 1);
91 
94  GLM_ALIGNED_TYPEDEF(mediump_int16, aligned_mediump_int16, 2);
95 
98  GLM_ALIGNED_TYPEDEF(mediump_int32, aligned_mediump_int32, 4);
99 
102  GLM_ALIGNED_TYPEDEF(mediump_int64, aligned_mediump_int64, 8);
103 
104 
107  GLM_ALIGNED_TYPEDEF(mediump_int8_t, aligned_mediump_int8_t, 1);
108 
111  GLM_ALIGNED_TYPEDEF(mediump_int16_t, aligned_mediump_int16_t, 2);
112 
115  GLM_ALIGNED_TYPEDEF(mediump_int32_t, aligned_mediump_int32_t, 4);
116 
119  GLM_ALIGNED_TYPEDEF(mediump_int64_t, aligned_mediump_int64_t, 8);
120 
121 
124  GLM_ALIGNED_TYPEDEF(mediump_i8, aligned_mediump_i8, 1);
125 
128  GLM_ALIGNED_TYPEDEF(mediump_i16, aligned_mediump_i16, 2);
129 
132  GLM_ALIGNED_TYPEDEF(mediump_i32, aligned_mediump_i32, 4);
133 
136  GLM_ALIGNED_TYPEDEF(mediump_i64, aligned_mediump_i64, 8);
137 
138 
141  GLM_ALIGNED_TYPEDEF(highp_int8, aligned_highp_int8, 1);
142 
145  GLM_ALIGNED_TYPEDEF(highp_int16, aligned_highp_int16, 2);
146 
149  GLM_ALIGNED_TYPEDEF(highp_int32, aligned_highp_int32, 4);
150 
153  GLM_ALIGNED_TYPEDEF(highp_int64, aligned_highp_int64, 8);
154 
155 
158  GLM_ALIGNED_TYPEDEF(highp_int8_t, aligned_highp_int8_t, 1);
159 
162  GLM_ALIGNED_TYPEDEF(highp_int16_t, aligned_highp_int16_t, 2);
163 
166  GLM_ALIGNED_TYPEDEF(highp_int32_t, aligned_highp_int32_t, 4);
167 
170  GLM_ALIGNED_TYPEDEF(highp_int64_t, aligned_highp_int64_t, 8);
171 
172 
175  GLM_ALIGNED_TYPEDEF(highp_i8, aligned_highp_i8, 1);
176 
179  GLM_ALIGNED_TYPEDEF(highp_i16, aligned_highp_i16, 2);
180 
183  GLM_ALIGNED_TYPEDEF(highp_i32, aligned_highp_i32, 4);
184 
187  GLM_ALIGNED_TYPEDEF(highp_i64, aligned_highp_i64, 8);
188 
189 
192  GLM_ALIGNED_TYPEDEF(int8, aligned_int8, 1);
193 
196  GLM_ALIGNED_TYPEDEF(int16, aligned_int16, 2);
197 
200  GLM_ALIGNED_TYPEDEF(int32, aligned_int32, 4);
201 
204  GLM_ALIGNED_TYPEDEF(int64, aligned_int64, 8);
205 
206 
209  GLM_ALIGNED_TYPEDEF(int8_t, aligned_int8_t, 1);
210 
213  GLM_ALIGNED_TYPEDEF(int16_t, aligned_int16_t, 2);
214 
217  GLM_ALIGNED_TYPEDEF(int32_t, aligned_int32_t, 4);
218 
221  GLM_ALIGNED_TYPEDEF(int64_t, aligned_int64_t, 8);
222 
223 
226  GLM_ALIGNED_TYPEDEF(i8, aligned_i8, 1);
227 
230  GLM_ALIGNED_TYPEDEF(i16, aligned_i16, 2);
231 
234  GLM_ALIGNED_TYPEDEF(i32, aligned_i32, 4);
235 
238  GLM_ALIGNED_TYPEDEF(i64, aligned_i64, 8);
239 
240 
244 
248 
252 
256 
257 
260  GLM_ALIGNED_TYPEDEF(i8vec1, aligned_i8vec1, 1);
261 
264  GLM_ALIGNED_TYPEDEF(i8vec2, aligned_i8vec2, 2);
265 
268  GLM_ALIGNED_TYPEDEF(i8vec3, aligned_i8vec3, 4);
269 
272  GLM_ALIGNED_TYPEDEF(i8vec4, aligned_i8vec4, 4);
273 
274 
277  GLM_ALIGNED_TYPEDEF(i16vec1, aligned_i16vec1, 2);
278 
281  GLM_ALIGNED_TYPEDEF(i16vec2, aligned_i16vec2, 4);
282 
285  GLM_ALIGNED_TYPEDEF(i16vec3, aligned_i16vec3, 8);
286 
289  GLM_ALIGNED_TYPEDEF(i16vec4, aligned_i16vec4, 8);
290 
291 
294  GLM_ALIGNED_TYPEDEF(i32vec1, aligned_i32vec1, 4);
295 
298  GLM_ALIGNED_TYPEDEF(i32vec2, aligned_i32vec2, 8);
299 
302  GLM_ALIGNED_TYPEDEF(i32vec3, aligned_i32vec3, 16);
303 
306  GLM_ALIGNED_TYPEDEF(i32vec4, aligned_i32vec4, 16);
307 
308 
311  GLM_ALIGNED_TYPEDEF(i64vec1, aligned_i64vec1, 8);
312 
315  GLM_ALIGNED_TYPEDEF(i64vec2, aligned_i64vec2, 16);
316 
319  GLM_ALIGNED_TYPEDEF(i64vec3, aligned_i64vec3, 32);
320 
323  GLM_ALIGNED_TYPEDEF(i64vec4, aligned_i64vec4, 32);
324 
325 
327  // Unsigned int vector types
328 
331  GLM_ALIGNED_TYPEDEF(lowp_uint8, aligned_lowp_uint8, 1);
332 
335  GLM_ALIGNED_TYPEDEF(lowp_uint16, aligned_lowp_uint16, 2);
336 
339  GLM_ALIGNED_TYPEDEF(lowp_uint32, aligned_lowp_uint32, 4);
340 
343  GLM_ALIGNED_TYPEDEF(lowp_uint64, aligned_lowp_uint64, 8);
344 
345 
348  GLM_ALIGNED_TYPEDEF(lowp_uint8_t, aligned_lowp_uint8_t, 1);
349 
352  GLM_ALIGNED_TYPEDEF(lowp_uint16_t, aligned_lowp_uint16_t, 2);
353 
356  GLM_ALIGNED_TYPEDEF(lowp_uint32_t, aligned_lowp_uint32_t, 4);
357 
360  GLM_ALIGNED_TYPEDEF(lowp_uint64_t, aligned_lowp_uint64_t, 8);
361 
362 
365  GLM_ALIGNED_TYPEDEF(lowp_u8, aligned_lowp_u8, 1);
366 
369  GLM_ALIGNED_TYPEDEF(lowp_u16, aligned_lowp_u16, 2);
370 
373  GLM_ALIGNED_TYPEDEF(lowp_u32, aligned_lowp_u32, 4);
374 
377  GLM_ALIGNED_TYPEDEF(lowp_u64, aligned_lowp_u64, 8);
378 
379 
382  GLM_ALIGNED_TYPEDEF(mediump_uint8, aligned_mediump_uint8, 1);
383 
386  GLM_ALIGNED_TYPEDEF(mediump_uint16, aligned_mediump_uint16, 2);
387 
390  GLM_ALIGNED_TYPEDEF(mediump_uint32, aligned_mediump_uint32, 4);
391 
394  GLM_ALIGNED_TYPEDEF(mediump_uint64, aligned_mediump_uint64, 8);
395 
396 
399  GLM_ALIGNED_TYPEDEF(mediump_uint8_t, aligned_mediump_uint8_t, 1);
400 
403  GLM_ALIGNED_TYPEDEF(mediump_uint16_t, aligned_mediump_uint16_t, 2);
404 
407  GLM_ALIGNED_TYPEDEF(mediump_uint32_t, aligned_mediump_uint32_t, 4);
408 
411  GLM_ALIGNED_TYPEDEF(mediump_uint64_t, aligned_mediump_uint64_t, 8);
412 
413 
416  GLM_ALIGNED_TYPEDEF(mediump_u8, aligned_mediump_u8, 1);
417 
420  GLM_ALIGNED_TYPEDEF(mediump_u16, aligned_mediump_u16, 2);
421 
424  GLM_ALIGNED_TYPEDEF(mediump_u32, aligned_mediump_u32, 4);
425 
428  GLM_ALIGNED_TYPEDEF(mediump_u64, aligned_mediump_u64, 8);
429 
430 
433  GLM_ALIGNED_TYPEDEF(highp_uint8, aligned_highp_uint8, 1);
434 
437  GLM_ALIGNED_TYPEDEF(highp_uint16, aligned_highp_uint16, 2);
438 
441  GLM_ALIGNED_TYPEDEF(highp_uint32, aligned_highp_uint32, 4);
442 
445  GLM_ALIGNED_TYPEDEF(highp_uint64, aligned_highp_uint64, 8);
446 
447 
450  GLM_ALIGNED_TYPEDEF(highp_uint8_t, aligned_highp_uint8_t, 1);
451 
454  GLM_ALIGNED_TYPEDEF(highp_uint16_t, aligned_highp_uint16_t, 2);
455 
458  GLM_ALIGNED_TYPEDEF(highp_uint32_t, aligned_highp_uint32_t, 4);
459 
462  GLM_ALIGNED_TYPEDEF(highp_uint64_t, aligned_highp_uint64_t, 8);
463 
464 
467  GLM_ALIGNED_TYPEDEF(highp_u8, aligned_highp_u8, 1);
468 
471  GLM_ALIGNED_TYPEDEF(highp_u16, aligned_highp_u16, 2);
472 
475  GLM_ALIGNED_TYPEDEF(highp_u32, aligned_highp_u32, 4);
476 
479  GLM_ALIGNED_TYPEDEF(highp_u64, aligned_highp_u64, 8);
480 
481 
484  GLM_ALIGNED_TYPEDEF(uint8, aligned_uint8, 1);
485 
488  GLM_ALIGNED_TYPEDEF(uint16, aligned_uint16, 2);
489 
492  GLM_ALIGNED_TYPEDEF(uint32, aligned_uint32, 4);
493 
496  GLM_ALIGNED_TYPEDEF(uint64, aligned_uint64, 8);
497 
498 
501  GLM_ALIGNED_TYPEDEF(uint8_t, aligned_uint8_t, 1);
502 
505  GLM_ALIGNED_TYPEDEF(uint16_t, aligned_uint16_t, 2);
506 
509  GLM_ALIGNED_TYPEDEF(uint32_t, aligned_uint32_t, 4);
510 
513  GLM_ALIGNED_TYPEDEF(uint64_t, aligned_uint64_t, 8);
514 
515 
518  GLM_ALIGNED_TYPEDEF(u8, aligned_u8, 1);
519 
522  GLM_ALIGNED_TYPEDEF(u16, aligned_u16, 2);
523 
526  GLM_ALIGNED_TYPEDEF(u32, aligned_u32, 4);
527 
530  GLM_ALIGNED_TYPEDEF(u64, aligned_u64, 8);
531 
532 
536 
540 
544 
548 
549 
552  GLM_ALIGNED_TYPEDEF(u8vec1, aligned_u8vec1, 1);
553 
556  GLM_ALIGNED_TYPEDEF(u8vec2, aligned_u8vec2, 2);
557 
560  GLM_ALIGNED_TYPEDEF(u8vec3, aligned_u8vec3, 4);
561 
564  GLM_ALIGNED_TYPEDEF(u8vec4, aligned_u8vec4, 4);
565 
566 
569  GLM_ALIGNED_TYPEDEF(u16vec1, aligned_u16vec1, 2);
570 
573  GLM_ALIGNED_TYPEDEF(u16vec2, aligned_u16vec2, 4);
574 
577  GLM_ALIGNED_TYPEDEF(u16vec3, aligned_u16vec3, 8);
578 
581  GLM_ALIGNED_TYPEDEF(u16vec4, aligned_u16vec4, 8);
582 
583 
586  GLM_ALIGNED_TYPEDEF(u32vec1, aligned_u32vec1, 4);
587 
590  GLM_ALIGNED_TYPEDEF(u32vec2, aligned_u32vec2, 8);
591 
594  GLM_ALIGNED_TYPEDEF(u32vec3, aligned_u32vec3, 16);
595 
598  GLM_ALIGNED_TYPEDEF(u32vec4, aligned_u32vec4, 16);
599 
600 
603  GLM_ALIGNED_TYPEDEF(u64vec1, aligned_u64vec1, 8);
604 
607  GLM_ALIGNED_TYPEDEF(u64vec2, aligned_u64vec2, 16);
608 
611  GLM_ALIGNED_TYPEDEF(u64vec3, aligned_u64vec3, 32);
612 
615  GLM_ALIGNED_TYPEDEF(u64vec4, aligned_u64vec4, 32);
616 
617 
619  // Float vector types
620 
623  GLM_ALIGNED_TYPEDEF(float32, aligned_float32, 4);
624 
627  GLM_ALIGNED_TYPEDEF(float64, aligned_float64, 8);
628 
629 
632  GLM_ALIGNED_TYPEDEF(float32_t, aligned_float32_t, 4);
633 
636  GLM_ALIGNED_TYPEDEF(float64_t, aligned_float64_t, 8);
637 
638 
641  GLM_ALIGNED_TYPEDEF(float32, aligned_f32, 4);
642 
645  GLM_ALIGNED_TYPEDEF(float64, aligned_f64, 8);
646 
647 
651 
655 
659 
663 
664 
667  GLM_ALIGNED_TYPEDEF(fvec1, aligned_fvec1, 4);
668 
671  GLM_ALIGNED_TYPEDEF(fvec2, aligned_fvec2, 8);
672 
675  GLM_ALIGNED_TYPEDEF(fvec3, aligned_fvec3, 16);
676 
679  GLM_ALIGNED_TYPEDEF(fvec4, aligned_fvec4, 16);
680 
681 
684  GLM_ALIGNED_TYPEDEF(f32vec1, aligned_f32vec1, 4);
685 
688  GLM_ALIGNED_TYPEDEF(f32vec2, aligned_f32vec2, 8);
689 
692  GLM_ALIGNED_TYPEDEF(f32vec3, aligned_f32vec3, 16);
693 
696  GLM_ALIGNED_TYPEDEF(f32vec4, aligned_f32vec4, 16);
697 
698 
702 
706 
710 
714 
715 
718  GLM_ALIGNED_TYPEDEF(f64vec1, aligned_f64vec1, 8);
719 
722  GLM_ALIGNED_TYPEDEF(f64vec2, aligned_f64vec2, 16);
723 
726  GLM_ALIGNED_TYPEDEF(f64vec3, aligned_f64vec3, 32);
727 
730  GLM_ALIGNED_TYPEDEF(f64vec4, aligned_f64vec4, 32);
731 
732 
734  // Float matrix types
735 
738  //typedef detail::tmat1<f32> mat1;
739 
742  GLM_ALIGNED_TYPEDEF(mat2, aligned_mat2, 16);
743 
746  GLM_ALIGNED_TYPEDEF(mat3, aligned_mat3, 16);
747 
750  GLM_ALIGNED_TYPEDEF(mat4, aligned_mat4, 16);
751 
752 
755  //typedef detail::tmat1x1<f32> mat1;
756 
759  GLM_ALIGNED_TYPEDEF(mat2x2, aligned_mat2x2, 16);
760 
763  GLM_ALIGNED_TYPEDEF(mat3x3, aligned_mat3x3, 16);
764 
767  GLM_ALIGNED_TYPEDEF(mat4x4, aligned_mat4x4, 16);
768 
769 
772  //typedef detail::tmat1x1<f32> fmat1;
773 
776  GLM_ALIGNED_TYPEDEF(fmat2x2, aligned_fmat2, 16);
777 
780  GLM_ALIGNED_TYPEDEF(fmat3x3, aligned_fmat3, 16);
781 
784  GLM_ALIGNED_TYPEDEF(fmat4x4, aligned_fmat4, 16);
785 
786 
789  //typedef f32 fmat1x1;
790 
793  GLM_ALIGNED_TYPEDEF(fmat2x2, aligned_fmat2x2, 16);
794 
797  GLM_ALIGNED_TYPEDEF(fmat2x3, aligned_fmat2x3, 16);
798 
801  GLM_ALIGNED_TYPEDEF(fmat2x4, aligned_fmat2x4, 16);
802 
805  GLM_ALIGNED_TYPEDEF(fmat3x2, aligned_fmat3x2, 16);
806 
809  GLM_ALIGNED_TYPEDEF(fmat3x3, aligned_fmat3x3, 16);
810 
813  GLM_ALIGNED_TYPEDEF(fmat3x4, aligned_fmat3x4, 16);
814 
817  GLM_ALIGNED_TYPEDEF(fmat4x2, aligned_fmat4x2, 16);
818 
821  GLM_ALIGNED_TYPEDEF(fmat4x3, aligned_fmat4x3, 16);
822 
825  GLM_ALIGNED_TYPEDEF(fmat4x4, aligned_fmat4x4, 16);
826 
827 
830  //typedef detail::tmat1x1<f32, defaultp> f32mat1;
831 
834  GLM_ALIGNED_TYPEDEF(f32mat2x2, aligned_f32mat2, 16);
835 
838  GLM_ALIGNED_TYPEDEF(f32mat3x3, aligned_f32mat3, 16);
839 
842  GLM_ALIGNED_TYPEDEF(f32mat4x4, aligned_f32mat4, 16);
843 
844 
847  //typedef f32 f32mat1x1;
848 
851  GLM_ALIGNED_TYPEDEF(f32mat2x2, aligned_f32mat2x2, 16);
852 
855  GLM_ALIGNED_TYPEDEF(f32mat2x3, aligned_f32mat2x3, 16);
856 
859  GLM_ALIGNED_TYPEDEF(f32mat2x4, aligned_f32mat2x4, 16);
860 
863  GLM_ALIGNED_TYPEDEF(f32mat3x2, aligned_f32mat3x2, 16);
864 
867  GLM_ALIGNED_TYPEDEF(f32mat3x3, aligned_f32mat3x3, 16);
868 
871  GLM_ALIGNED_TYPEDEF(f32mat3x4, aligned_f32mat3x4, 16);
872 
875  GLM_ALIGNED_TYPEDEF(f32mat4x2, aligned_f32mat4x2, 16);
876 
879  GLM_ALIGNED_TYPEDEF(f32mat4x3, aligned_f32mat4x3, 16);
880 
883  GLM_ALIGNED_TYPEDEF(f32mat4x4, aligned_f32mat4x4, 16);
884 
885 
888  //typedef detail::tmat1x1<f64, defaultp> f64mat1;
889 
892  GLM_ALIGNED_TYPEDEF(f64mat2x2, aligned_f64mat2, 32);
893 
896  GLM_ALIGNED_TYPEDEF(f64mat3x3, aligned_f64mat3, 32);
897 
900  GLM_ALIGNED_TYPEDEF(f64mat4x4, aligned_f64mat4, 32);
901 
902 
905  //typedef f64 f64mat1x1;
906 
909  GLM_ALIGNED_TYPEDEF(f64mat2x2, aligned_f64mat2x2, 32);
910 
913  GLM_ALIGNED_TYPEDEF(f64mat2x3, aligned_f64mat2x3, 32);
914 
917  GLM_ALIGNED_TYPEDEF(f64mat2x4, aligned_f64mat2x4, 32);
918 
921  GLM_ALIGNED_TYPEDEF(f64mat3x2, aligned_f64mat3x2, 32);
922 
925  GLM_ALIGNED_TYPEDEF(f64mat3x3, aligned_f64mat3x3, 32);
926 
929  GLM_ALIGNED_TYPEDEF(f64mat3x4, aligned_f64mat3x4, 32);
930 
933  GLM_ALIGNED_TYPEDEF(f64mat4x2, aligned_f64mat4x2, 32);
934 
937  GLM_ALIGNED_TYPEDEF(f64mat4x3, aligned_f64mat4x3, 32);
938 
941  GLM_ALIGNED_TYPEDEF(f64mat4x4, aligned_f64mat4x4, 32);
942 
943 
945  // Quaternion types
946 
949  GLM_ALIGNED_TYPEDEF(quat, aligned_quat, 16);
950 
953  GLM_ALIGNED_TYPEDEF(fquat, aligned_fquat, 16);
954 
957  GLM_ALIGNED_TYPEDEF(dquat, aligned_dquat, 32);
958 
961  GLM_ALIGNED_TYPEDEF(f32quat, aligned_f32quat, 16);
962 
965  GLM_ALIGNED_TYPEDEF(f64quat, aligned_f64quat, 32);
966 
968 }//namespace glm
969 
970 #include "type_aligned.inl"
detail::int8 lowp_int8_t
Low precision 8 bit signed integer type.
Definition: fwd.hpp:116
highp_i16vec1 i16vec1
Default precision 16 bit signed integer scalar type.
Definition: fwd.hpp:444
highp_f32vec1 f32vec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2397
GLM_ALIGNED_TYPEDEF(f64quat, aligned_f64quat, 32)
Double-precision floating-point aligned quaternion.
highp_f32mat2x4 f32mat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2421
detail::uint8 lowp_uint8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:703
highp_f64vec4 f64vec4
Default double-precision floating-point vector of 4 components.
Definition: fwd.hpp:2515
mat3x3 mat3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:411
highp_u32vec1 u32vec1
Default precision 32 bit unsigned integer scalar type.
Definition: fwd.hpp:1132
highp_dvec4 dvec4
4 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:491
detail::int8 mediump_int8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:148
detail::int8 mediump_i8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:180
detail::uint8 highp_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:837
detail::int8 mediump_int8_t
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:164
detail::uint64 highp_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:833
detail::uint16 highp_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:809
detail::uint32 highp_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:829
detail::int32 mediump_i32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:188
detail::int8 highp_i8
High precision 8 bit signed integer type.
Definition: fwd.hpp:228
highp_i64vec2 i64vec2
Default precision 64 bit signed integer vector of 2 components type.
Definition: fwd.hpp:686
highp_u32vec3 u32vec3
Default precision 32 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1140
detail::uint16 lowp_uint16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:707
highp_u8vec3 u8vec3
Default precision 8 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:981
highp_f32mat3x3 f32mat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2429
highp_mat4x4 mat4x4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:399
detail::int64 mediump_i64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:192
highp_dvec2 dvec2
2 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:481
highp_u16vec4 u16vec4
Default precision 16 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1065
detail::uint64 highp_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:849
highp_f64vec1 f64vec1
Default double-precision floating-point vector of 1 components.
Definition: fwd.hpp:2503
highp_u64vec4 u64vec4
Default precision 64 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1303
detail::int8 lowp_int8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:100
detail::int16 lowp_int16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:104
aligned_highp_dvec4 aligned_dvec4
4 components vector of double-precision floating-point numbers.
highp_i16vec4 i16vec4
Default precision 16 bit signed integer vector of 4 components type.
Definition: fwd.hpp:456
detail::int16 i16
16 bit signed integer type.
Definition: fwd.hpp:289
aligned_highp_dvec1 aligned_dvec1
1 component vector of double-precision floating-point numbers.
highp_f64mat3x2 f64mat3x2
Default double-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2531
detail::int32 lowp_i32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:140
detail::uint8 uint8_t
8 bit unsigned integer type.
Definition: fwd.hpp:877
detail::int32 lowp_int32_t
Low precision 32 bit signed integer type.
Definition: fwd.hpp:124
detail::uint8 highp_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:805
detail::int32 highp_i32
High precision 32 bit signed integer type.
Definition: fwd.hpp:236
detail::uint8 mediump_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:755
detail::uint8 mediump_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:787
highp_f32mat2x3 fmat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2347
highp_f32mat4x2 f32mat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2437
detail::uint16 highp_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:841
detail::uint32 highp_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:845
detail::uint32 u32
32 bit unsigned integer type.
Definition: fwd.hpp:902
highp_f64mat4x4 f64mat4x4
Default double-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2551
detail::int8 highp_int8
High precision 8 bit signed integer type.
Definition: fwd.hpp:196
highp_f64mat2x3 f64mat2x3
Default double-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2523
highp_u16vec3 u16vec3
Default precision 16 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1061
highp_i16vec2 i16vec2
Default precision 16 bit signed integer vector of 2 components type.
Definition: fwd.hpp:448
highp_uvec3 uvec3
3 components vector of unsigned integer numbers.
Definition: type_vec.hpp:540
detail::uint32 lowp_uint32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:711
detail::int16 mediump_int16_t
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:168
detail::int8 int8_t
8 bit signed integer type.
Definition: fwd.hpp:268
highp_ivec4 ivec4
4 components vector of signed integer numbers.
Definition: type_vec.hpp:518
detail::uint64 mediump_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:767
highp_f32mat4x3 fmat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2371
detail::uint16 u16
16 bit unsigned integer type.
Definition: fwd.hpp:898
highp_mat3x3 mat3x3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:379
highp_f32vec4 fvec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2339
highp_u32vec2 u32vec2
Default precision 32 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1136
highp_f32mat2x2 f32mat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2413
highp_ivec3 ivec3
3 components vector of signed integer numbers.
Definition: type_vec.hpp:513
detail::int32 mediump_int32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:156
highp_mat2x2 mat2x2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:359
detail::int16 highp_i16
High precision 16 bit signed integer type.
Definition: fwd.hpp:232
highp_f32mat3x2 f32mat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2425
detail::uint8 highp_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:821
highp_f64mat4x2 f64mat4x2
Default double-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2543
highp_f64mat3x4 f64mat3x4
Default double-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2539
highp_dvec3 dvec3
3 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:486
highp_f32mat4x4 fmat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2375
highp_float32_t float32_t
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1497
detail::uint64 highp_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:817
highp_u64vec1 u64vec1
Default precision 64 bit unsigned integer scalar type.
Definition: fwd.hpp:1291
detail::int64 lowp_i64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:144
highp_f64vec3 f64vec3
Default double-precision floating-point vector of 3 components.
Definition: fwd.hpp:2511
detail::int32 lowp_int32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:108
detail::uint64 lowp_uint64_t
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:732
highp_i32vec1 i32vec1
Default precision 32 bit signed integer scalar type.
Definition: fwd.hpp:523
highp_uvec2 uvec2
2 components vector of unsigned integer numbers.
Definition: type_vec.hpp:535
detail::uint32 lowp_u32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:745
highp_u8vec2 u8vec2
Default precision 8 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:977
highp_i16vec3 i16vec3
Default precision 16 bit signed integer vector of 3 components type.
Definition: fwd.hpp:452
highp_f32vec2 f32vec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2401
aligned_highp_ivec1 aligned_ivec1
1 component vector of signed integer numbers.
detail::uint8 lowp_uint8_t
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:720
highp_i64vec4 i64vec4
Default precision 64 bit signed integer vector of 4 components type.
Definition: fwd.hpp:694
highp_f32vec2 fvec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2331
aligned_highp_dvec3 aligned_dvec3
3 components vector of double-precision floating-point numbers.
highp_f32vec4 f32vec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2409
detail::uint64 lowp_u64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:749
aligned_highp_vec2 aligned_vec2
2 components vector of floating-point numbers.
detail::int8 i8
8 bit signed integer type.
Definition: fwd.hpp:285
highp_f32mat2x2 fmat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2343
highp_i64vec3 i64vec3
Default precision 64 bit signed integer vector of 3 components type.
Definition: fwd.hpp:690
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:459
detail::int16 lowp_i16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:136
detail::uint64 lowp_uint64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:715
detail::int64 highp_int64
High precision 64 bit signed integer type.
Definition: fwd.hpp:208
detail::uint8 u8
8 bit unsigned integer type.
Definition: fwd.hpp:894
detail::uint32 mediump_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:795
highp_f64mat2x2 f64mat2x2
Default double-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2519
detail::int64 lowp_int64_t
Low precision 64 bit signed integer type.
Definition: fwd.hpp:128
detail::uint16 lowp_u16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:741
highp_u16vec2 u16vec2
Default precision 16 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1057
aligned_highp_uvec4 aligned_uvec4
4 components vector of unsigned integer numbers.
detail::uint32 mediump_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:779
highp_u16vec1 u16vec1
Default precision 16 bit unsigned integer scalar type.
Definition: fwd.hpp:1053
highp_f64quat f64quat
Default double-precision floating-point quaternion.
Definition: fwd.hpp:2567
detail::uint16 lowp_uint16_t
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:724
detail::int64 highp_i64
High precision 64 bit signed integer type.
Definition: fwd.hpp:240
detail::int16 mediump_i16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:184
highp_u64vec2 u64vec2
Default precision 64 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1295
detail::int32 highp_int32
High precision 32 bit signed integer type.
Definition: fwd.hpp:204
highp_f32mat2x3 f32mat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2417
highp_u32vec4 u32vec4
Default precision 32 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1144
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:454
mat4x4 mat4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:416
aligned_highp_uvec3 aligned_uvec3
3 components vector of unsigned integer numbers.
detail::int32 mediump_int32_t
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:172
detail::int32 int32_t
32 bit signed integer type.
Definition: fwd.hpp:276
detail::uint16 mediump_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:791
detail::uint16 highp_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:825
detail::uint32 mediump_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:763
Definition: _noise.hpp:11
detail::uint64 uint64_t
64 bit unsigned integer type.
Definition: fwd.hpp:889
highp_i8vec2 i8vec2
Default precision 8 bit signed integer vector of 2 components type.
Definition: fwd.hpp:368
highp_f32mat4x3 f32mat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2441
highp_f64mat4x3 f64mat4x3
Default double-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2547
highp_f32mat2x4 fmat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2351
detail::uint8 mediump_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:771
highp_f32mat3x4 fmat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2363
highp_i32vec2 i32vec2
Default precision 32 bit signed integer vector of 2 components type.
Definition: fwd.hpp:527
highp_float64_t float64_t
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1501
aligned_highp_uvec1 aligned_uvec1
1 component vector of unsigned integer numbers.
highp_i8vec3 i8vec3
Default precision 8 bit signed integer vector of 3 components type.
Definition: fwd.hpp:372
detail::int64 mediump_int64_t
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:176
highp_f32mat4x4 f32mat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2445
highp_i8vec1 i8vec1
Default precision 8 bit signed integer scalar type.
Definition: fwd.hpp:364
highp_i32vec4 i32vec4
Default precision 32 bit signed integer vector of 4 components type.
Definition: fwd.hpp:535
aligned_highp_vec4 aligned_vec4
4 components vector of floating-point numbers.
detail::int8 lowp_i8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:132
highp_f32vec3 f32vec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2405
highp_f32vec1 fvec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2327
detail::int32 highp_int32_t
32 bit signed integer type.
Definition: fwd.hpp:220
detail::int64 mediump_int64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:160
detail::uint64 mediump_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:799
highp_u64vec3 u64vec3
Default precision 64 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1299
aligned_highp_ivec4 aligned_ivec4
4 components vector of signed integer numbers.
highp_f32mat3x3 fmat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2359
highp_i8vec4 i8vec4
Default precision 8 bit signed integer vector of 4 components type.
Definition: fwd.hpp:376
highp_f32vec3 fvec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2335
detail::uint8 lowp_u8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:737
detail::uint32 highp_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:813
mat2x2 mat2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:406
highp_f32mat4x2 fmat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2367
detail::uint16 mediump_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:775
detail::uint32 uint32_t
32 bit unsigned integer type.
Definition: fwd.hpp:885
detail::uint64 mediump_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:783
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:464
highp_i32vec3 i32vec3
Default precision 32 bit signed integer vector of 3 components type.
Definition: fwd.hpp:531
highp_f32mat3x4 f32mat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2433
aligned_highp_dvec2 aligned_dvec2
2 components vector of double-precision floating-point numbers.
aligned_highp_uvec2 aligned_uvec2
2 components vector of unsigned integer numbers.
highp_u8vec4 u8vec4
Default precision 8 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:985
detail::int64 highp_int64_t
High precision 64 bit signed integer type.
Definition: fwd.hpp:224
highp_i64vec1 i64vec1
Default precision 64 bit signed integer scalar type.
Definition: fwd.hpp:682
highp_ivec2 ivec2
2 components vector of signed integer numbers.
Definition: type_vec.hpp:508
detail::uint16 mediump_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:759
detail::uint64 u64
64 bit unsigned integer type.
Definition: fwd.hpp:906
detail::int64 lowp_int64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:112
detail::int16 lowp_int16_t
Low precision 16 bit signed integer type.
Definition: fwd.hpp:120
detail::int16 mediump_int16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:152
aligned_highp_vec1 aligned_vec1
1 component vector of floating-point numbers.
detail::int16 int16_t
16 bit signed integer type.
Definition: fwd.hpp:272
detail::int64 int64_t
64 bit signed integer type.
Definition: fwd.hpp:280
detail::int32 i32
32 bit signed integer type.
Definition: fwd.hpp:293
detail::uint32 lowp_uint32_t
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:728
aligned_highp_ivec2 aligned_ivec2
2 components vector of signed integer numbers.
aligned_highp_ivec3 aligned_ivec3
3 components vector of signed integer numbers.
detail::int16 highp_int16
High precision 16 bit signed integer type.
Definition: fwd.hpp:200
detail::uint16 uint16_t
16 bit unsigned integer type.
Definition: fwd.hpp:881
highp_f32quat f32quat
Default single-precision floating-point quaternion.
Definition: fwd.hpp:2461
highp_f64vec2 f64vec2
Default double-precision floating-point vector of 2 components.
Definition: fwd.hpp:2507
highp_uvec4 uvec4
4 components vector of unsigned integer numbers.
Definition: type_vec.hpp:545
detail::int64 i64
64 bit signed integer type.
Definition: fwd.hpp:297
highp_f64mat2x4 f64mat2x4
Default double-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2527
highp_f64mat3x3 f64mat3x3
Default double-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2535
detail::int16 highp_int16_t
High precision 16 bit signed integer type.
Definition: fwd.hpp:216
highp_f32mat3x2 fmat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2355
aligned_highp_vec3 aligned_vec3
3 components vector of floating-point numbers.
highp_u8vec1 u8vec1
Default precision 8 bit unsigned integer scalar type.
Definition: fwd.hpp:973
detail::int8 highp_int8_t
High precision 8 bit signed integer type.
Definition: fwd.hpp:212