#include
<oglplus/memory_barrier.hpp>
enum class MemoryBarrierBit : GLbitfield { VertexAttribArray = GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT, ElementArray = GL_ELEMENT_ARRAY_BARRIER_BIT, Uniform = GL_UNIFORM_BARRIER_BIT, TextureFetch = GL_TEXTURE_FETCH_BARRIER_BIT, ShaderImageAccess = GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, Command = GL_COMMAND_BARRIER_BIT, PixelBuffer = GL_PIXEL_BUFFER_BARRIER_BIT, TextureUpdate = GL_TEXTURE_UPDATE_BARRIER_BIT, BufferUpdate = GL_BUFFER_UPDATE_BARRIER_BIT, Framebuffer = GL_FRAMEBUFFER_BARRIER_BIT, TransformFeedback = GL_TRANSFORM_FEEDBACK_BARRIER_BIT, AtomicCounter = GL_ATOMIC_COUNTER_BARRIER_BIT, ShaderStorage = GL_SHADER_STORAGE_BARRIER_BIT, ClientMappedBuffer = GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT, All = GL_ALL_BARRIER_BITS }; template <> Range<MemoryBarrierBit> EnumValueRange<MemoryBarrierBit>(void); StrCRef EnumValueName(MemoryBarrierBit); Bitfield<MemoryBarrierBit> operator | (MemoryBarrierBit b1, MemoryBarrierBit b2);