9 template<
bool is_
float,
bool is_
signed>
15 template<
typename genType>
16 GLM_FUNC_QUALIFIER
static genType call(genType Source, genType Multiple)
18 if (Source >= genType(0))
19 return Source - std::fmod(Source, Multiple);
22 genType Tmp = Source + genType(1);
23 return Tmp - std::fmod(Tmp, Multiple) - Multiple;
31 template<
typename genType>
32 GLM_FUNC_QUALIFIER
static genType call(genType Source, genType Multiple)
34 if (Source >= genType(0))
35 return Source - Source % Multiple;
38 genType Tmp = Source + genType(1);
39 return Tmp - Tmp % Multiple - Multiple;
47 template<
typename genType>
48 GLM_FUNC_QUALIFIER
static genType call(genType Source, genType Multiple)
50 if (Source >= genType(0))
51 return Source - Source % Multiple;
54 genType Tmp = Source + genType(1);
55 return Tmp - Tmp % Multiple - Multiple;
64 template<
typename genType>
70 template<length_t L,
typename T, qualifier Q>
79 template<
typename genType>
85 template<length_t L,
typename T, qualifier Q>
94 template<
typename genIUType>
100 genIUType
const prev =
static_cast<genIUType
>(1) <<
findMSB(value);
101 genIUType
const next = prev << static_cast<genIUType>(1);
102 return (next - value) < (value - prev) ? next : prev;
105 template<length_t L,
typename T, qualifier Q>
114 template<
typename genType>
115 GLM_FUNC_QUALIFIER genType
ceilMultiple(genType Source, genType Multiple)
120 template<length_t L,
typename T, qualifier Q>
129 template<
typename genType>
135 template<length_t L,
typename T, qualifier Q>
144 template<
typename genType>
150 template<length_t L,
typename T, qualifier Q>
GLM_FUNC_QUALIFIER int findMSB(genIUType v)
Definition func_integer.inl:353
GLM_FUNC_DECL bool isPowerOfTwo(genIUType v)
Definition scalar_integer.inl:160
GLM_FUNC_DECL genType ceilMultiple(genType v, genType Multiple)
Definition round.inl:115
GLM_FUNC_DECL genType floorMultiple(genType v, genType Multiple)
Definition round.inl:130
GLM_FUNC_DECL genIUType ceilPowerOfTwo(genIUType v)
GLM_FUNC_DECL genType roundMultiple(genType v, genType Multiple)
Definition round.inl:145
GLM_FUNC_DECL genIUType roundPowerOfTwo(genIUType v)
Definition round.inl:95
GLM_FUNC_DECL genIUType floorPowerOfTwo(genIUType v)
detail namespace with internal helper functions
Definition json.h:249
Core features
Definition common.hpp:21
Definition scalar_integer.inl:67
Definition scalar_integer.inl:26
Definition scalar_integer.inl:111
Definition _vectorize.hpp:7
Definition _vectorize.hpp:46
Definition qualifier.hpp:35