globjects  2.0.0.630135941c42
Strict OpenGL objects wrapper.
Loading...
Searching...
No Matches
Renderbuffer.h
Go to the documentation of this file.
1
2#pragma once
3
4
5#include <glbinding/gl/types.h>
6
7#include <globjects/globjects_api.h>
8#include <globjects/Object.h>
10
11
12namespace globjects
13{
14
15
20class GLOBJECTS_API Renderbuffer : public Object, public Instantiator<Renderbuffer>
21{
22public:
24
25 virtual ~Renderbuffer();
26
27 void bind() const;
28 static void unbind();
29
30 void storage(gl::GLenum internalformat, gl::GLsizei width, gl::GLsizei height);
31 void storageMultisample(gl::GLsizei samples, gl::GLenum internalformat, gl::GLsizei width, gl::GLsizei height);
32
33 gl::GLint getParameter(gl::GLenum pname) const;
34
35 virtual gl::GLenum objectType() const override;
36
37
38protected:
39 void bind(gl::GLenum target) const;
40 static void unbind(gl::GLenum target);
41};
42
43
44} // namespace globjects
CRTP for creating objects similar to std::make_unique.
Definition Instantiator.h:22
Superclass of all wrapped OpenGL objects.
Definition Object.h:28
Encapsulates OpenGL render buffer objects.
Definition Renderbuffer.h:21
gl::GLint getParameter(gl::GLenum pname) const
void bind(gl::GLenum target) const
virtual gl::GLenum objectType() const override
void storage(gl::GLenum internalformat, gl::GLsizei width, gl::GLsizei height)
void storageMultisample(gl::GLsizei samples, gl::GLenum internalformat, gl::GLsizei width, gl::GLsizei height)
static void unbind(gl::GLenum target)
Contains all the classes that wrap OpenGL functionality.