13 #ifndef OGLPLUS_DSA_RENDERBUFFER_1107121519_HPP
14 #define OGLPLUS_DSA_RENDERBUFFER_1107121519_HPP
20 #if OGLPLUS_DOCUMENTATION_ONLY || GL_VERSION_4_5 || GL_ARB_direct_state_access
25 typedef tag::Create Type;
34 :
public ObjZeroOps<tag::DirectState, tag::Renderbuffer>
39 GLint GetIntParam(GLenum query)
const;
52 OGLPLUS_GLFUNC(NamedRenderbufferStorage)(
54 GLenum(internalformat),
59 NamedRenderbufferStorage,
62 EnumParam(internalformat)
71 void Storage(
const images::ImageSpec& image_spec);
85 OGLPLUS_GLFUNC(NamedRenderbufferStorageMultisample)(
88 GLenum(internalformat),
93 NamedRenderbufferStorageMultisample,
96 EnumParam(internalformat)
111 return GLsizei(GetIntParam(GL_RENDERBUFFER_WIDTH));
124 return GLsizei(GetIntParam(GL_RENDERBUFFER_HEIGHT));
139 return GLsizei(GetIntParam(GL_RENDERBUFFER_RED_SIZE));
156 return GLsizei(GetIntParam(GL_RENDERBUFFER_GREEN_SIZE));
173 return GLsizei(GetIntParam(GL_RENDERBUFFER_BLUE_SIZE));
190 return GLsizei(GetIntParam(GL_RENDERBUFFER_ALPHA_SIZE));
207 return GLsizei(GetIntParam(GL_RENDERBUFFER_DEPTH_SIZE));
224 return GLsizei(GetIntParam(GL_RENDERBUFFER_STENCIL_SIZE));
235 return GLsizei(GetIntParam(GL_RENDERBUFFER_SAMPLES));
247 GetIntParam(GL_RENDERBUFFER_INTERNAL_FORMAT)
253 typedef ObjectOps<tag::DirectState, tag::Renderbuffer>
271 const images::ImageSpec& image_spec
284 #endif // GL_ARB_direct_state_access
288 #if !OGLPLUS_LINK_LIBRARY || defined(OGLPLUS_IMPLEMENTING_LIBRARY)
289 #include <oglplus/dsa/renderbuffer.ipp>
290 #endif // OGLPLUS_LINK_LIBRARY
292 #endif // include guard
GLsizei Height(void) const
Returns the height of the renderbuffer as it was specified by Storage*.
Definition: renderbuffer.hpp:122
GLsizei RedSize(void) const
Returns the size in bits of the renderbuffer's red component.
Definition: renderbuffer.hpp:137
ObjectOps< tag::DirectState, tag::Renderbuffer > DSARenderbufferOps
Renderbuffer operations with direct state access.
Definition: renderbuffer.hpp:254
PixelDataInternalFormat
OpenGL pixel data internal format enumeration.
Definition: pixel_data.hpp:79
void StorageMultisample(GLsizei samples, PixelDataInternalFormat internalformat, GLsizei width, GLsizei height)
Set the renderbuffer multisample storage parameters.
Definition: renderbuffer.hpp:78
PixelDataInternalFormat InternalFormat(void) const
Returns the internal format of the renderbuffer.
Definition: renderbuffer.hpp:244
GLsizei BlueSize(void) const
Returns the size in bits of the renderbuffer's blue component.
Definition: renderbuffer.hpp:171
void Storage(PixelDataInternalFormat internalformat, GLsizei width, GLsizei height)
Set the renderbuffer storage parameters.
Definition: renderbuffer.hpp:46
Implements operations applicable to named (non-zero) objects.
Definition: wrap_tpl.hpp:45
GLsizei AlphaSize(void) const
Returns the size in bits of the renderbuffer's alpha component.
Definition: renderbuffer.hpp:188
RenderbufferTarget
Renderbuffer bind target.
Definition: renderbuffer_target.hpp:24
Object< DSARenderbufferOps > DSARenderbuffer
An oglplus_object encapsulating the OpenGL renderbuffer functionality.
Definition: renderbuffer.hpp:282
Implements operations applicable to any object including object 0 (zero)
Definition: fwd.hpp:157
GLsizei DepthSize(void) const
Returns the size in bits of the renderbuffer's depth component.
Definition: renderbuffer.hpp:205
GLsizei GreenSize(void) const
Returns the size in bits of the renderbuffer's green component.
Definition: renderbuffer.hpp:154
GLsizei StencilSize(void) const
Returns the size in bits of the renderbuffer's stencil component.
Definition: renderbuffer.hpp:222
RENDERBUFFER: The default target.
Exception class for GL object-related errors.
Definition: object.hpp:24
GLsizei Samples(void) const
Returns the number of samples of the renderbuffer.
Definition: renderbuffer.hpp:233
void Bind(Target target=Target::Renderbuffer) const
Binds this renderbuffer to the specified target.
Definition: renderbuffer.hpp:133
Renderbuffer object wrappers.
GLsizei Width(void) const
Returns the width of the renderbuffer as it was specified by Storage*.
Definition: renderbuffer.hpp:109
Class wrapping renderbuffer-related functionality with direct state access.
Definition: renderbuffer.hpp:33