diff options
Diffstat (limited to 'external/include/glm/gtx/component_wise.inl')
-rw-r--r-- | external/include/glm/gtx/component_wise.inl | 78 |
1 files changed, 39 insertions, 39 deletions
diff --git a/external/include/glm/gtx/component_wise.inl b/external/include/glm/gtx/component_wise.inl index add3969..8ca0ca9 100644 --- a/external/include/glm/gtx/component_wise.inl +++ b/external/include/glm/gtx/component_wise.inl @@ -6,92 +6,92 @@ namespace glm{ namespace detail { - template <typename T, typename floatType, precision P, template <typename, precision> class vecType, bool isInteger, bool signedType> + template<length_t L, typename T, typename floatType, qualifier Q, bool isInteger, bool signedType> struct compute_compNormalize {}; - template <typename T, typename floatType, precision P, template <typename, precision> class vecType> - struct compute_compNormalize<T, floatType, P, vecType, true, true> + template<length_t L, typename T, typename floatType, qualifier Q> + struct compute_compNormalize<L, T, floatType, Q, true, true> { - GLM_FUNC_QUALIFIER static vecType<floatType, P> call(vecType<T, P> const & v) + GLM_FUNC_QUALIFIER static vec<L, floatType, Q> call(vec<L, T, Q> const& v) { floatType const Min = static_cast<floatType>(std::numeric_limits<T>::min()); floatType const Max = static_cast<floatType>(std::numeric_limits<T>::max()); - return (vecType<floatType, P>(v) - Min) / (Max - Min) * static_cast<floatType>(2) - static_cast<floatType>(1); + return (vec<L, floatType, Q>(v) - Min) / (Max - Min) * static_cast<floatType>(2) - static_cast<floatType>(1); } }; - template <typename T, typename floatType, precision P, template <typename, precision> class vecType> - struct compute_compNormalize<T, floatType, P, vecType, true, false> + template<length_t L, typename T, typename floatType, qualifier Q> + struct compute_compNormalize<L, T, floatType, Q, true, false> { - GLM_FUNC_QUALIFIER static vecType<floatType, P> call(vecType<T, P> const & v) + GLM_FUNC_QUALIFIER static vec<L, floatType, Q> call(vec<L, T, Q> const& v) { - return vecType<floatType, P>(v) / static_cast<floatType>(std::numeric_limits<T>::max()); + return vec<L, floatType, Q>(v) / static_cast<floatType>(std::numeric_limits<T>::max()); } }; - template <typename T, typename floatType, precision P, template <typename, precision> class vecType> - struct compute_compNormalize<T, floatType, P, vecType, false, true> + template<length_t L, typename T, typename floatType, qualifier Q> + struct compute_compNormalize<L, T, floatType, Q, false, true> { - GLM_FUNC_QUALIFIER static vecType<floatType, P> call(vecType<T, P> const & v) + GLM_FUNC_QUALIFIER static vec<L, floatType, Q> call(vec<L, T, Q> const& v) { return v; } }; - template <typename T, typename floatType, precision P, template <typename, precision> class vecType, bool isInteger, bool signedType> + template<length_t L, typename T, typename floatType, qualifier Q, bool isInteger, bool signedType> struct compute_compScale {}; - template <typename T, typename floatType, precision P, template <typename, precision> class vecType> - struct compute_compScale<T, floatType, P, vecType, true, true> + template<length_t L, typename T, typename floatType, qualifier Q> + struct compute_compScale<L, T, floatType, Q, true, true> { - GLM_FUNC_QUALIFIER static vecType<T, P> call(vecType<floatType, P> const & v) + GLM_FUNC_QUALIFIER static vec<L, T, Q> call(vec<L, floatType, Q> const& v) { floatType const Max = static_cast<floatType>(std::numeric_limits<T>::max()) + static_cast<floatType>(0.5); - vecType<floatType, P> const Scaled(v * Max); - vecType<T, P> const Result(Scaled - static_cast<floatType>(0.5)); + vec<L, floatType, Q> const Scaled(v * Max); + vec<L, T, Q> const Result(Scaled - static_cast<floatType>(0.5)); return Result; } }; - template <typename T, typename floatType, precision P, template <typename, precision> class vecType> - struct compute_compScale<T, floatType, P, vecType, true, false> + template<length_t L, typename T, typename floatType, qualifier Q> + struct compute_compScale<L, T, floatType, Q, true, false> { - GLM_FUNC_QUALIFIER static vecType<T, P> call(vecType<floatType, P> const & v) + GLM_FUNC_QUALIFIER static vec<L, T, Q> call(vec<L, floatType, Q> const& v) { - return vecType<T, P>(vecType<floatType, P>(v) * static_cast<floatType>(std::numeric_limits<T>::max())); + return vec<L, T, Q>(vec<L, floatType, Q>(v) * static_cast<floatType>(std::numeric_limits<T>::max())); } }; - template <typename T, typename floatType, precision P, template <typename, precision> class vecType> - struct compute_compScale<T, floatType, P, vecType, false, true> + template<length_t L, typename T, typename floatType, qualifier Q> + struct compute_compScale<L, T, floatType, Q, false, true> { - GLM_FUNC_QUALIFIER static vecType<T, P> call(vecType<floatType, P> const & v) + GLM_FUNC_QUALIFIER static vec<L, T, Q> call(vec<L, floatType, Q> const& v) { return v; } }; }//namespace detail - template <typename floatType, typename T, precision P, template <typename, precision> class vecType> - GLM_FUNC_QUALIFIER vecType<floatType, P> compNormalize(vecType<T, P> const & v) + template<typename floatType, length_t L, typename T, qualifier Q> + GLM_FUNC_QUALIFIER vec<L, floatType, Q> compNormalize(vec<L, T, Q> const& v) { GLM_STATIC_ASSERT(std::numeric_limits<floatType>::is_iec559, "'compNormalize' accepts only floating-point types for 'floatType' template parameter"); - return detail::compute_compNormalize<T, floatType, P, vecType, std::numeric_limits<T>::is_integer, std::numeric_limits<T>::is_signed>::call(v); + return detail::compute_compNormalize<L, T, floatType, Q, std::numeric_limits<T>::is_integer, std::numeric_limits<T>::is_signed>::call(v); } - template <typename T, typename floatType, precision P, template <typename, precision> class vecType> - GLM_FUNC_QUALIFIER vecType<T, P> compScale(vecType<floatType, P> const & v) + template<typename T, length_t L, typename floatType, qualifier Q> + GLM_FUNC_QUALIFIER vec<L, T, Q> compScale(vec<L, floatType, Q> const& v) { GLM_STATIC_ASSERT(std::numeric_limits<floatType>::is_iec559, "'compScale' accepts only floating-point types for 'floatType' template parameter"); - return detail::compute_compScale<T, floatType, P, vecType, std::numeric_limits<T>::is_integer, std::numeric_limits<T>::is_signed>::call(v); + return detail::compute_compScale<L, T, floatType, Q, std::numeric_limits<T>::is_integer, std::numeric_limits<T>::is_signed>::call(v); } - template <typename T, precision P, template <typename, precision> class vecType> - GLM_FUNC_QUALIFIER T compAdd(vecType<T, P> const & v) + template<length_t L, typename T, qualifier Q> + GLM_FUNC_QUALIFIER T compAdd(vec<L, T, Q> const& v) { T Result(0); for(length_t i = 0, n = v.length(); i < n; ++i) @@ -99,8 +99,8 @@ namespace detail return Result; } - template <typename T, precision P, template <typename, precision> class vecType> - GLM_FUNC_QUALIFIER T compMul(vecType<T, P> const & v) + template<length_t L, typename T, qualifier Q> + GLM_FUNC_QUALIFIER T compMul(vec<L, T, Q> const& v) { T Result(1); for(length_t i = 0, n = v.length(); i < n; ++i) @@ -108,8 +108,8 @@ namespace detail return Result; } - template <typename T, precision P, template <typename, precision> class vecType> - GLM_FUNC_QUALIFIER T compMin(vecType<T, P> const & v) + template<length_t L, typename T, qualifier Q> + GLM_FUNC_QUALIFIER T compMin(vec<L, T, Q> const& v) { T Result(v[0]); for(length_t i = 1, n = v.length(); i < n; ++i) @@ -117,8 +117,8 @@ namespace detail return Result; } - template <typename T, precision P, template <typename, precision> class vecType> - GLM_FUNC_QUALIFIER T compMax(vecType<T, P> const & v) + template<length_t L, typename T, qualifier Q> + GLM_FUNC_QUALIFIER T compMax(vec<L, T, Q> const& v) { T Result(v[0]); for(length_t i = 1, n = v.length(); i < n; ++i) |