18 #include "../common.hpp"    19 #include "../trigonometric.hpp"    20 #include "../geometric.hpp"    21 #include "../ext/scalar_constants.hpp"    23 #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)    24 #   pragma message("GLM: GLM_EXT_quaternion_exponential extension included")    36     template<
typename T, qualifier Q>
    37     GLM_FUNC_DECL qua<T, Q> 
exp(qua<T, Q> 
const& q);
    43     template<
typename T, qualifier Q>
    44     GLM_FUNC_DECL qua<T, Q> 
log(qua<T, Q> 
const& q);
    50     template<
typename T, qualifier Q>
    51     GLM_FUNC_DECL qua<T, Q> 
pow(qua<T, Q> 
const& q, T y);
    57     template<
typename T, qualifier Q>
    58     GLM_FUNC_DECL qua<T, Q> 
sqrt(qua<T, Q> 
const& q);
    63 #include "quaternion_exponential.inl" GLM_FUNC_DECL qua< T, Q > exp(qua< T, Q > const &q)
Returns a exponential of a quaternion. 
GLM_FUNC_DECL qua< T, Q > sqrt(qua< T, Q > const &q)
Returns the square root of a quaternion. 
GLM_FUNC_DECL qua< T, Q > log(qua< T, Q > const &q)
Returns a logarithm of a quaternion. 
GLM_FUNC_DECL qua< T, Q > pow(qua< T, Q > const &q, T y)
Returns a quaternion raised to a power.