22template <
typename Type>
23template <
typename ConstructionType>
30template <
typename Type>
36template <
typename Type>
39 return static_cast<Type>(this->m_value);
42template <
typename Type>
43template <
typename...
T>
49template <
typename Type>
50template <
typename...
T>
58template <
typename Type>
59template <
typename...
T>
65template <
typename Type>
66template <
typename...
T>
74template <
typename Type>
75template <
typename...
T>
81template <
typename Type>
82template <
typename...
T>
90template <
typename Type>
91template <
typename...
T>
97template <
typename Type>
105template <
typename Type,
typename...
Types>
106template <
typename ConstructionType>
113template <
typename Type,
typename...
Types>
119template <
typename Type,
typename...
Types>
122 return static_cast<Type>(this->m_value);
125template <
typename Type,
typename...
Types>
126template <
typename...
T>
132template <
typename Type,
typename...
Types>
133template <
typename...
T>
141template <
typename Type,
typename...
Types>
142template <
typename...
T>
148template <
typename Type,
typename...
Types>
149template <
typename...
T>
157template <
typename Type,
typename...
Types>
158template <
typename...
T>
164template <
typename Type,
typename...
Types>
165template <
typename...
T>
173template <
typename Type,
typename...
Types>
174template <
typename...
T>
180template <
typename Type,
typename...
Types>
188template <
typename Enum,
typename ConvertibleEnum>
189GLBINDING_CONSTEXPR typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value,
Enum>::type>::type>,
ConvertibleEnum>::value,
Enum>::type
192 return a |
static_cast<Enum>(
b);
195template <
typename ConvertibleEnum,
typename Enum>
196GLBINDING_CONSTEXPR
typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
199 return static_cast<Enum>(
a) |
b;
202template <
typename Enum,
typename ConvertibleEnum>
203typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
206 return a |=
static_cast<Enum>(
b);
209template <
typename Enum,
typename ConvertibleEnum>
210GLBINDING_CONSTEXPR
typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
213 return a &
static_cast<Enum>(
b);
216template <
typename ConvertibleEnum,
typename Enum>
217GLBINDING_CONSTEXPR
typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
220 return static_cast<Enum>(
a) &
b;
223template <
typename Enum,
typename ConvertibleEnum>
224typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
227 return a &=
static_cast<Enum>(
b);
230template <
typename Enum,
typename ConvertibleEnum>
231GLBINDING_CONSTEXPR
typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
234 return a ^
static_cast<Enum>(
b);
237template <
typename ConvertibleEnum,
typename Enum>
238GLBINDING_CONSTEXPR
typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
241 return static_cast<Enum>(
a) ^
b;
244template <
typename Enum,
typename ConvertibleEnum>
245typename std::enable_if<std::is_base_of<SharedBitfieldBase<typename std::underlying_type<typename std::enable_if<std::is_enum<Enum>::value, Enum>::type>::type>, ConvertibleEnum>::value, Enum>::type
248 return a ^=
static_cast<Enum>(
b);
typename SharedBitfield< Types... >::UnderlyingType UnderlyingType
inherit UnderlyingType declaration
Definition SharedBitfield.h:352
typename SharedBitfieldBase< typename std::underlying_type< Type >::type >::UnderlyingType UnderlyingType
inherit UnderlyingType declaration
Definition SharedBitfield.h:183
Invalid SharedBitfield class as it contains no valid bitfield types.
Definition SharedBitfield.h:167
The base class of a SharedBitfield, containing the actual (and convertible) bitfield value.
Definition SharedBitfield.h:133
GLBINDING_CONSTEXPR SharedBitfieldBase(T value)
Constructor.
Definition SharedBitfield.inl:10
A representation of a bitfield value that could be member of multiple bitfield types as allowed in Op...
Definition SharedBitfield.h:23
The Value class represents a printable wrapper around an OpenGL data type.
Definition Value.h:30
Contains all the classes of glbinding.
GLBINDING_CONSTEXPR CallbackMask operator&(CallbackMask a, CallbackMask b)
External operator for bit-wise 'and' of CallbackMasks.
Definition CallbackMask.inl:26
GLBINDING_CONSTEXPR CallbackMask operator|(CallbackMask a, CallbackMask b)
External operator for bit-wise 'or' of CallbackMasks.
Definition CallbackMask.inl:19
CallbackMask & operator&=(CallbackMask &a, CallbackMask b)
External operator for bit-wise 'and' assignment of CallbackMasks.
Definition CallbackMask.inl:46
CallbackMask & operator^=(CallbackMask &a, CallbackMask b)
External operator for bit-wise 'xor' assignment of CallbackMasks.
Definition CallbackMask.inl:52
CallbackMask & operator|=(CallbackMask &a, CallbackMask b)
External operator for bit-wise 'or' assignment of CallbackMasks.
Definition CallbackMask.inl:40
GLBINDING_CONSTEXPR CallbackMask operator^(CallbackMask a, CallbackMask b)
External operator for bit-wise 'xor' of CallbackMasks.
Definition CallbackMask.inl:33
Break condition for the SharedBitfield intersection.
Definition SharedBitfield.h:98
Break condition for the is_member_of_SharedBitfield metaprogramming.
Definition SharedBitfield.h:43