Clutter Engine 0.0.1
Loading...
Searching...
No Matches
GLM_GTC_bitfield

Functions

template<typename genIUType >
GLM_FUNC_DECL genIUType glm::mask (genIUType Bits)
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::mask (vec< L, T, Q > const &v)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldRotateRight (genIUType In, int Shift)
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldRotateRight (vec< L, T, Q > const &In, int Shift)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldRotateLeft (genIUType In, int Shift)
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldRotateLeft (vec< L, T, Q > const &In, int Shift)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldFillOne (genIUType Value, int FirstBit, int BitCount)
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldFillOne (vec< L, T, Q > const &Value, int FirstBit, int BitCount)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldFillZero (genIUType Value, int FirstBit, int BitCount)
 
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldFillZero (vec< L, T, Q > const &Value, int FirstBit, int BitCount)
 
GLM_FUNC_DECL int16 glm::bitfieldInterleave (int8 x, int8 y)
 
GLM_FUNC_DECL uint16 glm::bitfieldInterleave (uint8 x, uint8 y)
 
GLM_FUNC_DECL uint16 glm::bitfieldInterleave (u8vec2 const &v)
 
GLM_FUNC_DECL glm::u8vec2 glm::bitfieldDeinterleave (glm::uint16 x)
 
GLM_FUNC_DECL int32 glm::bitfieldInterleave (int16 x, int16 y)
 
GLM_FUNC_DECL uint32 glm::bitfieldInterleave (uint16 x, uint16 y)
 
GLM_FUNC_DECL uint32 glm::bitfieldInterleave (u16vec2 const &v)
 
GLM_FUNC_DECL glm::u16vec2 glm::bitfieldDeinterleave (glm::uint32 x)
 
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int32 x, int32 y)
 
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint32 x, uint32 y)
 
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (u32vec2 const &v)
 
GLM_FUNC_DECL glm::u32vec2 glm::bitfieldDeinterleave (glm::uint64 x)
 
GLM_FUNC_DECL int32 glm::bitfieldInterleave (int8 x, int8 y, int8 z)
 
GLM_FUNC_DECL uint32 glm::bitfieldInterleave (uint8 x, uint8 y, uint8 z)
 
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int16 x, int16 y, int16 z)
 
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint16 x, uint16 y, uint16 z)
 
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int32 x, int32 y, int32 z)
 
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint32 x, uint32 y, uint32 z)
 
GLM_FUNC_DECL int32 glm::bitfieldInterleave (int8 x, int8 y, int8 z, int8 w)
 
GLM_FUNC_DECL uint32 glm::bitfieldInterleave (uint8 x, uint8 y, uint8 z, uint8 w)
 
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int16 x, int16 y, int16 z, int16 w)
 
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint16 x, uint16 y, uint16 z, uint16 w)
 

Detailed Description

Include <glm/gtc/bitfield.hpp> to use the features of this extension.

Allow to perform bit operations on integer values

Function Documentation

◆ bitfieldDeinterleave() [1/3]

GLM_FUNC_QUALIFIER u8vec2 glm::bitfieldDeinterleave ( glm::uint16 x)

Deinterleaves the bits of x.

See also
GLM_GTC_bitfield

◆ bitfieldDeinterleave() [2/3]

GLM_FUNC_QUALIFIER glm::u16vec2 glm::bitfieldDeinterleave ( glm::uint32 x)

Deinterleaves the bits of x.

See also
GLM_GTC_bitfield

◆ bitfieldDeinterleave() [3/3]

GLM_FUNC_QUALIFIER glm::u32vec2 glm::bitfieldDeinterleave ( glm::uint64 x)

Deinterleaves the bits of x.

See also
GLM_GTC_bitfield

◆ bitfieldFillOne() [1/2]

template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldFillOne ( genIUType Value,
int FirstBit,
int BitCount )

Set to 1 a range of bits.

See also
GLM_GTC_bitfield

◆ bitfieldFillOne() [2/2]

template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldFillOne ( vec< L, T, Q > const & Value,
int FirstBit,
int BitCount )

Set to 1 a range of bits.

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

◆ bitfieldFillZero() [1/2]

template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldFillZero ( genIUType Value,
int FirstBit,
int BitCount )

Set to 0 a range of bits.

See also
GLM_GTC_bitfield

◆ bitfieldFillZero() [2/2]

template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldFillZero ( vec< L, T, Q > const & Value,
int FirstBit,
int BitCount )

Set to 0 a range of bits.

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

◆ bitfieldInterleave() [1/19]

GLM_FUNC_QUALIFIER int32 glm::bitfieldInterleave ( int16 x,
int16 y )

Interleaves the bits of x and y. The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [2/19]

GLM_FUNC_QUALIFIER int64 glm::bitfieldInterleave ( int16 x,
int16 y,
int16 z )

Interleaves the bits of x, y and z. The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [3/19]

GLM_FUNC_QUALIFIER int64 glm::bitfieldInterleave ( int16 x,
int16 y,
int16 z,
int16 w )

Interleaves the bits of x, y, z and w. The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [4/19]

GLM_FUNC_QUALIFIER int64 glm::bitfieldInterleave ( int32 x,
int32 y )

Interleaves the bits of x and y. The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [5/19]

GLM_FUNC_QUALIFIER int64 glm::bitfieldInterleave ( int32 x,
int32 y,
int32 z )

Interleaves the bits of x, y and z. The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [6/19]

GLM_FUNC_QUALIFIER int16 glm::bitfieldInterleave ( int8 x,
int8 y )

Interleaves the bits of x and y. The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [7/19]

GLM_FUNC_QUALIFIER int32 glm::bitfieldInterleave ( int8 x,
int8 y,
int8 z )

Interleaves the bits of x, y and z. The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [8/19]

GLM_FUNC_QUALIFIER int32 glm::bitfieldInterleave ( int8 x,
int8 y,
int8 z,
int8 w )

Interleaves the bits of x, y, z and w. The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [9/19]

GLM_FUNC_QUALIFIER glm::uint32 glm::bitfieldInterleave ( u16vec2 const & v)

Interleaves the bits of x and y. The first bit is the first bit of v.x followed by the first bit of v.y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [10/19]

GLM_FUNC_QUALIFIER glm::uint64 glm::bitfieldInterleave ( u32vec2 const & v)

Interleaves the bits of x and y. The first bit is the first bit of v.x followed by the first bit of v.y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [11/19]

GLM_FUNC_QUALIFIER uint16 glm::bitfieldInterleave ( u8vec2 const & v)

Interleaves the bits of x and y. The first bit is the first bit of v.x followed by the first bit of v.y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [12/19]

GLM_FUNC_QUALIFIER uint32 glm::bitfieldInterleave ( uint16 x,
uint16 y )

Interleaves the bits of x and y. The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [13/19]

GLM_FUNC_QUALIFIER uint64 glm::bitfieldInterleave ( uint16 x,
uint16 y,
uint16 z )

Interleaves the bits of x, y and z. The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [14/19]

GLM_FUNC_QUALIFIER uint64 glm::bitfieldInterleave ( uint16 x,
uint16 y,
uint16 z,
uint16 w )

Interleaves the bits of x, y, z and w. The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [15/19]

GLM_FUNC_QUALIFIER uint64 glm::bitfieldInterleave ( uint32 x,
uint32 y )

Interleaves the bits of x and y. The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [16/19]

GLM_FUNC_QUALIFIER uint64 glm::bitfieldInterleave ( uint32 x,
uint32 y,
uint32 z )

Interleaves the bits of x, y and z. The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [17/19]

GLM_FUNC_QUALIFIER uint16 glm::bitfieldInterleave ( uint8 x,
uint8 y )

Interleaves the bits of x and y. The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [18/19]

GLM_FUNC_QUALIFIER uint32 glm::bitfieldInterleave ( uint8 x,
uint8 y,
uint8 z )

Interleaves the bits of x, y and z. The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldInterleave() [19/19]

GLM_FUNC_QUALIFIER uint32 glm::bitfieldInterleave ( uint8 x,
uint8 y,
uint8 z,
uint8 w )

Interleaves the bits of x, y, z and w. The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

See also
GLM_GTC_bitfield

◆ bitfieldRotateLeft() [1/2]

template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldRotateLeft ( genIUType In,
int Shift )

Rotate all bits to the left. All the bits dropped in the left side are inserted back on the right side.

See also
GLM_GTC_bitfield

◆ bitfieldRotateLeft() [2/2]

template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldRotateLeft ( vec< L, T, Q > const & In,
int Shift )

Rotate all bits to the left. All the bits dropped in the left side are inserted back on the right side.

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

◆ bitfieldRotateRight() [1/2]

template<typename genIUType >
GLM_FUNC_DECL genIUType glm::bitfieldRotateRight ( genIUType In,
int Shift )

Rotate all bits to the right. All the bits dropped in the right side are inserted back on the left side.

See also
GLM_GTC_bitfield

◆ bitfieldRotateRight() [2/2]

template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::bitfieldRotateRight ( vec< L, T, Q > const & In,
int Shift )

Rotate all bits to the right. All the bits dropped in the right side are inserted back on the left side.

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

◆ mask() [1/2]

template<typename genIUType >
GLM_FUNC_DECL genIUType glm::mask ( genIUType Bits)

Build a mask of 'count' bits

See also
GLM_GTC_bitfield

◆ mask() [2/2]

template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > glm::mask ( vec< L, T, Q > const & v)

Build a mask of 'count' bits

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