SDL  2.0
VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType > Class Template Reference

#include <vulkan.hpp>

Public Member Functions

VULKAN_HPP_CONSTEXPR Flags ()
 
 Flags (BitType bit)
 
 Flags (Flags< BitType > const &rhs)
 
 Flags (MaskType flags)
 
Flags< BitType > & operator= (Flags< BitType > const &rhs)
 
Flags< BitType > & operator|= (Flags< BitType > const &rhs)
 
Flags< BitType > & operator&= (Flags< BitType > const &rhs)
 
Flags< BitType > & operator^= (Flags< BitType > const &rhs)
 
Flags< BitType > operator| (Flags< BitType > const &rhs) const
 
Flags< BitType > operator& (Flags< BitType > const &rhs) const
 
Flags< BitType > operator^ (Flags< BitType > const &rhs) const
 
bool operator! () const
 
Flags< BitType > operator~ () const
 
bool operator== (Flags< BitType > const &rhs) const
 
bool operator!= (Flags< BitType > const &rhs) const
 
 operator bool () const
 
 operator MaskType () const
 

Private Attributes

MaskType m_mask
 

Detailed Description

template<typename BitType, typename MaskType = VkFlags>
class VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >

Definition at line 146 of file vulkan.hpp.

Constructor & Destructor Documentation

◆ Flags() [1/4]

template<typename BitType , typename MaskType = VkFlags>
VULKAN_HPP_CONSTEXPR VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::Flags ( )
inline

Definition at line 149 of file vulkan.hpp.

150  : m_mask(0)
151  {
152  }

◆ Flags() [2/4]

template<typename BitType , typename MaskType = VkFlags>
VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::Flags ( BitType  bit)
inline

Definition at line 154 of file vulkan.hpp.

155  : m_mask(static_cast<MaskType>(bit))
156  {
157  }

◆ Flags() [3/4]

template<typename BitType , typename MaskType = VkFlags>
VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::Flags ( Flags< BitType > const &  rhs)
inline

Definition at line 159 of file vulkan.hpp.

160  : m_mask(rhs.m_mask)
161  {
162  }

◆ Flags() [4/4]

template<typename BitType , typename MaskType = VkFlags>
VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::Flags ( MaskType  flags)
inlineexplicit

Definition at line 164 of file vulkan.hpp.

165  : m_mask(flags)
166  {
167  }

Member Function Documentation

◆ operator bool()

template<typename BitType , typename MaskType = VkFlags>
VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator bool ( ) const
inlineexplicit

Definition at line 236 of file vulkan.hpp.

237  {
238  return !!m_mask;
239  }

◆ operator MaskType()

template<typename BitType , typename MaskType = VkFlags>
VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator MaskType ( ) const
inlineexplicit

Definition at line 241 of file vulkan.hpp.

242  {
243  return m_mask;
244  }

◆ operator!()

template<typename BitType , typename MaskType = VkFlags>
bool VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator! ( ) const
inline

Definition at line 214 of file vulkan.hpp.

215  {
216  return !m_mask;
217  }

◆ operator!=()

template<typename BitType , typename MaskType = VkFlags>
bool VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator!= ( Flags< BitType > const &  rhs) const
inline

Definition at line 231 of file vulkan.hpp.

232  {
233  return m_mask != rhs.m_mask;
234  }

◆ operator&()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType> VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator& ( Flags< BitType > const &  rhs) const
inline

Definition at line 200 of file vulkan.hpp.

201  {
202  Flags<BitType> result(*this);
203  result &= rhs;
204  return result;
205  }

◆ operator&=()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType>& VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator&= ( Flags< BitType > const &  rhs)
inline

Definition at line 181 of file vulkan.hpp.

182  {
183  m_mask &= rhs.m_mask;
184  return *this;
185  }

◆ operator=()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType>& VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator= ( Flags< BitType > const &  rhs)
inline

Definition at line 169 of file vulkan.hpp.

170  {
171  m_mask = rhs.m_mask;
172  return *this;
173  }

◆ operator==()

template<typename BitType , typename MaskType = VkFlags>
bool VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator== ( Flags< BitType > const &  rhs) const
inline

Definition at line 226 of file vulkan.hpp.

227  {
228  return m_mask == rhs.m_mask;
229  }

◆ operator^()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType> VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator^ ( Flags< BitType > const &  rhs) const
inline

Definition at line 207 of file vulkan.hpp.

208  {
209  Flags<BitType> result(*this);
210  result ^= rhs;
211  return result;
212  }

◆ operator^=()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType>& VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator^= ( Flags< BitType > const &  rhs)
inline

Definition at line 187 of file vulkan.hpp.

188  {
189  m_mask ^= rhs.m_mask;
190  return *this;
191  }

◆ operator|()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType> VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator| ( Flags< BitType > const &  rhs) const
inline

Definition at line 193 of file vulkan.hpp.

194  {
195  Flags<BitType> result(*this);
196  result |= rhs;
197  return result;
198  }

◆ operator|=()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType>& VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator|= ( Flags< BitType > const &  rhs)
inline

Definition at line 175 of file vulkan.hpp.

176  {
177  m_mask |= rhs.m_mask;
178  return *this;
179  }

◆ operator~()

template<typename BitType , typename MaskType = VkFlags>
Flags<BitType> VULKAN_HPP_NAMESPACE::Flags< BitType, MaskType >::operator~ ( ) const
inline

Definition at line 219 of file vulkan.hpp.

220  {
221  Flags<BitType> result(*this);
223  return result;
224  }

Field Documentation

◆ m_mask


The documentation for this class was generated from the following file:
VULKAN_HPP_NAMESPACE::FlagTraits::allFlags
@ allFlags
Definition: vulkan.hpp:142
result
GLuint64EXT * result
Definition: SDL_opengl_glext.h:9432
VULKAN_HPP_NAMESPACE::Flags::m_mask
MaskType m_mask
Definition: vulkan.hpp:247
flags
GLbitfield flags
Definition: SDL_opengl_glext.h:1480