glbinding  2.1.1.000000000000
A C++ binding for the OpenGL API, generated using the gl.xml specification.
SharedBitfield.h File Reference
#include <type_traits>
#include <glbinding/SharedBitfield.inl>

Go to the source code of this file.

Classes

struct  glbinding::is_member_of_SharedBitfield< T, Types >
 Break condition for the is_member_of_SharedBitfield metaprogramming. More...
 
struct  glbinding::is_member_of_SharedBitfield< T, U, Types... >
 Test condition and recursion for the is_member_of_SharedBitfield metaprogramming. More...
 
struct  glbinding::prepend_to_SharedBitfield< typename, typename >
 Break condition for the SharedBitfield type concatenation. More...
 
struct  glbinding::prepend_to_SharedBitfield< T, SharedBitfield< Types... > >
 The SharedBitfield type concatenation. More...
 
struct  glbinding::intersect_SharedBitfield< typename, typename >
 Break condition for the SharedBitfield intersection. More...
 
struct  glbinding::intersect_SharedBitfield< SharedBitfield< T, Types... >, SharedBitfield< OtherTypes... > >
 The SharedBitfield type list intersection. More...
 
class  glbinding::SharedBitfieldBase< T >
 The base class of a SharedBitfield, containing the actual (and convertible) bitfield value. More...
 
class  glbinding::SharedBitfield<>
 Invalid SharedBitfield class as it contains no valid bitfield types. More...
 
class  glbinding::SharedBitfield< Type >
 A representation of a bitfield value that could be member of multiple bitfield types as allowed in OpenGL. This template is the break condition of a former SharedBitfield that got reduced to just one valid bitfield type through operations. More...
 
class  glbinding::SharedBitfield< Type, Types... >
 A representation of a bitfield value that could be member of multiple bitfield types as allowed in OpenGL. More...
 

Namespaces

namespace  glbinding
 Contains all the classes of glbinding.
 

Functions

template<typename Enum , typename ConvertibleEnum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator| (Enum a, ConvertibleEnum b)
 External bit-wise 'or' operator for bitfield types on the left hand side. More...
 
template<typename ConvertibleEnum , typename Enum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator| (ConvertibleEnum a, Enum b)
 External bit-wise 'or' operator for bitfield types on the right hand side. More...
 
template<typename Enum , typename ConvertibleEnum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator|= (Enum &a, ConvertibleEnum b)
 External bit-wise 'or' assignment operator for bitfield types on the left hand side. More...
 
template<typename Enum , typename ConvertibleEnum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator& (Enum a, ConvertibleEnum b)
 External bit-wise 'and' operator for bitfield types on the left hand side. More...
 
template<typename ConvertibleEnum , typename Enum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator& (ConvertibleEnum a, Enum b)
 External bit-wise 'and' operator for bitfield types on the right hand side. More...
 
template<typename Enum , typename ConvertibleEnum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator&= (Enum &a, ConvertibleEnum b)
 External bit-wise 'and' assignment operator for bitfield types on the left hand side. More...
 
template<typename Enum , typename ConvertibleEnum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator^ (Enum a, ConvertibleEnum b)
 External bit-wise 'xor' operator for bitfield types on the left hand side. More...
 
template<typename ConvertibleEnum , typename Enum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator^ (ConvertibleEnum a, Enum b)
 External bit-wise 'xor' operator for bitfield types on the right hand side. More...
 
template<typename Enum , typename ConvertibleEnum >
std::enable_if< std::is_base_of< SharedBitfieldBase< typenamestd::underlying_type< typenamestd::enable_if< std::is_enum< Enum >::value, Enum >::type >::type >, ConvertibleEnum >::value, Enum >::type glbinding::operator^= (Enum &a, ConvertibleEnum b)
 External bit-wise 'xpyor' assignment operator for bitfield types on the left hand side. More...