| 0.9.9 API documentation

ext.hpp
Go to the documentation of this file.
1
5 #include "detail/setup.hpp"
6
7 #pragma once
8
9 #include "glm.hpp"
10
11 #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_MESSAGE_EXT_INCLUDED_DISPLAYED)
12 # define GLM_MESSAGE_EXT_INCLUDED_DISPLAYED
13 # pragma message("GLM: All extensions included (not recommended)")
14 #endif//GLM_MESSAGES
15
16 #include "./ext/matrix_double2x2.hpp"
17 #include "./ext/matrix_double2x2_precision.hpp"
18 #include "./ext/matrix_double2x3.hpp"
19 #include "./ext/matrix_double2x3_precision.hpp"
20 #include "./ext/matrix_double2x4.hpp"
21 #include "./ext/matrix_double2x4_precision.hpp"
22 #include "./ext/matrix_double3x2.hpp"
23 #include "./ext/matrix_double3x2_precision.hpp"
24 #include "./ext/matrix_double3x3.hpp"
25 #include "./ext/matrix_double3x3_precision.hpp"
26 #include "./ext/matrix_double3x4.hpp"
27 #include "./ext/matrix_double3x4_precision.hpp"
28 #include "./ext/matrix_double4x2.hpp"
29 #include "./ext/matrix_double4x2_precision.hpp"
30 #include "./ext/matrix_double4x3.hpp"
31 #include "./ext/matrix_double4x3_precision.hpp"
32 #include "./ext/matrix_double4x4.hpp"
33 #include "./ext/matrix_double4x4_precision.hpp"
34
35 #include "./ext/matrix_float2x2.hpp"
36 #include "./ext/matrix_float2x2_precision.hpp"
37 #include "./ext/matrix_float2x3.hpp"
38 #include "./ext/matrix_float2x3_precision.hpp"
39 #include "./ext/matrix_float2x4.hpp"
40 #include "./ext/matrix_float2x4_precision.hpp"
41 #include "./ext/matrix_float3x2.hpp"
42 #include "./ext/matrix_float3x2_precision.hpp"
43 #include "./ext/matrix_float3x3.hpp"
44 #include "./ext/matrix_float3x3_precision.hpp"
45 #include "./ext/matrix_float3x4.hpp"
46 #include "./ext/matrix_float3x4_precision.hpp"
47 #include "./ext/matrix_float4x2.hpp"
48 #include "./ext/matrix_float4x2_precision.hpp"
49 #include "./ext/matrix_float4x3.hpp"
50 #include "./ext/matrix_float4x3_precision.hpp"
51 #include "./ext/matrix_float4x4.hpp"
52 #include "./ext/matrix_float4x4_precision.hpp"
53
54 #include "./ext/matrix_relational.hpp"
55
56 #include "./ext/quaternion_double.hpp"
57 #include "./ext/quaternion_double_precision.hpp"
58 #include "./ext/quaternion_float.hpp"
59 #include "./ext/quaternion_float_precision.hpp"
60 #include "./ext/quaternion_geometric.hpp"
61 #include "./ext/quaternion_relational.hpp"
62
63 #include "./ext/scalar_constants.hpp"
64 #include "./ext/scalar_float_sized.hpp"
65 #include "./ext/scalar_int_sized.hpp"
66 #include "./ext/scalar_relational.hpp"
67
68 #include "./ext/vector_bool1.hpp"
69 #include "./ext/vector_bool1_precision.hpp"
70 #include "./ext/vector_bool2.hpp"
71 #include "./ext/vector_bool2_precision.hpp"
72 #include "./ext/vector_bool3.hpp"
73 #include "./ext/vector_bool3_precision.hpp"
74 #include "./ext/vector_bool4.hpp"
75 #include "./ext/vector_bool4_precision.hpp"
76
77 #include "./ext/vector_double1.hpp"
78 #include "./ext/vector_double1_precision.hpp"
79 #include "./ext/vector_double2.hpp"
80 #include "./ext/vector_double2_precision.hpp"
81 #include "./ext/vector_double3.hpp"
82 #include "./ext/vector_double3_precision.hpp"
83 #include "./ext/vector_double4.hpp"
84 #include "./ext/vector_double4_precision.hpp"
85
86 #include "./ext/vector_float1.hpp"
87 #include "./ext/vector_float1_precision.hpp"
88 #include "./ext/vector_float2.hpp"
89 #include "./ext/vector_float2_precision.hpp"
90 #include "./ext/vector_float3.hpp"
91 #include "./ext/vector_float3_precision.hpp"
92 #include "./ext/vector_float4.hpp"
93 #include "./ext/vector_float4_precision.hpp"
94
95 #include "./ext/vector_int1.hpp"
96 #include "./ext/vector_int1_precision.hpp"
97 #include "./ext/vector_int2.hpp"
98 #include "./ext/vector_int2_precision.hpp"
99 #include "./ext/vector_int3.hpp"
100 #include "./ext/vector_int3_precision.hpp"
101 #include "./ext/vector_int4.hpp"
102 #include "./ext/vector_int4_precision.hpp"
103
104 #include "./ext/vector_relational.hpp"
105
106 #include "./ext/vector_uint1.hpp"
107 #include "./ext/vector_uint1_precision.hpp"
108 #include "./ext/vector_uint2.hpp"
109 #include "./ext/vector_uint2_precision.hpp"
110 #include "./ext/vector_uint3.hpp"
111 #include "./ext/vector_uint3_precision.hpp"
112 #include "./ext/vector_uint4.hpp"
113 #include "./ext/vector_uint4_precision.hpp"
114
115 #include "./gtc/bitfield.hpp"
116 #include "./gtc/color_space.hpp"
117 #include "./gtc/constants.hpp"
118 #include "./gtc/epsilon.hpp"
119 #include "./gtc/integer.hpp"
120 #include "./gtc/matrix_access.hpp"
121 #include "./gtc/matrix_integer.hpp"
122 #include "./gtc/matrix_inverse.hpp"
123 #include "./gtc/matrix_transform.hpp"
124 #include "./gtc/noise.hpp"
125 #include "./gtc/packing.hpp"
126 #include "./gtc/quaternion.hpp"
127 #include "./gtc/random.hpp"
128 #include "./gtc/reciprocal.hpp"
129 #include "./gtc/round.hpp"
130 #include "./gtc/type_precision.hpp"
131 #include "./gtc/type_ptr.hpp"
132 #include "./gtc/ulp.hpp"
133 #include "./gtc/vec1.hpp"
134 #if GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE
135 # include "./gtc/type_aligned.hpp"
136 #endif
137
138 #ifdef GLM_ENABLE_EXPERIMENTAL
139 #include "./gtx/associated_min_max.hpp"
140 #include "./gtx/bit.hpp"
141 #include "./gtx/closest_point.hpp"
142 #include "./gtx/color_encoding.hpp"
143 #include "./gtx/color_space.hpp"
144 #include "./gtx/color_space_YCoCg.hpp"
145 #include "./gtx/compatibility.hpp"
146 #include "./gtx/component_wise.hpp"
147 #include "./gtx/dual_quaternion.hpp"
148 #include "./gtx/euler_angles.hpp"
149 #include "./gtx/extend.hpp"
150 #include "./gtx/extended_min_max.hpp"
151 #include "./gtx/fast_exponential.hpp"
152 #include "./gtx/fast_square_root.hpp"
153 #include "./gtx/fast_trigonometry.hpp"
154 #include "./gtx/functions.hpp"
155 #include "./gtx/gradient_paint.hpp"
156 #include "./gtx/handed_coordinate_space.hpp"
157 #include "./gtx/integer.hpp"
158 #include "./gtx/intersect.hpp"
159 #include "./gtx/log_base.hpp"
160 #include "./gtx/matrix_cross_product.hpp"
161 #include "./gtx/matrix_interpolation.hpp"
162 #include "./gtx/matrix_major_storage.hpp"
163 #include "./gtx/matrix_operation.hpp"
164 #include "./gtx/matrix_query.hpp"
165 #include "./gtx/mixed_product.hpp"
166 #include "./gtx/norm.hpp"
167 #include "./gtx/normal.hpp"
168 #include "./gtx/normalize_dot.hpp"
169 #include "./gtx/number_precision.hpp"
170 #include "./gtx/optimum_pow.hpp"
171 #include "./gtx/orthonormalize.hpp"
172 #include "./gtx/perpendicular.hpp"
173 #include "./gtx/polar_coordinates.hpp"
174 #include "./gtx/projection.hpp"
175 #include "./gtx/quaternion.hpp"
176 #include "./gtx/raw_data.hpp"
177 #include "./gtx/rotate_vector.hpp"
178 #include "./gtx/spline.hpp"
179 #include "./gtx/std_based_type.hpp"
180 #if !(GLM_COMPILER & GLM_COMPILER_CUDA)
181 # include "./gtx/string_cast.hpp"
182 #endif
183 #include "./gtx/transform.hpp"
184 #include "./gtx/transform2.hpp"
185 #include "./gtx/vec_swizzle.hpp"
186 #include "./gtx/vector_angle.hpp"
187 #include "./gtx/vector_query.hpp"
188 #include "./gtx/wrap.hpp"
189
190 #if GLM_HAS_TEMPLATE_ALIASES
191 # include "./gtx/scalar_multiplication.hpp"
192 #endif
193
194 #if GLM_HAS_RANGE_FOR
195 # include "./gtx/range.hpp"
196 #endif
197 #endif//GLM_ENABLE_EXPERIMENTAL
quaternion_relational.hpp
GLM_EXT_quaternion_relational
matrix_interpolation.hpp
GLM_GTX_matrix_interpolation
random.hpp
GLM_GTC_random
matrix_double4x2.hpp
Core features
matrix_inverse.hpp
GLM_GTC_matrix_inverse
matrix_double3x3.hpp
Core features
vector_double3_precision.hpp
Core features
vector_uint3_precision.hpp
Core features
scalar_float_sized.hpp
GLM_EXT_scalar_float_sized
mixed_product.hpp
GLM_GTX_mixed_producte
fast_trigonometry.hpp
GLM_GTX_fast_trigonometry
vector_uint1_precision.hpp
GLM_EXT_vector_uint1_precision
matrix_float4x4_precision.hpp
Core features
quaternion.hpp
GLM_GTX_quaternion
matrix_major_storage.hpp
GLM_GTX_matrix_major_storage
vector_int4.hpp
Core features
quaternion_float.hpp
GLM_EXT_quaternion_float
matrix_cross_product.hpp
GLM_GTX_matrix_cross_product
scalar_int_sized.hpp
GLM_EXT_scalar_int_sized
norm.hpp
GLM_GTX_norm
matrix_double2x4_precision.hpp
Core features
matrix_operation.hpp
GLM_GTX_matrix_operation
fast_square_root.hpp
GLM_GTX_fast_square_root
vector_uint2.hpp
Core features
matrix_float4x4.hpp
Core features
extend.hpp
GLM_GTX_extend
vector_int4_precision.hpp
Core features
matrix_float4x2.hpp
Core features
component_wise.hpp
GLM_GTX_component_wise
vector_int2_precision.hpp
Core features
matrix_float3x3.hpp
Core features
vector_uint2_precision.hpp
Core features
vector_float4_precision.hpp
Core features
quaternion_geometric.hpp
GLM_EXT_quaternion_geometric
extended_min_max.hpp
GLM_GTX_extented_min_max
dual_quaternion.hpp
GLM_GTX_dual_quaternion
vector_double4.hpp
Core features
matrix_float3x3_precision.hpp
Core features
transform.hpp
GLM_GTX_transform
vector_relational.hpp
GLM_EXT_vector_relational
color_encoding.hpp
GLM_GTX_color_encoding
vector_double2.hpp
Core features
matrix_float2x4_precision.hpp
Core features
spline.hpp
GLM_GTX_spline
scalar_relational.hpp
GLM_EXT_scalar_relational
vec1.hpp
GLM_GTC_vec1
matrix_float4x3.hpp
Core features
matrix_float2x2_precision.hpp
Core features
quaternion_float_precision.hpp
GLM_EXT_quaternion_float_precision
matrix_transform.hpp
GLM_GTC_matrix_transform
vector_int3_precision.hpp
Core features
matrix_float3x4.hpp
Core features
quaternion_double.hpp
GLM_EXT_quaternion_double
intersect.hpp
GLM_GTX_intersect
vector_double4_precision.hpp
Core features
transform2.hpp
GLM_GTX_transform2
vector_double2_precision.hpp
Core features
std_based_type.hpp
GLM_GTX_std_based_type
packing.hpp
GLM_GTC_packing
vector_bool3.hpp
Core features
vector_int3.hpp
Core features
quaternion_double_precision.hpp
GLM_EXT_quaternion_double_precision
polar_coordinates.hpp
GLM_GTX_polar_coordinates
integer.hpp
GLM_GTC_integer
compatibility.hpp
GLM_GTX_compatibility
vector_double3.hpp
Core features
vector_int1.hpp
GLM_EXT_vector_int1
matrix_float3x2_precision.hpp
Core features
string_cast.hpp
GLM_GTX_string_cast
type_aligned.hpp
GLM_GTC_type_aligned
vector_float3.hpp
Core features
quaternion.hpp
GLM_GTC_quaternion
wrap.hpp
GLM_GTX_wrap
matrix_double2x3_precision.hpp
Core features
log_base.hpp
GLM_GTX_log_base
constants.hpp
GLM_GTC_constants
handed_coordinate_space.hpp
GLM_GTX_handed_coordinate_space
color_space_YCoCg.hpp
GLM_GTX_color_space_YCoCg
vector_int1_precision.hpp
GLM_EXT_vector_int1_precision
matrix_float3x2.hpp
Core features
associated_min_max.hpp
GLM_GTX_associated_min_max
vector_double1_precision.hpp
GLM_EXT_vector_double1_precision
vector_float3_precision.hpp
Core features
matrix_float2x3.hpp
Core features
scalar_multiplication.hpp
Experimental extensions
type_precision.hpp
GLM_GTC_type_precision
vector_float1_precision.hpp
GLM_EXT_vector_float1_precision
matrix_double4x4.hpp
Core features
vec_swizzle.hpp
GLM_GTX_vec_swizzle
vector_int2.hpp
Core features
vector_float4.hpp
Core features
bit.hpp
GLM_GTX_bit
vector_double1.hpp
GLM_EXT_vector_double1
matrix_float2x3_precision.hpp
Core features
rotate_vector.hpp
GLM_GTX_rotate_vector
type_ptr.hpp
GLM_GTC_type_ptr
vector_bool3_precision.hpp
Core features
matrix_double4x4_precision.hpp
Core features
projection.hpp
GLM_GTX_projection
integer.hpp
GLM_GTX_integer
reciprocal.hpp
GLM_GTC_reciprocal
vector_bool1_precision.hpp
GLM_EXT_vector_bool1_precision
matrix_double4x2_precision.hpp
Core features
optimum_pow.hpp
GLM_GTX_optimum_pow
color_space.hpp
GLM_GTC_color_space
closest_point.hpp
GLM_GTX_closest_point
noise.hpp
GLM_GTC_noise
matrix_float2x4.hpp
Core features
matrix_double3x3_precision.hpp
Core features
ulp.hpp
GLM_GTC_ulp
vector_float2_precision.hpp
Core features
matrix_float2x2.hpp
Core features
matrix_double2x4.hpp
Core features
vector_query.hpp
GLM_GTX_vector_query
epsilon.hpp
GLM_GTC_epsilon
vector_bool4.hpp
Core features
matrix_double2x2.hpp
Core features
range.hpp
GLM_GTX_range
glm.hpp
Core features
vector_bool2.hpp
Core features
orthonormalize.hpp
GLM_GTX_orthonormalize
color_space.hpp
GLM_GTX_color_space
vector_uint4_precision.hpp
Core features
normal.hpp
GLM_GTX_normal
vector_bool4_precision.hpp
Core features
vector_float2.hpp
Core features
raw_data.hpp
GLM_GTX_raw_data
matrix_query.hpp
GLM_GTX_matrix_query
vector_angle.hpp
GLM_GTX_vector_angle
vector_bool2_precision.hpp
Core features
matrix_double4x3_precision.hpp
Core features
matrix_double2x2_precision.hpp
Core features
perpendicular.hpp
GLM_GTX_perpendicular
bitfield.hpp
GLM_GTC_bitfield
functions.hpp
GLM_GTX_functions
vector_uint3.hpp
Core features
matrix_double2x3.hpp
Core features
vector_uint1.hpp
GLM_EXT_vector_uint1
round.hpp
GLM_GTC_round
matrix_double4x3.hpp
Core features
vector_bool1.hpp
GLM_EXT_vector_bool1
matrix_double3x4.hpp
Core features
number_precision.hpp
GLM_GTX_number_precision
matrix_access.hpp
GLM_GTC_matrix_access
matrix_double3x2.hpp
Core features
gradient_paint.hpp
GLM_GTX_gradient_paint
matrix_relational.hpp
GLM_EXT_matrix_relational
vector_float1.hpp
GLM_EXT_vector_float1
fast_exponential.hpp
GLM_GTX_fast_exponential
matrix_float4x3_precision.hpp
Core features
euler_angles.hpp
GLM_GTX_euler_angles
matrix_float3x4_precision.hpp
Core features
matrix_double3x4_precision.hpp
Core features
normalize_dot.hpp
GLM_GTX_normalize_dot
vector_uint4.hpp
Core features
matrix_integer.hpp
GLM_GTC_matrix_integer
scalar_constants.hpp
GLM_EXT_scalar_constants
matrix_double3x2_precision.hpp
Core features