#include <mtypes.h>
A framebuffer object will have a collection of these. Data are read/written to the buffer with a handful of Get/Put functions.
Instances of this object are allocated with the Driver's NewRenderbuffer hook. Drivers will likely wrap this class inside a driver-specific class to simulate inheritance.
Data Fields | |
| int | Magic |
| _glthread_Mutex | Mutex |
| XXX TEMPORARY DEBUG INFO. | |
| GLuint | ClassID |
| Useful for drivers. | |
| GLuint | Name |
| GLint | RefCount |
| GLuint | Width |
| GLuint | Height |
| GLenum | InternalFormat |
| The user-specified format. | |
| GLenum | _ActualFormat |
| The driver-chosen format. | |
| GLenum | _BaseFormat |
| Either GL_RGB, GL_RGBA, GL_DEPTH_COMPONENT or GL_STENCIL_INDEX. | |
| GLenum | ColorEncoding |
| GL_LINEAR or GL_SRGB. | |
| GLenum | ComponentType |
| GL_FLOAT, GL_INT, GL_UNSIGNED_INT, GL_UNSIGNED_NORMALIZED or GL_INDEX. | |
| GLubyte | RedBits |
| Bits of red per pixel. | |
| GLubyte | GreenBits |
| GLubyte | BlueBits |
| GLubyte | AlphaBits |
| GLubyte | IndexBits |
| GLubyte | DepthBits |
| GLubyte | StencilBits |
| GLubyte | NumSamples |
| GLenum | DataType |
| Type of values passed to the Get/Put functions. | |
| GLvoid * | Data |
| This may not be used by some kinds of RBs. | |
| struct gl_renderbuffer * | Wrapped |
| void(* | Delete )(struct gl_renderbuffer *rb) |
| GLboolean(* | AllocStorage )(GLcontext *ctx, struct gl_renderbuffer *rb, GLenum internalFormat, GLuint width, GLuint height) |
| void *(* | GetPointer )(GLcontext *ctx, struct gl_renderbuffer *rb, GLint x, GLint y) |
| void(* | GetRow )(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) |
| void(* | GetValues )(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], void *values) |
| void(* | PutRow )(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask) |
| void(* | PutRowRGB )(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask) |
| void(* | PutMonoRow )(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *value, const GLubyte *mask) |
| void(* | PutValues )(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *values, const GLubyte *mask) |
| void(* | PutMonoValues )(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *value, const GLubyte *mask) |
| _glthread_Mutex gl_renderbuffer::Mutex |
XXX TEMPORARY DEBUG INFO.
for thread safety
| GLuint gl_renderbuffer::ClassID |
Useful for drivers.
| GLuint gl_renderbuffer::Name |
| GLuint gl_renderbuffer::Width |
| GLuint gl_renderbuffer::Height |
The user-specified format.
The driver-chosen format.
| GLenum gl_renderbuffer::_BaseFormat |
Either GL_RGB, GL_RGBA, GL_DEPTH_COMPONENT or GL_STENCIL_INDEX.
GL_LINEAR or GL_SRGB.
GL_FLOAT, GL_INT, GL_UNSIGNED_INT, GL_UNSIGNED_NORMALIZED or GL_INDEX.
| GLubyte gl_renderbuffer::RedBits |
Bits of red per pixel.
| GLubyte gl_renderbuffer::GreenBits |
| GLubyte gl_renderbuffer::BlueBits |
| GLubyte gl_renderbuffer::AlphaBits |
| GLubyte gl_renderbuffer::IndexBits |
| GLubyte gl_renderbuffer::DepthBits |
| GLubyte gl_renderbuffer::StencilBits |
| GLubyte gl_renderbuffer::NumSamples |
| GLenum gl_renderbuffer::DataType |
Type of values passed to the Get/Put functions.
| GLvoid* gl_renderbuffer::Data |
This may not be used by some kinds of RBs.
struct gl_renderbuffer* gl_renderbuffer::Wrapped [read] |
| void(* gl_renderbuffer::Delete)(struct gl_renderbuffer *rb) |
| GLboolean(* gl_renderbuffer::AllocStorage)(GLcontext *ctx, struct gl_renderbuffer *rb, GLenum internalFormat, GLuint width, GLuint height) |
| void*(* gl_renderbuffer::GetPointer)(GLcontext *ctx, struct gl_renderbuffer *rb, GLint x, GLint y) |
| void(* gl_renderbuffer::GetRow)(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) |
| void(* gl_renderbuffer::GetValues)(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], void *values) |
| void(* gl_renderbuffer::PutRow)(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask) |
| void(* gl_renderbuffer::PutRowRGB)(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask) |
| void(* gl_renderbuffer::PutMonoRow)(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *value, const GLubyte *mask) |
| void(* gl_renderbuffer::PutValues)(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *values, const GLubyte *mask) |
| void(* gl_renderbuffer::PutMonoValues)(GLcontext *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *value, const GLubyte *mask) |
1.5.4