Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
acgl
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ACGL
acgl
Commits
8e451e99
Commit
8e451e99
authored
Jan 14, 2016
by
Philip Trettner
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updated GLM to 0.9.7.2
parent
cbfd4f79
Pipeline
#729
passed with stage
Changes
254
Pipelines
1
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
254 changed files
with
59690 additions
and
57728 deletions
+59690
-57728
include/glm/common.hpp
include/glm/common.hpp
+35
-35
include/glm/detail/_features.hpp
include/glm/detail/_features.hpp
+428
-428
include/glm/detail/_fixes.hpp
include/glm/detail/_fixes.hpp
+59
-59
include/glm/detail/_noise.hpp
include/glm/detail/_noise.hpp
+136
-136
include/glm/detail/_swizzle.hpp
include/glm/detail/_swizzle.hpp
+833
-833
include/glm/detail/_swizzle_func.hpp
include/glm/detail/_swizzle_func.hpp
+725
-725
include/glm/detail/_vectorize.hpp
include/glm/detail/_vectorize.hpp
+160
-160
include/glm/detail/dummy.cpp
include/glm/detail/dummy.cpp
+232
-232
include/glm/detail/func_common.hpp
include/glm/detail/func_common.hpp
+456
-456
include/glm/detail/func_common.inl
include/glm/detail/func_common.inl
+764
-758
include/glm/detail/func_exponential.hpp
include/glm/detail/func_exponential.hpp
+132
-132
include/glm/detail/func_exponential.inl
include/glm/detail/func_exponential.inl
+161
-161
include/glm/detail/func_geometric.hpp
include/glm/detail/func_geometric.hpp
+142
-142
include/glm/detail/func_geometric.inl
include/glm/detail/func_geometric.inl
+201
-201
include/glm/detail/func_integer.hpp
include/glm/detail/func_integer.hpp
+232
-232
include/glm/detail/func_integer.inl
include/glm/detail/func_integer.inl
+389
-389
include/glm/detail/func_matrix.hpp
include/glm/detail/func_matrix.hpp
+178
-178
include/glm/detail/func_matrix.inl
include/glm/detail/func_matrix.inl
+310
-310
include/glm/detail/func_packing.hpp
include/glm/detail/func_packing.hpp
+197
-197
include/glm/detail/func_packing.inl
include/glm/detail/func_packing.inl
+215
-215
include/glm/detail/func_trigonometric.hpp
include/glm/detail/func_trigonometric.hpp
+205
-205
include/glm/detail/func_trigonometric.inl
include/glm/detail/func_trigonometric.inl
+224
-224
include/glm/detail/func_vector_relational.hpp
include/glm/detail/func_vector_relational.hpp
+140
-140
include/glm/detail/func_vector_relational.inl
include/glm/detail/func_vector_relational.inl
+131
-131
include/glm/detail/glm.cpp
include/glm/detail/glm.cpp
+286
-286
include/glm/detail/intrinsic_common.hpp
include/glm/detail/intrinsic_common.hpp
+87
-87
include/glm/detail/intrinsic_common.inl
include/glm/detail/intrinsic_common.inl
+313
-313
include/glm/detail/intrinsic_exponential.hpp
include/glm/detail/intrinsic_exponential.hpp
+77
-77
include/glm/detail/intrinsic_exponential.inl
include/glm/detail/intrinsic_exponential.inl
+27
-27
include/glm/detail/intrinsic_geometric.hpp
include/glm/detail/intrinsic_geometric.hpp
+74
-74
include/glm/detail/intrinsic_geometric.inl
include/glm/detail/intrinsic_geometric.inl
+147
-147
include/glm/detail/intrinsic_integer.hpp
include/glm/detail/intrinsic_integer.hpp
+48
-48
include/glm/detail/intrinsic_integer.inl
include/glm/detail/intrinsic_integer.inl
+139
-139
include/glm/detail/intrinsic_matrix.hpp
include/glm/detail/intrinsic_matrix.hpp
+67
-67
include/glm/detail/intrinsic_matrix.inl
include/glm/detail/intrinsic_matrix.inl
+1070
-1070
include/glm/detail/intrinsic_trigonometric.hpp
include/glm/detail/intrinsic_trigonometric.hpp
+46
-46
include/glm/detail/intrinsic_trigonometric.inl
include/glm/detail/intrinsic_trigonometric.inl
+27
-27
include/glm/detail/intrinsic_vector_relational.hpp
include/glm/detail/intrinsic_vector_relational.hpp
+46
-46
include/glm/detail/intrinsic_vector_relational.inl
include/glm/detail/intrinsic_vector_relational.inl
+365
-365
include/glm/detail/precision.hpp
include/glm/detail/precision.hpp
+53
-45
include/glm/detail/setup.hpp
include/glm/detail/setup.hpp
+1012
-1026
include/glm/detail/type_float.hpp
include/glm/detail/type_float.hpp
+96
-96
include/glm/detail/type_gentype.hpp
include/glm/detail/type_gentype.hpp
+224
-224
include/glm/detail/type_gentype.inl
include/glm/detail/type_gentype.inl
+370
-370
include/glm/detail/type_half.hpp
include/glm/detail/type_half.hpp
+48
-48
include/glm/detail/type_half.inl
include/glm/detail/type_half.inl
+277
-277
include/glm/detail/type_int.hpp
include/glm/detail/type_int.hpp
+326
-326
include/glm/detail/type_mat.hpp
include/glm/detail/type_mat.hpp
+793
-793
include/glm/detail/type_mat.inl
include/glm/detail/type_mat.inl
+32
-32
include/glm/detail/type_mat2x2.hpp
include/glm/detail/type_mat2x2.hpp
+246
-229
include/glm/detail/type_mat2x2.inl
include/glm/detail/type_mat2x2.inl
+564
-551
include/glm/detail/type_mat2x3.hpp
include/glm/detail/type_mat2x3.hpp
+224
-206
include/glm/detail/type_mat2x3.inl
include/glm/detail/type_mat2x3.inl
+522
-509
include/glm/detail/type_mat2x4.hpp
include/glm/detail/type_mat2x4.hpp
+226
-208
include/glm/detail/type_mat2x4.inl
include/glm/detail/type_mat2x4.inl
+531
-518
include/glm/detail/type_mat3x2.hpp
include/glm/detail/type_mat3x2.hpp
+231
-213
include/glm/detail/type_mat3x2.inl
include/glm/detail/type_mat3x2.inl
+556
-543
include/glm/detail/type_mat3x3.hpp
include/glm/detail/type_mat3x3.hpp
+254
-236
include/glm/detail/type_mat3x3.inl
include/glm/detail/type_mat3x3.inl
+648
-634
include/glm/detail/type_mat3x4.hpp
include/glm/detail/type_mat3x4.hpp
+231
-213
include/glm/detail/type_mat3x4.inl
include/glm/detail/type_mat3x4.inl
+596
-583
include/glm/detail/type_mat4x2.hpp
include/glm/detail/type_mat4x2.hpp
+236
-218
include/glm/detail/type_mat4x2.inl
include/glm/detail/type_mat4x2.inl
+602
-589
include/glm/detail/type_mat4x3.hpp
include/glm/detail/type_mat4x3.hpp
+236
-218
include/glm/detail/type_mat4x3.inl
include/glm/detail/type_mat4x3.inl
+626
-613
include/glm/detail/type_mat4x4.hpp
include/glm/detail/type_mat4x4.hpp
+259
-241
include/glm/detail/type_mat4x4.inl
include/glm/detail/type_mat4x4.inl
+789
-776
include/glm/detail/type_vec.hpp
include/glm/detail/type_vec.hpp
+512
-512
include/glm/detail/type_vec.inl
include/glm/detail/type_vec.inl
+31
-31
include/glm/detail/type_vec1.hpp
include/glm/detail/type_vec1.hpp
+339
-316
include/glm/detail/type_vec1.inl
include/glm/detail/type_vec1.inl
+622
-597
include/glm/detail/type_vec2.hpp
include/glm/detail/type_vec2.hpp
+431
-405
include/glm/detail/type_vec2.inl
include/glm/detail/type_vec2.inl
+947
-916
include/glm/detail/type_vec3.hpp
include/glm/detail/type_vec3.hpp
+454
-424
include/glm/detail/type_vec3.inl
include/glm/detail/type_vec3.inl
+1079
-1035
include/glm/detail/type_vec4.hpp
include/glm/detail/type_vec4.hpp
+567
-529
include/glm/detail/type_vec4.inl
include/glm/detail/type_vec4.inl
+1201
-1117
include/glm/detail/type_vec4_avx.inl
include/glm/detail/type_vec4_avx.inl
+41
-41
include/glm/detail/type_vec4_avx2.inl
include/glm/detail/type_vec4_avx2.inl
+41
-41
include/glm/detail/type_vec4_sse2.inl
include/glm/detail/type_vec4_sse2.inl
+77
-77
include/glm/exponential.hpp
include/glm/exponential.hpp
+35
-35
include/glm/ext.hpp
include/glm/ext.hpp
+143
-143
include/glm/fwd.hpp
include/glm/fwd.hpp
+2599
-2599
include/glm/geometric.hpp
include/glm/geometric.hpp
+35
-35
include/glm/glm.hpp
include/glm/glm.hpp
+117
-117
include/glm/gtc/bitfield.hpp
include/glm/gtc/bitfield.hpp
+236
-236
include/glm/gtc/bitfield.inl
include/glm/gtc/bitfield.inl
+542
-542
include/glm/gtc/color_space.hpp
include/glm/gtc/color_space.hpp
+81
-81
include/glm/gtc/color_space.inl
include/glm/gtc/color_space.inl
+104
-104
include/glm/gtc/constants.hpp
include/glm/gtc/constants.hpp
+205
-205
include/glm/gtc/constants.inl
include/glm/gtc/constants.inl
+210
-210
include/glm/gtc/epsilon.hpp
include/glm/gtc/epsilon.hpp
+102
-102
include/glm/gtc/epsilon.inl
include/glm/gtc/epsilon.inl
+154
-154
include/glm/gtc/integer.hpp
include/glm/gtc/integer.hpp
+105
-105
include/glm/gtc/integer.inl
include/glm/gtc/integer.inl
+65
-65
include/glm/gtc/matrix_access.hpp
include/glm/gtc/matrix_access.hpp
+88
-88
include/glm/gtc/matrix_access.inl
include/glm/gtc/matrix_access.inl
+92
-92
include/glm/gtc/matrix_integer.hpp
include/glm/gtc/matrix_integer.hpp
+515
-515
include/glm/gtc/matrix_inverse.hpp
include/glm/gtc/matrix_inverse.hpp
+78
-78
include/glm/gtc/matrix_inverse.inl
include/glm/gtc/matrix_inverse.inl
+149
-148
include/glm/gtc/matrix_transform.hpp
include/glm/gtc/matrix_transform.hpp
+494
-394
include/glm/gtc/matrix_transform.inl
include/glm/gtc/matrix_transform.inl
+704
-538
include/glm/gtc/noise.hpp
include/glm/gtc/noise.hpp
+89
-89
include/glm/gtc/noise.inl
include/glm/gtc/noise.inl
+837
-837
include/glm/gtc/packing.hpp
include/glm/gtc/packing.hpp
+608
-478
include/glm/gtc/packing.inl
include/glm/gtc/packing.inl
+806
-490
include/glm/gtc/quaternion.hpp
include/glm/gtc/quaternion.hpp
+412
-379
include/glm/gtc/quaternion.inl
include/glm/gtc/quaternion.inl
+858
-785
include/glm/gtc/random.hpp
include/glm/gtc/random.hpp
+127
-120
include/glm/gtc/random.inl
include/glm/gtc/random.inl
+379
-379
include/glm/gtc/reciprocal.hpp
include/glm/gtc/reciprocal.hpp
+164
-134
include/glm/gtc/reciprocal.inl
include/glm/gtc/reciprocal.inl
+221
-221
include/glm/gtc/round.hpp
include/glm/gtc/round.hpp
+203
-203
include/glm/gtc/round.inl
include/glm/gtc/round.inl
+372
-378
include/glm/gtc/type_precision.hpp
include/glm/gtc/type_precision.hpp
+890
-890
include/glm/gtc/type_precision.inl
include/glm/gtc/type_precision.inl
+36
-36
include/glm/gtc/type_ptr.hpp
include/glm/gtc/type_ptr.hpp
+178
-178
include/glm/gtc/type_ptr.inl
include/glm/gtc/type_ptr.inl
+479
-479
include/glm/gtc/ulp.hpp
include/glm/gtc/ulp.hpp
+92
-92
include/glm/gtc/ulp.inl
include/glm/gtc/ulp.inl
+350
-350
include/glm/gtc/vec1.hpp
include/glm/gtc/vec1.hpp
+193
-193
include/glm/gtc/vec1.inl
include/glm/gtc/vec1.inl
+31
-31
include/glm/gtx/associated_min_max.hpp
include/glm/gtx/associated_min_max.hpp
+231
-231
include/glm/gtx/associated_min_max.inl
include/glm/gtx/associated_min_max.inl
+384
-384
include/glm/gtx/bit.hpp
include/glm/gtx/bit.hpp
+120
-120
include/glm/gtx/bit.inl
include/glm/gtx/bit.inl
+107
-107
include/glm/gtx/closest_point.hpp
include/glm/gtx/closest_point.hpp
+74
-74
include/glm/gtx/closest_point.inl
include/glm/gtx/closest_point.inl
+75
-75
include/glm/gtx/color_space.hpp
include/glm/gtx/color_space.hpp
+97
-97
include/glm/gtx/color_space.inl
include/glm/gtx/color_space.inl
+172
-172
include/glm/gtx/color_space_YCoCg.hpp
include/glm/gtx/color_space_YCoCg.hpp
+85
-85
include/glm/gtx/color_space_YCoCg.inl
include/glm/gtx/color_space_YCoCg.inl
+137
-137
include/glm/gtx/common.hpp
include/glm/gtx/common.hpp
+82
-82
include/glm/gtx/common.inl
include/glm/gtx/common.inl
+141
-141
include/glm/gtx/compatibility.hpp
include/glm/gtx/compatibility.hpp
+159
-159
include/glm/gtx/compatibility.inl
include/glm/gtx/compatibility.inl
+94
-94
include/glm/gtx/component_wise.hpp
include/glm/gtx/component_wise.hpp
+92
-84
include/glm/gtx/component_wise.inl
include/glm/gtx/component_wise.inl
+157
-70
include/glm/gtx/dual_quaternion.hpp
include/glm/gtx/dual_quaternion.hpp
+310
-297
include/glm/gtx/dual_quaternion.inl
include/glm/gtx/dual_quaternion.inl
+402
-402
include/glm/gtx/euler_angles.hpp
include/glm/gtx/euler_angles.hpp
+172
-172
include/glm/gtx/euler_angles.inl
include/glm/gtx/euler_angles.inl
+341
-341
include/glm/gtx/extend.hpp
include/glm/gtx/extend.hpp
+67
-67
include/glm/gtx/extend.inl
include/glm/gtx/extend.inl
+78
-78
include/glm/gtx/extended_min_max.hpp
include/glm/gtx/extended_min_max.hpp
+162
-0
include/glm/gtx/extended_min_max.inl
include/glm/gtx/extended_min_max.inl
+169
-0
include/glm/gtx/fast_exponential.hpp
include/glm/gtx/fast_exponential.hpp
+120
-120
include/glm/gtx/fast_exponential.inl
include/glm/gtx/fast_exponential.inl
+166
-166
include/glm/gtx/fast_square_root.hpp
include/glm/gtx/fast_square_root.hpp
+117
-117
include/glm/gtx/fast_square_root.inl
include/glm/gtx/fast_square_root.inl
+110
-110
include/glm/gtx/fast_trigonometry.hpp
include/glm/gtx/fast_trigonometry.hpp
+104
-104
include/glm/gtx/fast_trigonometry.inl
include/glm/gtx/fast_trigonometry.inl
+172
-172
include/glm/gtx/float_notmalize.inl
include/glm/gtx/float_notmalize.inl
+43
-0
include/glm/gtx/gradient_paint.hpp
include/glm/gtx/gradient_paint.hpp
+77
-77
include/glm/gtx/gradient_paint.inl
include/glm/gtx/gradient_paint.inl
+66
-66
include/glm/gtx/handed_coordinate_space.hpp
include/glm/gtx/handed_coordinate_space.hpp
+75
-75
include/glm/gtx/handed_coordinate_space.inl
include/glm/gtx/handed_coordinate_space.inl
+56
-56
include/glm/gtx/hash.hpp
include/glm/gtx/hash.hpp
+163
-163
include/glm/gtx/hash.inl
include/glm/gtx/hash.inl
+214
-214
include/glm/gtx/integer.hpp
include/glm/gtx/integer.hpp
+101
-101
include/glm/gtx/integer.inl
include/glm/gtx/integer.inl
+211
-211
include/glm/gtx/intersect.hpp
include/glm/gtx/intersect.hpp
+116
-112
include/glm/gtx/intersect.inl
include/glm/gtx/intersect.inl
+176
-217
include/glm/gtx/io.hpp
include/glm/gtx/io.hpp
+232
-232
include/glm/gtx/io.inl
include/glm/gtx/io.inl
+656
-656
include/glm/gtx/log_base.hpp
include/glm/gtx/log_base.hpp
+73
-73
include/glm/gtx/log_base.inl
include/glm/gtx/log_base.inl
+47
-47
include/glm/gtx/matrix_cross_product.hpp
include/glm/gtx/matrix_cross_product.hpp
+72
-72
include/glm/gtx/matrix_cross_product.inl
include/glm/gtx/matrix_cross_product.inl
+67
-67
include/glm/gtx/matrix_decompose.hpp
include/glm/gtx/matrix_decompose.hpp
+70
-70
include/glm/gtx/matrix_decompose.inl
include/glm/gtx/matrix_decompose.inl
+231
-231
include/glm/gtx/matrix_interpolation.hpp
include/glm/gtx/matrix_interpolation.hpp
+89
-89
include/glm/gtx/matrix_interpolation.inl
include/glm/gtx/matrix_interpolation.inl
+163
-163
include/glm/gtx/matrix_major_storage.hpp
include/glm/gtx/matrix_major_storage.hpp
+144
-144
include/glm/gtx/matrix_major_storage.inl
include/glm/gtx/matrix_major_storage.inl
+196
-196
include/glm/gtx/matrix_operation.hpp
include/glm/gtx/matrix_operation.hpp
+113
-113
include/glm/gtx/matrix_operation.inl
include/glm/gtx/matrix_operation.inl
+147
-147
include/glm/gtx/matrix_query.hpp
include/glm/gtx/matrix_query.hpp
+102
-102
include/glm/gtx/matrix_query.inl
include/glm/gtx/matrix_query.inl
+143
-143
include/glm/gtx/matrix_transform_2d.hpp
include/glm/gtx/matrix_transform_2d.hpp
+106
-106
include/glm/gtx/matrix_transform_2d.inl
include/glm/gtx/matrix_transform_2d.inl
+97
-97
include/glm/gtx/mixed_product.hpp
include/glm/gtx/mixed_product.hpp
+66
-66
include/glm/gtx/mixed_product.inl
include/glm/gtx/mixed_product.inl
+45
-45
include/glm/gtx/norm.hpp
include/glm/gtx/norm.hpp
+128
-128
include/glm/gtx/norm.inl
include/glm/gtx/norm.inl
+170
-170
include/glm/gtx/normal.hpp
include/glm/gtx/normal.hpp
+68
-68
include/glm/gtx/normal.inl
include/glm/gtx/normal.inl
+45
-45
include/glm/gtx/normalize_dot.hpp
include/glm/gtx/normalize_dot.hpp
+74
-74
include/glm/gtx/normalize_dot.inl
include/glm/gtx/normalize_dot.inl
+46
-46
include/glm/gtx/number_precision.hpp
include/glm/gtx/number_precision.hpp
+86
-86
include/glm/gtx/number_precision.inl
include/glm/gtx/number_precision.inl
+36
-36
include/glm/gtx/optimum_pow.hpp
include/glm/gtx/optimum_pow.hpp
+79
-79
include/glm/gtx/optimum_pow.inl
include/glm/gtx/optimum_pow.inl
+52
-52
include/glm/gtx/orthonormalize.hpp
include/glm/gtx/orthonormalize.hpp
+74
-74
include/glm/gtx/orthonormalize.inl
include/glm/gtx/orthonormalize.inl
+59
-59
include/glm/gtx/perpendicular.hpp
include/glm/gtx/perpendicular.hpp
+68
-68
include/glm/gtx/perpendicular.inl
include/glm/gtx/perpendicular.inl
+44
-44
include/glm/gtx/polar_coordinates.hpp
include/glm/gtx/polar_coordinates.hpp
+73
-73
include/glm/gtx/polar_coordinates.inl
include/glm/gtx/polar_coordinates.inl
+66
-66
include/glm/gtx/projection.hpp
include/glm/gtx/projection.hpp
+65
-65
include/glm/gtx/projection.inl
include/glm/gtx/projection.inl
+40
-40
include/glm/gtx/quaternion.hpp
include/glm/gtx/quaternion.hpp
+214
-214
include/glm/gtx/quaternion.inl
include/glm/gtx/quaternion.inl
+283
-283
include/glm/gtx/range.hpp
include/glm/gtx/range.hpp
+102
-102
include/glm/gtx/raw_data.hpp
include/glm/gtx/raw_data.hpp
+76
-76
include/glm/gtx/raw_data.inl
include/glm/gtx/raw_data.inl
+31
-31
include/glm/gtx/rotate_normalized_axis.hpp
include/glm/gtx/rotate_normalized_axis.hpp
+93
-93
include/glm/gtx/rotate_normalized_axis.inl
include/glm/gtx/rotate_normalized_axis.inl
+88
-88
include/glm/gtx/rotate_vector.hpp
include/glm/gtx/rotate_vector.hpp
+146
-146
include/glm/gtx/rotate_vector.inl
include/glm/gtx/rotate_vector.inl
+217
-217
include/glm/gtx/scalar_multiplication.hpp
include/glm/gtx/scalar_multiplication.hpp
+98
-98
include/glm/gtx/scalar_relational.hpp
include/glm/gtx/scalar_relational.hpp
+61
-61
include/glm/gtx/scalar_relational.inl
include/glm/gtx/scalar_relational.inl
+118
-118
include/glm/gtx/simd_mat4.hpp
include/glm/gtx/simd_mat4.hpp
+222
-217
include/glm/gtx/simd_mat4.inl
include/glm/gtx/simd_mat4.inl
+611
-606
include/glm/gtx/simd_quat.hpp
include/glm/gtx/simd_quat.hpp
+360
-340
include/glm/gtx/simd_quat.inl
include/glm/gtx/simd_quat.inl
+669
-650
include/glm/gtx/simd_vec4.hpp
include/glm/gtx/simd_vec4.hpp
+598
-579
include/glm/gtx/simd_vec4.inl
include/glm/gtx/simd_vec4.inl
+752
-733
include/glm/gtx/spline.hpp
include/glm/gtx/spline.hpp
+90
-90
include/glm/gtx/spline.inl
include/glm/gtx/spline.inl
+92
-92
include/glm/gtx/std_based_type.hpp
include/glm/gtx/std_based_type.hpp
+92
-92
include/glm/gtx/std_based_type.inl
include/glm/gtx/std_based_type.inl
+36
-36
include/glm/gtx/string_cast.hpp
include/glm/gtx/string_cast.hpp
+76
-76
include/glm/gtx/string_cast.inl
include/glm/gtx/string_cast.inl
+487
-487
include/glm/gtx/transform.hpp
include/glm/gtx/transform.hpp
+85
-85
include/glm/gtx/transform.inl
include/glm/gtx/transform.inl
+60
-60
include/glm/gtx/transform2.hpp
include/glm/gtx/transform2.hpp
+136
-136
include/glm/gtx/transform2.inl
include/glm/gtx/transform2.inl
+177
-177
include/glm/gtx/type_aligned.hpp
include/glm/gtx/type_aligned.hpp
+995
-995
include/glm/gtx/type_aligned.inl
include/glm/gtx/type_aligned.inl
+36
-36
include/glm/gtx/vector_angle.hpp
include/glm/gtx/vector_angle.hpp
+89
-89
include/glm/gtx/vector_angle.inl
include/glm/gtx/vector_angle.inl
+87
-87
include/glm/gtx/vector_query.hpp
include/glm/gtx/vector_query.hpp
+91
-91
include/glm/gtx/vector_query.inl
include/glm/gtx/vector_query.inl
+222
-222
include/glm/gtx/wrap.hpp
include/glm/gtx/wrap.hpp
+79
-79
include/glm/gtx/wrap.inl
include/glm/gtx/wrap.inl
+178
-178
include/glm/integer.hpp
include/glm/integer.hpp
+35
-35
include/glm/mat2x2.hpp
include/glm/mat2x2.hpp
+81
-81
include/glm/mat2x3.hpp
include/glm/mat2x3.hpp
+61
-61
include/glm/mat2x4.hpp
include/glm/mat2x4.hpp
+60
-60
include/glm/mat3x2.hpp
include/glm/mat3x2.hpp
+60
-60
include/glm/mat3x3.hpp
include/glm/mat3x3.hpp
+81
-81
include/glm/mat3x4.hpp
include/glm/mat3x4.hpp
+60
-60
include/glm/mat4x2.hpp
include/glm/mat4x2.hpp
+60
-60
include/glm/mat4x3.hpp
include/glm/mat4x3.hpp
+60
-60
include/glm/mat4x4.hpp
include/glm/mat4x4.hpp
+81
-81
include/glm/matrix.hpp
include/glm/matrix.hpp
+35
-35
include/glm/packing.hpp
include/glm/packing.hpp
+35
-35
include/glm/trigonometric.hpp
include/glm/trigonometric.hpp
+35
-35
include/glm/vec2.hpp
include/glm/vec2.hpp
+35
-35
include/glm/vec3.hpp
include/glm/vec3.hpp
+35
-35
include/glm/vec4.hpp
include/glm/vec4.hpp
+35
-35
include/glm/vector_relational.hpp
include/glm/vector_relational.hpp
+35
-35
No files found.
include/glm/common.hpp
View file @
8e451e99
///////////////////////////////////////////////////////////////////////////////////
/// 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.
///
/// @ref core
/// @file glm/common.hpp
/// @date 2013-12-24 / 2013-12-24
/// @author Christophe Riccio
///////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "detail/func_common.hpp"
///////////////////////////////////////////////////////////////////////////////////
/// 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.
///
/// @ref core
/// @file glm/common.hpp
/// @date 2013-12-24 / 2013-12-24
/// @author Christophe Riccio
///////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "detail/func_common.hpp"
include/glm/detail/_features.hpp
View file @
8e451e99
This diff is collapsed.
Click to expand it.
include/glm/detail/_fixes.hpp
View file @
8e451e99
///////////////////////////////////////////////////////////////////////////////////
/// 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.
///
/// @ref core
/// @file glm/detail/_fixes.hpp
/// @date 2011-02-21 / 2011-11-22
/// @author Christophe Riccio
///////////////////////////////////////////////////////////////////////////////////
#include <cmath>
//! Workaround for compatibility with other libraries
#ifdef max
#undef max
#endif
//! Workaround for compatibility with other libraries
#ifdef min
#undef min
#endif
//! Workaround for Android
#ifdef isnan
#undef isnan
#endif
//! Workaround for Android
#ifdef isinf
#undef isinf
#endif
//! Workaround for Chrone Native Client
#ifdef log2
#undef log2
#endif
///////////////////////////////////////////////////////////////////////////////////
/// 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.
///
/// @ref core
/// @file glm/detail/_fixes.hpp
/// @date 2011-02-21 / 2011-11-22
/// @author Christophe Riccio
///////////////////////////////////////////////////////////////////////////////////
#include <cmath>
//! Workaround for compatibility with other libraries
#ifdef max
#undef max
#endif
//! Workaround for compatibility with other libraries
#ifdef min
#undef min
#endif
//! Workaround for Android
#ifdef isnan
#undef isnan
#endif
//! Workaround for Android
#ifdef isinf
#undef isinf
#endif
//! Workaround for Chrone Native Client
#ifdef log2
#undef log2
#endif
include/glm/detail/_noise.hpp
View file @
8e451e99
///////////////////////////////////////////////////////////////////////////////////
/// 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.
///
/// @ref core
/// @file glm/detail/_noise.hpp
/// @date 2013-12-24 / 2013-12-24
/// @author Christophe Riccio
///////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "../vec2.hpp"
#include "../vec3.hpp"
#include "../vec4.hpp"
#include "../common.hpp"
namespace
glm
{
namespace
detail
{
template
<
typename
T
>
GLM_FUNC_QUALIFIER
T
mod289
(
T
const
&
x
)
{
return
x
-
floor
(
x
*
static_cast
<
T
>
(
1.0
)
/
static_cast
<
T
>
(
289.0
))
*
static_cast
<
T
>
(
289.0
);
}
template
<
typename
T
>
GLM_FUNC_QUALIFIER
T
permute
(
T
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec2
<
T
,
P
>
permute
(
tvec2
<
T
,
P
>
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec3
<
T
,
P
>
permute
(
tvec3
<
T
,
P
>
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec4
<
T
,
P
>
permute
(
tvec4
<
T
,
P
>
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
/*
template <typename T, precision P, template<typename> class vecType>
GLM_FUNC_QUALIFIER vecType<T, P> permute(vecType<T, P> const & x)
{
return mod289(((x * T(34)) + T(1)) * x);
}
*/
template
<
typename
T
>
GLM_FUNC_QUALIFIER
T
taylorInvSqrt
(
T
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec2
<
T
,
P
>
taylorInvSqrt
(
tvec2
<
T
,
P
>
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec3
<
T
,
P
>
taylorInvSqrt
(
tvec3
<
T
,
P
>
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec4
<
T
,
P
>
taylorInvSqrt
(
tvec4
<
T
,
P
>
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
/*
template <typename T, precision P, template<typename> class vecType>
GLM_FUNC_QUALIFIER vecType<T, P> taylorInvSqrt(vecType<T, P> const & r)
{
return T(1.79284291400159) - T(0.85373472095314) * r;
}
*/
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec2
<
T
,
P
>
fade
(
tvec2
<
T
,
P
>
const
&
t
)
{
return
(
t
*
t
*
t
)
*
(
t
*
(
t
*
T
(
6
)
-
T
(
15
))
+
T
(
10
));
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec3
<
T
,
P
>
fade
(
tvec3
<
T
,
P
>
const
&
t
)
{
return
(
t
*
t
*
t
)
*
(
t
*
(
t
*
T
(
6
)
-
T
(
15
))
+
T
(
10
));
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec4
<
T
,
P
>
fade
(
tvec4
<
T
,
P
>
const
&
t
)
{
return
(
t
*
t
*
t
)
*
(
t
*
(
t
*
T
(
6
)
-
T
(
15
))
+
T
(
10
));
}
/*
template <typename T, precision P, template <typename> class vecType>
GLM_FUNC_QUALIFIER vecType<T, P> fade(vecType<T, P> const & t)
{
return (t * t * t) * (t * (t * T(6) - T(15)) + T(10));
}
*/
}
//namespace detail
}
//namespace glm
///////////////////////////////////////////////////////////////////////////////////
/// 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.
///
/// @ref core
/// @file glm/detail/_noise.hpp
/// @date 2013-12-24 / 2013-12-24
/// @author Christophe Riccio
///////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "../vec2.hpp"
#include "../vec3.hpp"
#include "../vec4.hpp"
#include "../common.hpp"
namespace
glm
{
namespace
detail
{
template
<
typename
T
>
GLM_FUNC_QUALIFIER
T
mod289
(
T
const
&
x
)
{
return
x
-
floor
(
x
*
static_cast
<
T
>
(
1.0
)
/
static_cast
<
T
>
(
289.0
))
*
static_cast
<
T
>
(
289.0
);
}
template
<
typename
T
>
GLM_FUNC_QUALIFIER
T
permute
(
T
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec2
<
T
,
P
>
permute
(
tvec2
<
T
,
P
>
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec3
<
T
,
P
>
permute
(
tvec3
<
T
,
P
>
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec4
<
T
,
P
>
permute
(
tvec4
<
T
,
P
>
const
&
x
)
{
return
mod289
(((
x
*
static_cast
<
T
>
(
34
))
+
static_cast
<
T
>
(
1
))
*
x
);
}
/*
template <typename T, precision P, template<typename> class vecType>
GLM_FUNC_QUALIFIER vecType<T, P> permute(vecType<T, P> const & x)
{
return mod289(((x * T(34)) + T(1)) * x);
}
*/
template
<
typename
T
>
GLM_FUNC_QUALIFIER
T
taylorInvSqrt
(
T
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec2
<
T
,
P
>
taylorInvSqrt
(
tvec2
<
T
,
P
>
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec3
<
T
,
P
>
taylorInvSqrt
(
tvec3
<
T
,
P
>
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec4
<
T
,
P
>
taylorInvSqrt
(
tvec4
<
T
,
P
>
const
&
r
)
{
return
T
(
1.79284291400159
)
-
T
(
0.85373472095314
)
*
r
;
}
/*
template <typename T, precision P, template<typename> class vecType>
GLM_FUNC_QUALIFIER vecType<T, P> taylorInvSqrt(vecType<T, P> const & r)
{
return T(1.79284291400159) - T(0.85373472095314) * r;
}
*/
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec2
<
T
,
P
>
fade
(
tvec2
<
T
,
P
>
const
&
t
)
{
return
(
t
*
t
*
t
)
*
(
t
*
(
t
*
T
(
6
)
-
T
(
15
))
+
T
(
10
));
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec3
<
T
,
P
>
fade
(
tvec3
<
T
,
P
>
const
&
t
)
{
return
(
t
*
t
*
t
)
*
(
t
*
(
t
*
T
(
6
)
-
T
(
15
))
+
T
(
10
));
}
template
<
typename
T
,
precision
P
>
GLM_FUNC_QUALIFIER
tvec4
<
T
,
P
>
fade
(
tvec4
<
T
,
P
>
const
&
t
)
{
return
(
t
*
t
*
t
)
*
(
t
*
(
t
*
T
(
6
)
-
T
(
15
))
+
T
(
10
));
}
/*
template <typename T, precision P, template <typename> class vecType>
GLM_FUNC_QUALIFIER vecType<T, P> fade(vecType<T, P> const & t)
{
return (t * t * t) * (t * (t * T(6) - T(15)) + T(10));
}
*/
}
//namespace detail
}
//namespace glm
include/glm/detail/_swizzle.hpp
View file @
8e451e99
This diff is collapsed.
Click to expand it.
include/glm/detail/_swizzle_func.hpp
View file @
8e451e99
This diff is collapsed.
Click to expand it.
include/glm/detail/_vectorize.hpp
View file @
8e451e99
///////////////////////////////////////////////////////////////////////////////////
/// 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.
///
/// @ref core
/// @file glm/detail/_vectorize.hpp
/// @date 2011-10-14 / 2011-10-14
/// @author Christophe Riccio
///////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "type_vec1.hpp"
#include "type_vec2.hpp"
#include "type_vec3.hpp"
#include "type_vec4.hpp"
namespace
glm
{
namespace
detail
{
template
<
typename
R
,
typename
T
,
precision
P
,
template
<
typename
,
precision
>
class
vecType
>
struct
functor1
{};
template
<
typename
R
,
typename
T
,
precision
P
>
struct
functor1
<
R
,
T
,
P
,
tvec1
>
{
GLM_FUNC_QUALIFIER
static
tvec1
<
R
,
P
>
call
(
R
(
*
Func
)
(
T
x
),
tvec1
<
T
,
P
>
const
&
v
)
{
return
tvec1
<
R
,
P
>
(
Func
(
v
.
x
));
}
};
template
<
typename
R
,
typename
T
,
precision
P
>
struct
functor1
<
R
,
T
,
P
,
tvec2
>
{
GLM_FUNC_QUALIFIER
static
tvec2
<
R
,
P
>
call
(
R
(
*
Func
)
(
T
x
),
tvec2
<
T
,
P
>
const
&
v
)
{
return
tvec2
<
R
,
P
>
(
Func
(
v
.
x
),
Func
(
v
.
y
));