1.0.0 API documentation
Functions
GLM_EXT_vector_integer

Functions

template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, int, Q > findNSB (vec< L, T, Q > const &Source, vec< L, int, Q > SignificantBitCount)
 Returns the bit number of the Nth significant bit set to 1 in the binary representation of value. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, bool, Q > isMultiple (vec< L, T, Q > const &v, T Multiple)
 Return true if the 'Value' is a multiple of 'Multiple'. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, bool, Q > isMultiple (vec< L, T, Q > const &v, vec< L, T, Q > const &Multiple)
 Return true if the 'Value' is a multiple of 'Multiple'. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, bool, Q > isPowerOfTwo (vec< L, T, Q > const &v)
 Return true if the value is a power of two number. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > nextMultiple (vec< L, T, Q > const &v, T Multiple)
 Higher multiple number of Source. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > nextMultiple (vec< L, T, Q > const &v, vec< L, T, Q > const &Multiple)
 Higher multiple number of Source. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > nextPowerOfTwo (vec< L, T, Q > const &v)
 Return the power of two number which value is just higher the input value, round up to a power of two. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > prevMultiple (vec< L, T, Q > const &v, T Multiple)
 Lower multiple number of Source. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > prevMultiple (vec< L, T, Q > const &v, vec< L, T, Q > const &Multiple)
 Lower multiple number of Source. More...
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > prevPowerOfTwo (vec< L, T, Q > const &v)
 Return the power of two number which value is just lower the input value, round down to a power of two. More...
 

Detailed Description

Include <glm/ext/vector_integer.hpp> to use the features of this extension.

Function Documentation

◆ findNSB()

GLM_FUNC_DECL vec<L, int, Q> glm::findNSB ( vec< L, T, Q > const &  Source,
vec< L, int, Q >  SignificantBitCount 
)

Returns the bit number of the Nth significant bit set to 1 in the binary representation of value.

If value bitcount is less than the Nth significant bit, -1 will be returned.

Template Parameters
LAn integer between 1 and 4 included that qualify the dimension of the vector.
TSigned or unsigned integer scalar types.
See also
GLM_EXT_vector_integer

◆ isMultiple() [1/2]

GLM_FUNC_DECL vec<L, bool, Q> glm::isMultiple ( vec< L, T, Q > const &  v,
Multiple 
)

Return true if the 'Value' is a multiple of 'Multiple'.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
See also
GLM_EXT_vector_integer

◆ isMultiple() [2/2]

GLM_FUNC_DECL vec<L, bool, Q> glm::isMultiple ( vec< L, T, Q > const &  v,
vec< L, T, Q > const &  Multiple 
)

Return true if the 'Value' is a multiple of 'Multiple'.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
See also
GLM_EXT_vector_integer

◆ isPowerOfTwo()

GLM_FUNC_DECL vec<L, bool, Q> glm::isPowerOfTwo ( vec< L, T, Q > const &  v)

Return true if the value is a power of two number.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
See also
GLM_EXT_vector_integer

◆ nextMultiple() [1/2]

GLM_FUNC_DECL vec<L, T, Q> glm::nextMultiple ( vec< L, T, Q > const &  v,
Multiple 
)

Higher multiple number of Source.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
Parameters
vSource values to which is applied the function
MultipleMust be a null or positive value
See also
GLM_EXT_vector_integer

◆ nextMultiple() [2/2]

GLM_FUNC_DECL vec<L, T, Q> glm::nextMultiple ( vec< L, T, Q > const &  v,
vec< L, T, Q > const &  Multiple 
)

Higher multiple number of Source.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
Parameters
vSource values to which is applied the function
MultipleMust be a null or positive value
See also
GLM_EXT_vector_integer

◆ nextPowerOfTwo()

GLM_FUNC_DECL vec<L, T, Q> glm::nextPowerOfTwo ( vec< L, T, Q > const &  v)

Return the power of two number which value is just higher the input value, round up to a power of two.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
See also
GLM_EXT_vector_integer

◆ prevMultiple() [1/2]

GLM_FUNC_DECL vec<L, T, Q> glm::prevMultiple ( vec< L, T, Q > const &  v,
Multiple 
)

Lower multiple number of Source.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
Parameters
vSource values to which is applied the function
MultipleMust be a null or positive value
See also
GLM_EXT_vector_integer

◆ prevMultiple() [2/2]

GLM_FUNC_DECL vec<L, T, Q> glm::prevMultiple ( vec< L, T, Q > const &  v,
vec< L, T, Q > const &  Multiple 
)

Lower multiple number of Source.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
Parameters
vSource values to which is applied the function
MultipleMust be a null or positive value
See also
GLM_EXT_vector_integer

◆ prevPowerOfTwo()

GLM_FUNC_DECL vec<L, T, Q> glm::prevPowerOfTwo ( vec< L, T, Q > const &  v)

Return the power of two number which value is just lower the input value, round down to a power of two.

Template Parameters
LInteger between 1 and 4 included that qualify the dimension of the vector
TSigned or unsigned integer scalar types.
QValue from qualifier enum
See also
GLM_EXT_vector_integer