- Main Page
- Related Pages
- Modules
- Files

- File List

func_integer.hpp
Go to the documentation of this file.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 #ifndef glm_core_func_integer
39 #define glm_core_func_integer GLM_VERSION
40
41 namespace glm
42 {
45
54 template <typename genUType>
55 genUType uaddCarry(
56 genUType const & x,
57 genUType const & y,
58 genUType & carry);
59
68 template <typename genUType>
69 genUType usubBorrow(
70 genUType const & x,
71 genUType const & y,
72 genUType & borrow);
73
82 template <typename genUType>
83 void umulExtended(
84 genUType const & x,
85 genUType const & y,
86 genUType & msb,
87 genUType & lsb);
88
97 template <typename genIType>
98 void imulExtended(
99 genIType const & x,
100 genIType const & y,
101 genIType & msb,
102 genIType & lsb);
103
119 template <typename genIUType>
120 genIUType bitfieldExtract(
121 genIUType const & Value,
122 int const & Offset,
123 int const & Bits);
124
139 template <typename genIUType>
140 genIUType bitfieldInsert(
141 genIUType const & Base,
142 genIUType const & Insert,
143 int const & Offset,
144 int const & Bits);
145
154 template <typename genIUType>
155 genIUType bitfieldReverse(genIUType const & Value);
156
165 template <typename T, template <typename> class genIUType>
166 typename genIUType<T>::signed_type bitCount(genIUType<T> const & Value);
167
178 template <typename T, template <typename> class genIUType>
179 typename genIUType<T>::signed_type findLSB(genIUType<T> const & Value);
180
192 template <typename T, template <typename> class genIUType>
193 typename genIUType<T>::signed_type findMSB(genIUType<T> const & Value);
194
196 }//namespace glm
197
198 #include "func_integer.inl"
199
200 #endif//glm_core_func_integer
201