VolViz
A volume visualization tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
VolViz::Private_::GL::Buffer Struct Reference

RAII wrapper for OpenGL buffers. More...

#include <Buffer.h>

+ Collaboration diagram for VolViz::Private_::GL::Buffer:

Public Member Functions

 Buffer (int) noexcept
 
 Buffer () noexcept
 
 ~Buffer ()
 
 Buffer (Buffer const &)=delete
 
 Buffer (Buffer &&rhs) noexcept
 
Bufferoperator= (Buffer &&rhs) noexcept
 
void bind (GLenum target) const noexcept
 
template<class T >
void upload (GLenum target, std::size_t size, T const *data, GLbitfield flags) noexcept
 

Static Public Member Functions

static void unbind (GLenum target) noexcept
 

Public Attributes

GLuint name = 0
 

Detailed Description

RAII wrapper for OpenGL buffers.

Constructor & Destructor Documentation

VolViz::Private_::GL::Buffer::Buffer ( int  )
inlinenoexcept

Constructs an uninitialized buffer object, i.e. with no corresponding OpenGL buffer

VolViz::Private_::GL::Buffer::Buffer ( )
inlinenoexcept
VolViz::Private_::GL::Buffer::~Buffer ( )
inline
VolViz::Private_::GL::Buffer::Buffer ( Buffer const &  )
delete
VolViz::Private_::GL::Buffer::Buffer ( Buffer &&  rhs)
inlinenoexcept

Member Function Documentation

void VolViz::Private_::GL::Buffer::bind ( GLenum  target) const
inlinenoexcept
Buffer& VolViz::Private_::GL::Buffer::operator= ( Buffer &&  rhs)
inlinenoexcept
static void VolViz::Private_::GL::Buffer::unbind ( GLenum  target)
inlinestaticnoexcept
template<class T >
void VolViz::Private_::GL::Buffer::upload ( GLenum  target,
std::size_t  size,
T const *  data,
GLbitfield  flags 
)
inlinenoexcept

Member Data Documentation

GLuint VolViz::Private_::GL::Buffer::name = 0

The documentation for this struct was generated from the following file: