Added GetNearestPowerOfTwo
Former-commit-id: 609d470e8478c659b816ad7d34fb9d56ad551b07
This commit is contained in:
parent
5886238e2e
commit
ebf402f138
|
|
@ -25,6 +25,7 @@ template<typename T> T NzClamp(T value, T min, T max);
|
||||||
template<typename T> T NzDegrees(T degrees);
|
template<typename T> T NzDegrees(T degrees);
|
||||||
template<typename T> T NzDegreeToRadian(T degrees);
|
template<typename T> T NzDegreeToRadian(T degrees);
|
||||||
unsigned int NzIntegralPow(unsigned int base, unsigned int exponent);
|
unsigned int NzIntegralPow(unsigned int base, unsigned int exponent);
|
||||||
|
unsigned int NzGetNearestPowerOfTwo(unsigned int number);
|
||||||
unsigned int NzGetNumberLength(signed char number);
|
unsigned int NzGetNumberLength(signed char number);
|
||||||
unsigned int NzGetNumberLength(unsigned char number);
|
unsigned int NzGetNumberLength(unsigned char number);
|
||||||
unsigned int NzGetNumberLength(int number);
|
unsigned int NzGetNumberLength(int number);
|
||||||
|
|
|
||||||
|
|
@ -59,6 +59,16 @@ inline unsigned int NzIntegralPow(unsigned int base, unsigned int exponent)
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inline unsigned int NzGetNearestPowerOfTwo(unsigned int number)
|
||||||
|
{
|
||||||
|
unsigned int x = 1;
|
||||||
|
// Tant que x est plus petit que n, on décale ses bits vers la gauche, ce qui revient à multiplier par deux
|
||||||
|
while(x <= number)
|
||||||
|
x <<= 1;
|
||||||
|
|
||||||
|
return x;
|
||||||
|
}
|
||||||
|
|
||||||
inline unsigned int NzGetNumberLength(signed char number)
|
inline unsigned int NzGetNumberLength(signed char number)
|
||||||
{
|
{
|
||||||
// Le standard définit le char comme étant codé sur un octet
|
// Le standard définit le char comme étant codé sur un octet
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue