2.6 KB、72行 生 Blame 履歴
1/// @ref ext_matrix_uint3x4_sized
2/// @file glm/ext/matrix_uint3x2_sized.hpp
3///
4/// @see core (dependence)
5///
6/// @defgroup ext_matrix_uint3x4_sized GLM_EXT_matrix_uint3x4_sized
7/// @ingroup ext
8///
9/// Include <glm/ext/matrix_uint3x4_sized.hpp> to use the features of this extension.
10///
11/// Defines a number of matrices with integer types.
12
13#pragma once
14
15// Dependency:
16#include "../mat3x4.hpp"
17#include "../ext/scalar_uint_sized.hpp"
18
19#if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
20# pragma message("GLM: GLM_EXT_matrix_uint3x4_sized extension included")
21#endif
22
23namespace glm
24{
25 /// @addtogroup ext_matrix_uint3x4_sized
26 /// @{
27
28 /// 8 bit unsigned integer 3x4 matrix.
29 ///
30 /// @see ext_matrix_uint3x4_sized
31 typedef mat<3, 4, uint8, defaultp> u8mat3x4;
32
33 /// 16 bit unsigned integer 3x4 matrix.
34 ///
35 /// @see ext_matrix_uint3x4_sized
36 typedef mat<3, 4, uint16, defaultp> u16mat3x4;
37
38 /// 32 bit unsigned integer 3x4 matrix.
39 ///
40 /// @see ext_matrix_uint3x4_sized
41 typedef mat<3, 4, uint32, defaultp> u32mat3x4;
42
43 /// 64 bit unsigned integer 3x4 matrix.
44 ///
45 /// @see ext_matrix_uint3x4_sized
46 typedef mat<3, 4, uint64, defaultp> u64mat3x4;
47
48 /// @}
49}//namespace glm
50
51#if GLM_CONFIG_CTOR_INIT == GLM_DISABLE
52static_assert(std::is_trivially_default_constructible<glm::u8mat3x4>::value);
53static_assert(std::is_trivially_default_constructible<glm::u16mat3x4>::value);
54static_assert(std::is_trivially_default_constructible<glm::u32mat3x4>::value);
55static_assert(std::is_trivially_default_constructible<glm::u64mat3x4>::value);
56#endif
57static_assert(std::is_trivially_copy_assignable<glm::u8mat3x4>::value);
58static_assert(std::is_trivially_copy_assignable<glm::u16mat3x4>::value);
59static_assert(std::is_trivially_copy_assignable<glm::u32mat3x4>::value);
60static_assert(std::is_trivially_copy_assignable<glm::u64mat3x4>::value);
61static_assert(std::is_trivially_copyable<glm::u8mat3x4>::value);
62static_assert(std::is_trivially_copyable<glm::u16mat3x4>::value);
63static_assert(std::is_trivially_copyable<glm::u32mat3x4>::value);
64static_assert(std::is_trivially_copyable<glm::u64mat3x4>::value);
65static_assert(std::is_copy_constructible<glm::u8mat3x4>::value);
66static_assert(std::is_copy_constructible<glm::u16mat3x4>::value);
67static_assert(std::is_copy_constructible<glm::u32mat3x4>::value);
68static_assert(std::is_copy_constructible<glm::u64mat3x4>::value);
69static_assert(glm::u8mat3x4::length() == 3);
70static_assert(glm::u16mat3x4::length() == 3);
71static_assert(glm::u32mat3x4::length() == 3);
72static_assert(glm::u64mat3x4::length() == 3);