From 6f67371bb1b46579ae837d0e0c61ac1b291be743 Mon Sep 17 00:00:00 2001 From: LaG1924 <12997935+LaG1924@users.noreply.github.com> Date: Sat, 13 Jan 2018 07:51:33 +0500 Subject: Directory renamed --- external/include/glm/gtc/type_ptr.inl | 450 ++++++++++++++++++++++++++++++++++ 1 file changed, 450 insertions(+) create mode 100644 external/include/glm/gtc/type_ptr.inl (limited to 'external/include/glm/gtc/type_ptr.inl') diff --git a/external/include/glm/gtc/type_ptr.inl b/external/include/glm/gtc/type_ptr.inl new file mode 100644 index 0000000..3aa6ae6 --- /dev/null +++ b/external/include/glm/gtc/type_ptr.inl @@ -0,0 +1,450 @@ +/// @ref gtc_type_ptr +/// @file glm/gtc/type_ptr.inl + +#include + +namespace glm +{ + /// @addtogroup gtc_type_ptr + /// @{ + + /// Return the constant address to the data of the vector input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tvec2 const & vec + ) + { + return &(vec.x); + } + + //! Return the address to the data of the vector input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tvec2 & vec + ) + { + return &(vec.x); + } + + /// Return the constant address to the data of the vector input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tvec3 const & vec + ) + { + return &(vec.x); + } + + //! Return the address to the data of the vector input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tvec3 & vec + ) + { + return &(vec.x); + } + + /// Return the constant address to the data of the vector input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tvec4 const & vec + ) + { + return &(vec.x); + } + + //! Return the address to the data of the vector input. + //! From GLM_GTC_type_ptr extension. + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tvec4 & vec + ) + { + return &(vec.x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat2x2 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat2x2 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat3x3 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat3x3 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat4x4 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + //! From GLM_GTC_type_ptr extension. + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat4x4 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat2x3 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat2x3 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat3x2 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat3x2 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat2x4 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat2x4 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat4x2 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat4x2 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat3x4 const & mat + ) + { + return &(mat[0].x); + } + + //! Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tmat3x4 & mat + ) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tmat4x3 const & mat + ) + { + return &(mat[0].x); + } + + /// Return the address to the data of the matrix input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr(tmat4x3 & mat) + { + return &(mat[0].x); + } + + /// Return the constant address to the data of the input parameter. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T const * value_ptr + ( + tquat const & q + ) + { + return &(q[0]); + } + + /// Return the address to the data of the quaternion input. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER T * value_ptr + ( + tquat & q + ) + { + return &(q[0]); + } + + /// Build a vector from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tvec2 make_vec2(T const * const ptr) + { + tvec2 Result; + memcpy(value_ptr(Result), ptr, sizeof(tvec2)); + return Result; + } + + /// Build a vector from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tvec3 make_vec3(T const * const ptr) + { + tvec3 Result; + memcpy(value_ptr(Result), ptr, sizeof(tvec3)); + return Result; + } + + /// Build a vector from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tvec4 make_vec4(T const * const ptr) + { + tvec4 Result; + memcpy(value_ptr(Result), ptr, sizeof(tvec4)); + return Result; + } + + /// Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat2x2 make_mat2x2(T const * const ptr) + { + tmat2x2 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat2x2)); + return Result; + } + + /// Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat2x3 make_mat2x3(T const * const ptr) + { + tmat2x3 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat2x3)); + return Result; + } + + /// Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat2x4 make_mat2x4(T const * const ptr) + { + tmat2x4 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat2x4)); + return Result; + } + + /// Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat3x2 make_mat3x2(T const * const ptr) + { + tmat3x2 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat3x2)); + return Result; + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat3x3 make_mat3x3(T const * const ptr) + { + tmat3x3 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat3x3)); + return Result; + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat3x4 make_mat3x4(T const * const ptr) + { + tmat3x4 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat3x4)); + return Result; + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat4x2 make_mat4x2(T const * const ptr) + { + tmat4x2 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat4x2)); + return Result; + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat4x3 make_mat4x3(T const * const ptr) + { + tmat4x3 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat4x3)); + return Result; + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat4x4 make_mat4x4(T const * const ptr) + { + tmat4x4 Result; + memcpy(value_ptr(Result), ptr, sizeof(tmat4x4)); + return Result; + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat2x2 make_mat2(T const * const ptr) + { + return make_mat2x2(ptr); + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat3x3 make_mat3(T const * const ptr) + { + return make_mat3x3(ptr); + } + + //! Build a matrix from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tmat4x4 make_mat4(T const * const ptr) + { + return make_mat4x4(ptr); + } + + //! Build a quaternion from a pointer. + /// @see gtc_type_ptr + template + GLM_FUNC_QUALIFIER tquat make_quat(T const * const ptr) + { + tquat Result; + memcpy(value_ptr(Result), ptr, sizeof(tquat)); + return Result; + } + + /// @} +}//namespace glm + -- cgit v1.2.3