master
ブランチ master
VulkanExample / dep / include / glm / ext / quaternion_double.hpp
1.4 KB、46行 生 Blame 履歴
1/// @ref ext_quaternion_double
2/// @file glm/ext/quaternion_double.hpp
3///
4/// @defgroup ext_quaternion_double GLM_EXT_quaternion_double
5/// @ingroup ext
6///
7/// Exposes double-precision floating point quaternion type.
8///
9/// Include <glm/ext/quaternion_double.hpp> to use the features of this extension.
10///
11/// @see ext_quaternion_float
12/// @see ext_quaternion_double_precision
13/// @see ext_quaternion_common
14/// @see ext_quaternion_exponential
15/// @see ext_quaternion_geometric
16/// @see ext_quaternion_relational
17/// @see ext_quaternion_transform
18/// @see ext_quaternion_trigonometric
19
20#pragma once
21
22// Dependency:
23#include "../detail/type_quat.hpp"
24
25#if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
26# pragma message("GLM: GLM_EXT_quaternion_double extension included")
27#endif
28
29namespace glm
30{
31 /// @addtogroup ext_quaternion_double
32 /// @{
33
34 /// Quaternion of double-precision floating-point numbers.
35 typedef qua<double, defaultp> dquat;
36
37 /// @}
38} //namespace glm
39
40#if GLM_CONFIG_CTOR_INIT == GLM_DISABLE
41static_assert(std::is_trivially_default_constructible<glm::dquat>::value);
42#endif
43static_assert(std::is_trivially_copy_assignable<glm::dquat>::value);
44static_assert(std::is_trivially_copyable<glm::dquat>::value);
45static_assert(std::is_copy_constructible<glm::dquat>::value);
46static_assert(glm::dquat::length() == 4);