ext.hpp 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. /// @file glm/ext.hpp
  2. ///
  3. /// @ref core (Dependence)
  4. #include "detail/setup.hpp"
  5. #pragma once
  6. #include "glm.hpp"
  7. #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_MESSAGE_EXT_INCLUDED_DISPLAYED)
  8. # define GLM_MESSAGE_EXT_INCLUDED_DISPLAYED
  9. # pragma message("GLM: All extensions included (not recommended)")
  10. #endif//GLM_MESSAGES
  11. #include "./ext/matrix_clip_space.hpp"
  12. #include "./ext/matrix_common.hpp"
  13. #include "./ext/matrix_double2x2.hpp"
  14. #include "./ext/matrix_double2x2_precision.hpp"
  15. #include "./ext/matrix_double2x3.hpp"
  16. #include "./ext/matrix_double2x3_precision.hpp"
  17. #include "./ext/matrix_double2x4.hpp"
  18. #include "./ext/matrix_double2x4_precision.hpp"
  19. #include "./ext/matrix_double3x2.hpp"
  20. #include "./ext/matrix_double3x2_precision.hpp"
  21. #include "./ext/matrix_double3x3.hpp"
  22. #include "./ext/matrix_double3x3_precision.hpp"
  23. #include "./ext/matrix_double3x4.hpp"
  24. #include "./ext/matrix_double3x4_precision.hpp"
  25. #include "./ext/matrix_double4x2.hpp"
  26. #include "./ext/matrix_double4x2_precision.hpp"
  27. #include "./ext/matrix_double4x3.hpp"
  28. #include "./ext/matrix_double4x3_precision.hpp"
  29. #include "./ext/matrix_double4x4.hpp"
  30. #include "./ext/matrix_double4x4_precision.hpp"
  31. #include "./ext/matrix_float2x2.hpp"
  32. #include "./ext/matrix_float2x2_precision.hpp"
  33. #include "./ext/matrix_float2x3.hpp"
  34. #include "./ext/matrix_float2x3_precision.hpp"
  35. #include "./ext/matrix_float2x4.hpp"
  36. #include "./ext/matrix_float2x4_precision.hpp"
  37. #include "./ext/matrix_float3x2.hpp"
  38. #include "./ext/matrix_float3x2_precision.hpp"
  39. #include "./ext/matrix_float3x3.hpp"
  40. #include "./ext/matrix_float3x3_precision.hpp"
  41. #include "./ext/matrix_float3x4.hpp"
  42. #include "./ext/matrix_float3x4_precision.hpp"
  43. #include "./ext/matrix_float4x2.hpp"
  44. #include "./ext/matrix_float4x2_precision.hpp"
  45. #include "./ext/matrix_float4x3.hpp"
  46. #include "./ext/matrix_float4x3_precision.hpp"
  47. #include "./ext/matrix_float4x4.hpp"
  48. #include "./ext/matrix_float4x4_precision.hpp"
  49. #include "./ext/matrix_int2x2.hpp"
  50. #include "./ext/matrix_int2x2_sized.hpp"
  51. #include "./ext/matrix_int2x3.hpp"
  52. #include "./ext/matrix_int2x3_sized.hpp"
  53. #include "./ext/matrix_int2x4.hpp"
  54. #include "./ext/matrix_int2x4_sized.hpp"
  55. #include "./ext/matrix_int3x2.hpp"
  56. #include "./ext/matrix_int3x2_sized.hpp"
  57. #include "./ext/matrix_int3x3.hpp"
  58. #include "./ext/matrix_int3x3_sized.hpp"
  59. #include "./ext/matrix_int3x4.hpp"
  60. #include "./ext/matrix_int3x4_sized.hpp"
  61. #include "./ext/matrix_int4x2.hpp"
  62. #include "./ext/matrix_int4x2_sized.hpp"
  63. #include "./ext/matrix_int4x3.hpp"
  64. #include "./ext/matrix_int4x3_sized.hpp"
  65. #include "./ext/matrix_int4x4.hpp"
  66. #include "./ext/matrix_int4x4_sized.hpp"
  67. #include "./ext/matrix_uint2x2.hpp"
  68. #include "./ext/matrix_uint2x2_sized.hpp"
  69. #include "./ext/matrix_uint2x3.hpp"
  70. #include "./ext/matrix_uint2x3_sized.hpp"
  71. #include "./ext/matrix_uint2x4.hpp"
  72. #include "./ext/matrix_uint2x4_sized.hpp"
  73. #include "./ext/matrix_uint3x2.hpp"
  74. #include "./ext/matrix_uint3x2_sized.hpp"
  75. #include "./ext/matrix_uint3x3.hpp"
  76. #include "./ext/matrix_uint3x3_sized.hpp"
  77. #include "./ext/matrix_uint3x4.hpp"
  78. #include "./ext/matrix_uint3x4_sized.hpp"
  79. #include "./ext/matrix_uint4x2.hpp"
  80. #include "./ext/matrix_uint4x2_sized.hpp"
  81. #include "./ext/matrix_uint4x3.hpp"
  82. #include "./ext/matrix_uint4x3_sized.hpp"
  83. #include "./ext/matrix_uint4x4.hpp"
  84. #include "./ext/matrix_uint4x4_sized.hpp"
  85. #include "./ext/matrix_projection.hpp"
  86. #include "./ext/matrix_relational.hpp"
  87. #include "./ext/matrix_transform.hpp"
  88. #include "./ext/quaternion_common.hpp"
  89. #include "./ext/quaternion_double.hpp"
  90. #include "./ext/quaternion_double_precision.hpp"
  91. #include "./ext/quaternion_float.hpp"
  92. #include "./ext/quaternion_float_precision.hpp"
  93. #include "./ext/quaternion_exponential.hpp"
  94. #include "./ext/quaternion_geometric.hpp"
  95. #include "./ext/quaternion_relational.hpp"
  96. #include "./ext/quaternion_transform.hpp"
  97. #include "./ext/quaternion_trigonometric.hpp"
  98. #include "./ext/scalar_common.hpp"
  99. #include "./ext/scalar_constants.hpp"
  100. #include "./ext/scalar_integer.hpp"
  101. #include "./ext/scalar_packing.hpp"
  102. #include "./ext/scalar_reciprocal.hpp"
  103. #include "./ext/scalar_relational.hpp"
  104. #include "./ext/scalar_ulp.hpp"
  105. #include "./ext/scalar_int_sized.hpp"
  106. #include "./ext/scalar_uint_sized.hpp"
  107. #include "./ext/vector_common.hpp"
  108. #include "./ext/vector_integer.hpp"
  109. #include "./ext/vector_packing.hpp"
  110. #include "./ext/vector_reciprocal.hpp"
  111. #include "./ext/vector_relational.hpp"
  112. #include "./ext/vector_ulp.hpp"
  113. #include "./ext/vector_bool1.hpp"
  114. #include "./ext/vector_bool1_precision.hpp"
  115. #include "./ext/vector_bool2.hpp"
  116. #include "./ext/vector_bool2_precision.hpp"
  117. #include "./ext/vector_bool3.hpp"
  118. #include "./ext/vector_bool3_precision.hpp"
  119. #include "./ext/vector_bool4.hpp"
  120. #include "./ext/vector_bool4_precision.hpp"
  121. #include "./ext/vector_double1.hpp"
  122. #include "./ext/vector_double1_precision.hpp"
  123. #include "./ext/vector_double2.hpp"
  124. #include "./ext/vector_double2_precision.hpp"
  125. #include "./ext/vector_double3.hpp"
  126. #include "./ext/vector_double3_precision.hpp"
  127. #include "./ext/vector_double4.hpp"
  128. #include "./ext/vector_double4_precision.hpp"
  129. #include "./ext/vector_float1.hpp"
  130. #include "./ext/vector_float1_precision.hpp"
  131. #include "./ext/vector_float2.hpp"
  132. #include "./ext/vector_float2_precision.hpp"
  133. #include "./ext/vector_float3.hpp"
  134. #include "./ext/vector_float3_precision.hpp"
  135. #include "./ext/vector_float4.hpp"
  136. #include "./ext/vector_float4_precision.hpp"
  137. #include "./ext/vector_int1.hpp"
  138. #include "./ext/vector_int1_sized.hpp"
  139. #include "./ext/vector_int2.hpp"
  140. #include "./ext/vector_int2_sized.hpp"
  141. #include "./ext/vector_int3.hpp"
  142. #include "./ext/vector_int3_sized.hpp"
  143. #include "./ext/vector_int4.hpp"
  144. #include "./ext/vector_int4_sized.hpp"
  145. #include "./ext/vector_uint1.hpp"
  146. #include "./ext/vector_uint1_sized.hpp"
  147. #include "./ext/vector_uint2.hpp"
  148. #include "./ext/vector_uint2_sized.hpp"
  149. #include "./ext/vector_uint3.hpp"
  150. #include "./ext/vector_uint3_sized.hpp"
  151. #include "./ext/vector_uint4.hpp"
  152. #include "./ext/vector_uint4_sized.hpp"
  153. #include "./gtc/bitfield.hpp"
  154. #include "./gtc/color_space.hpp"
  155. #include "./gtc/constants.hpp"
  156. #include "./gtc/epsilon.hpp"
  157. #include "./gtc/integer.hpp"
  158. #include "./gtc/matrix_access.hpp"
  159. #include "./gtc/matrix_integer.hpp"
  160. #include "./gtc/matrix_inverse.hpp"
  161. #include "./gtc/matrix_transform.hpp"
  162. #include "./gtc/noise.hpp"
  163. #include "./gtc/packing.hpp"
  164. #include "./gtc/quaternion.hpp"
  165. #include "./gtc/random.hpp"
  166. #include "./gtc/reciprocal.hpp"
  167. #include "./gtc/round.hpp"
  168. #include "./gtc/type_precision.hpp"
  169. #include "./gtc/type_ptr.hpp"
  170. #include "./gtc/ulp.hpp"
  171. #include "./gtc/vec1.hpp"
  172. #if GLM_CONFIG_ALIGNED_GENTYPES == GLM_ENABLE
  173. # include "./gtc/type_aligned.hpp"
  174. #endif
  175. #ifdef GLM_ENABLE_EXPERIMENTAL
  176. #include "./gtx/associated_min_max.hpp"
  177. #include "./gtx/bit.hpp"
  178. #include "./gtx/closest_point.hpp"
  179. #include "./gtx/color_encoding.hpp"
  180. #include "./gtx/color_space.hpp"
  181. #include "./gtx/color_space_YCoCg.hpp"
  182. #include "./gtx/compatibility.hpp"
  183. #include "./gtx/component_wise.hpp"
  184. #include "./gtx/dual_quaternion.hpp"
  185. #include "./gtx/euler_angles.hpp"
  186. #include "./gtx/extend.hpp"
  187. #include "./gtx/extended_min_max.hpp"
  188. #include "./gtx/fast_exponential.hpp"
  189. #include "./gtx/fast_square_root.hpp"
  190. #include "./gtx/fast_trigonometry.hpp"
  191. #include "./gtx/functions.hpp"
  192. #include "./gtx/gradient_paint.hpp"
  193. #include "./gtx/handed_coordinate_space.hpp"
  194. #include "./gtx/integer.hpp"
  195. #include "./gtx/intersect.hpp"
  196. #include "./gtx/log_base.hpp"
  197. #include "./gtx/matrix_cross_product.hpp"
  198. #include "./gtx/matrix_interpolation.hpp"
  199. #include "./gtx/matrix_major_storage.hpp"
  200. #include "./gtx/matrix_operation.hpp"
  201. #include "./gtx/matrix_query.hpp"
  202. #include "./gtx/mixed_product.hpp"
  203. #include "./gtx/norm.hpp"
  204. #include "./gtx/normal.hpp"
  205. #include "./gtx/normalize_dot.hpp"
  206. #include "./gtx/number_precision.hpp"
  207. #include "./gtx/optimum_pow.hpp"
  208. #include "./gtx/orthonormalize.hpp"
  209. #include "./gtx/perpendicular.hpp"
  210. #include "./gtx/polar_coordinates.hpp"
  211. #include "./gtx/projection.hpp"
  212. #include "./gtx/quaternion.hpp"
  213. #include "./gtx/raw_data.hpp"
  214. #include "./gtx/rotate_vector.hpp"
  215. #include "./gtx/spline.hpp"
  216. #include "./gtx/std_based_type.hpp"
  217. #if !((GLM_COMPILER & GLM_COMPILER_CUDA) || (GLM_COMPILER & GLM_COMPILER_HIP))
  218. # include "./gtx/string_cast.hpp"
  219. #endif
  220. #include "./gtx/transform.hpp"
  221. #include "./gtx/transform2.hpp"
  222. #include "./gtx/vec_swizzle.hpp"
  223. #include "./gtx/vector_angle.hpp"
  224. #include "./gtx/vector_query.hpp"
  225. #include "./gtx/wrap.hpp"
  226. #if GLM_HAS_TEMPLATE_ALIASES
  227. # include "./gtx/scalar_multiplication.hpp"
  228. #endif
  229. #if GLM_HAS_RANGE_FOR
  230. # include "./gtx/range.hpp"
  231. #endif
  232. #endif//GLM_ENABLE_EXPERIMENTAL