Browse Source

Framebuffer: don't allow invalid bits to be present in *Mask enum sets.

Now ~Framebuffer::Clear::Color is equal to
Framebuffer::Clear::Depth|Framebuffer::Clear::Stencil, which wasn't the
case before, the same for BlitMask.
vectorfields
Vladimír Vondruš 14 years ago
parent
commit
b9ed4159e0
  1. 7
      src/Framebuffer.h

7
src/Framebuffer.h

@ -115,7 +115,9 @@ class MAGNUM_EXPORT Framebuffer {
Stencil = GL_STENCIL_BUFFER_BIT /**< Stencil value */
};
typedef Corrade::Containers::EnumSet<Clear, GLbitfield> ClearMask; /**< @brief Mask for clearing */
/** @brief Mask for clearing */
typedef Corrade::Containers::EnumSet<Clear, GLbitfield,
GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT> ClearMask;
/**
* @brief Clear specified buffers in framebuffer
@ -1023,7 +1025,8 @@ class MAGNUM_EXPORT Framebuffer {
* @requires_gl
* @requires_gl30 Extension @extension{EXT,framebuffer_object}
*/
typedef Corrade::Containers::EnumSet<Blit, GLbitfield> BlitMask;
typedef Corrade::Containers::EnumSet<Blit, GLbitfield,
GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT> BlitMask;
/**
* @brief Copy block of pixels from read to draw framebuffer

Loading…
Cancel
Save