46 #include "../detail/setup.hpp" 
   47 #include "../detail/precision.hpp" 
   48 #include "../detail/type_int.hpp" 
   49 #include "../detail/_vectorize.hpp" 
   52 #if(defined(GLM_MESSAGES) && !defined(GLM_EXT_INCLUDED)) 
   53 #       pragma message("GLM: GLM_GTC_bitfield extension included") 
   64         template <
typename genIUType>
 
   65         GLM_FUNC_DECL genIUType 
mask(genIUType Bits);
 
   70         template <
typename T, precision P, 
template <
typename, precision> 
class vecIUType>
 
   71         GLM_FUNC_DECL vecIUType<T, P> 
mask(vecIUType<T, P> 
const & v);
 
   76         template <
typename genIUType>
 
   82         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
   88         template <
typename genIUType>
 
   94         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  100         template <
typename genIUType>
 
  101         GLM_FUNC_DECL genIUType 
bitfieldFillOne(genIUType Value, 
int FirstBit, 
int BitCount);
 
  106         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  107         GLM_FUNC_DECL vecType<T, P> 
bitfieldFillOne(vecType<T, P> 
const & Value, 
int FirstBit, 
int BitCount);
 
  112         template <
typename genIUType>
 
  113         GLM_FUNC_DECL genIUType 
bitfieldFillZero(genIUType Value, 
int FirstBit, 
int BitCount);
 
  118         template <
typename T, precision P, 
template <
typename, precision> 
class vecType>
 
  119         GLM_FUNC_DECL vecType<T, P> 
bitfieldFillZero(vecType<T, P> 
const & Value, 
int FirstBit, 
int BitCount);
 
  236 #include "bitfield.inl" 
GLM_FUNC_DECL vecType< T, P > bitfieldRotateLeft(vecType< T, P > const &In, int Shift)
Rotate all bits to the left. 
GLM_FUNC_DECL uint64 bitfieldInterleave(uint16 x, uint16 y, uint16 z, uint16 w)
Interleaves the bits of x, y, z and w. 
GLM_FUNC_DECL vecIUType< T, P > mask(vecIUType< T, P > const &v)
Build a mask of 'count' bits. 
GLM_FUNC_DECL vecType< T, P > bitfieldRotateRight(vecType< T, P > const &In, int Shift)
Rotate all bits to the right. 
GLM_FUNC_DECL vecType< T, P > bitfieldFillZero(vecType< T, P > const &Value, int FirstBit, int BitCount)
Set to 0 a range of bits. 
GLM_FUNC_DECL vecType< T, P > bitfieldFillOne(vecType< T, P > const &Value, int FirstBit, int BitCount)
Set to 1 a range of bits.