OGLplus (0.45.0) a C++ wrapper for OpenGL

Wrapper for OpenGL framebuffer operations. More...

#include </home/chochlik/devel/oglplus/include/oglplus/framebuffer.hpp>

Inheritance diagram for oglplus::FramebufferOps:

Classes

struct  Property
 Types related to Framebuffer. More...
 

Public Types

typedef FramebufferTarget Target
 Framebuffer bind targets.
 

Public Member Functions

void Bind (Target target) const
 Bind this framebuffer to the specified target. More...
 

Static Public Member Functions

static void BindDefault (Target target)
 Binds the default framebuffer to the specified target. More...
 
static void Unbind (Target target)
 Binds the default framebuffer to the specified target. More...
 
static FramebufferStatus Status (Target target)
 Checks the status of the framebuffer. More...
 
static bool IsComplete (Target target)
 Returns true if the framebuffer is complete. More...
 
static void Complete (Target target)
 Throws an exception if the framebuffer is not complete.
 
static void AttachRenderbuffer (Target target, Property::Attachment attachment, const RenderbufferOps &renderbuffer)
 Attach a renderbuffer to the attachment point of target. More...
 
static void AttachColorRenderbuffer (Target target, FramebufferColorAttachmentNumber attachment_no, const RenderbufferOps &renderbuffer)
 Attach a renderbuffer to the color attachment_no of target. More...
 
static void AttachTexture (Target target, Property::Attachment attachment, const TextureOps &texture, GLint level)
 Attach a texture to the attachment point of target. More...
 
static void AttachColorTexture (Target target, FramebufferColorAttachmentNumber attachment_no, const TextureOps &texture, GLint level)
 Attach a texture to the color attachment point of target. More...
 
static void AttachTexture1D (Target target, Property::Attachment attachment, Texture::Target textarget, const TextureOps &texture, GLint level)
 Attach a 1D texture to the attachment point of target. More...
 
static void AttachTexture2D (Target target, Property::Attachment attachment, Texture::Target textarget, const TextureOps &texture, GLint level)
 Attach a 2D texture to the attachment point of target. More...
 
static void AttachTexture3D (Target target, Property::Attachment attachment, Texture::Target textarget, const TextureOps &texture, GLint level, GLint layer)
 Attach a 3D texture to the attachment point of target. More...
 
static void AttachTextureLayer (Target target, Property::Attachment attachment, const TextureOps &texture, GLint level, GLint layer)
 Attach a texture layer to the attachment point of target. More...
 
static void Invalidate (Target target, const EnumArray< Property::Buffer > &buffers)
 Invalidates the specified attachments or buffers of the Framebuffer. More...
 
template<typename N >
static void Invalidate (Target target, GLsizei count, const Property::Buffer *buffers)
 Invalidates the specified attachments or buffers of the Framebuffer. More...
 
static void Invalidate (Target target, const EnumArray< Property::Buffer > &buffers, GLint x, GLint y, GLsizei width, GLsizei height)
 Invalidates parts of attachments or buffers of the Framebuffer. More...
 
static void Invalidate (Target target, GLsizei count, const Property::Buffer *buffers, GLint x, GLint y, GLsizei width, GLsizei height)
 Invalidates parts of attachments or buffers of the Framebuffer. More...
 

Detailed Description

Wrapper for OpenGL framebuffer operations.

Note
Do not use this class directly, use FrameBuffer instead
See Also
Framebuffer
Related OpenGL symbols:
glGenFramebuffers glDeleteFramebuffers glIsFramebuffer

Member Function Documentation

static void oglplus::FramebufferOps::AttachColorRenderbuffer ( Target  target,
FramebufferColorAttachmentNumber  attachment_no,
const RenderbufferOps renderbuffer 
)
static
static void oglplus::FramebufferOps::AttachColorTexture ( Target  target,
FramebufferColorAttachmentNumber  attachment_no,
const TextureOps texture,
GLint  level 
)
static
static void oglplus::FramebufferOps::AttachRenderbuffer ( Target  target,
Property::Attachment  attachment,
const RenderbufferOps renderbuffer 
)
static
static void oglplus::FramebufferOps::AttachTexture ( Target  target,
Property::Attachment  attachment,
const TextureOps texture,
GLint  level 
)
static
static void oglplus::FramebufferOps::AttachTexture1D ( Target  target,
Property::Attachment  attachment,
Texture::Target  textarget,
const TextureOps texture,
GLint  level 
)
static
static void oglplus::FramebufferOps::AttachTexture2D ( Target  target,
Property::Attachment  attachment,
Texture::Target  textarget,
const TextureOps texture,
GLint  level 
)
static
static void oglplus::FramebufferOps::AttachTexture3D ( Target  target,
Property::Attachment  attachment,
Texture::Target  textarget,
const TextureOps texture,
GLint  level,
GLint  layer 
)
static
static void oglplus::FramebufferOps::AttachTextureLayer ( Target  target,
Property::Attachment  attachment,
const TextureOps texture,
GLint  level,
GLint  layer 
)
static
void oglplus::FramebufferOps::Bind ( Target  target) const

Bind this framebuffer to the specified target.

Exceptions
Error
Related OpenGL symbols:
glBindFramebuffer
static void oglplus::FramebufferOps::BindDefault ( Target  target)
static
static void oglplus::FramebufferOps::Invalidate ( Target  target,
const EnumArray< Property::Buffer > &  buffers 
)
static

Invalidates the specified attachments or buffers of the Framebuffer.

Requires OpenGL 4.3 or the GL_ARB_invalidate_subdata extension.

Related OpenGL symbols:
glInvalidateFramebuffer

References oglplus::EnumValueName(), and OGLPLUS_CHECK.

Referenced by oglplus::BoundTemplate< Base, BaseParam, FramebufferOps >::Invalidate(), and Invalidate().

template<typename N >
static void oglplus::FramebufferOps::Invalidate ( Target  target,
GLsizei  count,
const Property::Buffer buffers 
)
static

Invalidates the specified attachments or buffers of the Framebuffer.

Requires OpenGL 4.3 or the GL_ARB_invalidate_subdata extension.

Related OpenGL symbols:
glInvalidateFramebuffer

References Invalidate().

static void oglplus::FramebufferOps::Invalidate ( Target  target,
const EnumArray< Property::Buffer > &  buffers,
GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height 
)
static

Invalidates parts of attachments or buffers of the Framebuffer.

Requires OpenGL 4.3 or the GL_ARB_invalidate_subdata extension.

Related OpenGL symbols:
glInvalidateSubFramebuffer

References oglplus::EnumValueName(), and OGLPLUS_CHECK.

static void oglplus::FramebufferOps::Invalidate ( Target  target,
GLsizei  count,
const Property::Buffer buffers,
GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height 
)
static

Invalidates parts of attachments or buffers of the Framebuffer.

Requires OpenGL 4.3 or the GL_ARB_invalidate_subdata extension.

Related OpenGL symbols:
glInvalidateSubFramebuffer

References Invalidate().

static bool oglplus::FramebufferOps::IsComplete ( Target  target)
static

Returns true if the framebuffer is complete.

See Also
FramebufferStatus
Status()
Related OpenGL symbols:
glCheckFramebufferStatus
Examples:
oglplus/031_fog.cpp, and oglplus/031_motion_blur.cpp.

References oglplus::Complete, and Status().

Referenced by oglplus::BoundTemplate< Base, BaseParam, FramebufferOps >::IsComplete().

static FramebufferStatus oglplus::FramebufferOps::Status ( Target  target)
static

Checks the status of the framebuffer.

Returns one of the values in the FramebufferStatus enumeration. For complete framebuffers this member function returns Status::Complete.

See Also
IsComplete
Related OpenGL symbols:
glCheckFramebufferStatus

References oglplus::EnumValueName(), and OGLPLUS_CHECK.

Referenced by Complete(), IsComplete(), and oglplus::BoundTemplate< Base, BaseParam, FramebufferOps >::Status().

static void oglplus::FramebufferOps::Unbind ( Target  target)
static

Binds the default framebuffer to the specified target.

Exceptions
Error
Related OpenGL symbols:
glBindFramebuffer

References BindDefault().


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

Copyright © 2010-2014 Matúš Chochlík, University of Žilina, Žilina, Slovakia.
<matus.chochlik -at- fri.uniza.sk>
<chochlik -at -gmail.com>
Documentation generated on Wed Apr 30 2014 by Doxygen (version 1.8.4).