diff options
author | Brian Paul <[email protected]> | 2002-07-09 01:22:50 +0000 |
---|---|---|
committer | Brian Paul <[email protected]> | 2002-07-09 01:22:50 +0000 |
commit | 3b4fbbc129c711a5aec8d653d5c6eb2e195f947c (patch) | |
tree | ececa2d3a08ab45afd2068d9cabf5609a0c374d1 /src/mesa/main/dd.h | |
parent | b4338e58879a4f2eabf8af09f9dfa7adf6e9f9f2 (diff) |
Overhaul of glRead/DrawBuffer() code. Now, swrast->Driver.SetBuffer()
indicates the read AND draw color buffer for all software rasterization.
Lots of related clean-ups. See RELNOTES-4.1 for details.
Diffstat (limited to 'src/mesa/main/dd.h')
-rw-r--r-- | src/mesa/main/dd.h | 35 |
1 files changed, 11 insertions, 24 deletions
diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 1a100102ae4..81ae9e4a125 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -1,4 +1,4 @@ -/* $Id: dd.h,v 1.69 2002/06/15 02:38:15 brianp Exp $ */ +/* $Id: dd.h,v 1.70 2002/07/09 01:22:50 brianp Exp $ */ /* * Mesa 3-D graphics library @@ -48,11 +48,6 @@ struct gl_pixelstore_attrib; */ struct dd_function_table { - /********************************************************************** - *** Mandatory functions: these functions must be implemented by *** - *** every device driver. *** - **********************************************************************/ - const GLubyte * (*GetString)( GLcontext *ctx, GLenum name ); /* Return a string as needed by glGetString(). * Only the GL_RENDERER token must be implemented. Otherwise, @@ -74,28 +69,23 @@ struct dd_function_table { * If 'all' is true then the clear the whole buffer, else clear only the * region defined by (x,y,width,height). * This function must obey the glColorMask, glIndexMask and glStencilMask - * settings! Software Mesa can do masked clears if the device driver can't. + * settings! + * Software Mesa can do masked clears if the device driver can't. */ - void (*SetDrawBuffer)( GLcontext *ctx, GLenum buffer ); + void (*DrawBuffer)( GLcontext *ctx, GLenum buffer ); /* - * Specifies the current buffer for writing. - * The following values must be accepted when applicable: - * GL_FRONT_LEFT - this buffer always exists - * GL_BACK_LEFT - when double buffering - * GL_FRONT_RIGHT - when using stereo - * GL_BACK_RIGHT - when using stereo and double buffering - * GL_FRONT - write to front left and front right if it exists - * GL_BACK - write to back left and back right if it exists - * GL_LEFT - write to front left and back left if it exists - * GL_RIGHT - write to right left and back right if they exist - * GL_FRONT_AND_BACK - write to all four buffers if they exist - * GL_NONE - disable buffer write in device driver. - * + * Specifies the current buffer for writing. Called via glDrawBuffer(). * Note the driver must organize fallbacks (eg with swrast) if it * cannot implement the requested mode. */ + + void (*ReadBuffer)( GLcontext *ctx, GLenum buffer ); + /* + * Specifies the current buffer for reading. Called via glReadBuffer(). + */ + void (*GetBufferSize)( GLframebuffer *buffer, GLuint *width, GLuint *height ); /* @@ -520,7 +510,6 @@ struct dd_function_table { void (*TextureMatrix)(GLcontext *ctx, GLuint unit, const GLmatrix *mat); void (*Viewport)(GLcontext *ctx, GLint x, GLint y, GLsizei w, GLsizei h); - /*** *** Vertex array functions *** @@ -555,8 +544,6 @@ struct dd_function_table { GLboolean (*GetIntegerv)(GLcontext *ctx, GLenum pname, GLint *result); GLboolean (*GetPointerv)(GLcontext *ctx, GLenum pname, GLvoid **result); - - /*** *** Support for multiple t&l engines ***/ |