diff options
author | Brian Paul <[email protected]> | 1999-12-10 19:09:21 +0000 |
---|---|---|
committer | Brian Paul <[email protected]> | 1999-12-10 19:09:21 +0000 |
commit | 5c3bee503999fbc0d7c65462ff62f9e38fe40e33 (patch) | |
tree | 0c6d7bf09b9dbd5a50eb79cb1e1e29cd35d8edb3 /src/mesa/main/dd.h | |
parent | f5abeebf491f8f8d0ae57d602fb3166b52b475b6 (diff) |
changes in hardware depth buffer support
Diffstat (limited to 'src/mesa/main/dd.h')
-rw-r--r-- | src/mesa/main/dd.h | 46 |
1 files changed, 22 insertions, 24 deletions
diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 904fa4849db..7a6d65437d7 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -1,4 +1,4 @@ -/* $Id: dd.h,v 1.7 1999/12/10 16:14:40 brianp Exp $ */ +/* $Id: dd.h,v 1.8 1999/12/10 19:09:22 brianp Exp $ */ /* * Mesa 3-D graphics library @@ -393,42 +393,40 @@ struct dd_function_table { *** Either ALL or NONE of these functions must be implemented! ***/ - void (*AllocDepthBuffer)( GLcontext *ctx ); - /* - * Called when the depth buffer must be allocated or possibly resized. + void (*WriteDepthSpan)( GLcontext *ctx, GLuint n, GLint x, GLint y, + const GLdepth depth[], const GLubyte mask[] ); + /* Write a horizontal span of values into the depth buffer. Only write + * depth[i] value if mask[i] is nonzero. */ - GLuint (*DepthTestSpan)( GLcontext *ctx, - GLuint n, GLint x, GLint y, const GLdepth z[], - GLubyte mask[] ); - void (*DepthTestPixels)( GLcontext *ctx, - GLuint n, const GLint x[], const GLint y[], - const GLdepth z[], GLubyte mask[] ); - /* - * Apply the depth buffer test to an span/array of pixels and return - * an updated pixel mask. This function is not used when accelerated - * point, line, polygon functions are used. + void (*ReadDepthSpan)( GLcontext *ctx, GLuint n, GLint x, GLint y, + GLdepth depth[] ); + /* Read a horizontal span of values from the depth buffer. */ - void (*ReadDepthSpanFloat)( GLcontext *ctx, - GLuint n, GLint x, GLint y, GLfloat depth[]); - void (*ReadDepthSpanInt)( GLcontext *ctx, - GLuint n, GLint x, GLint y, GLdepth depth[] ); - /* - * Return depth values as integers for glReadPixels. - * Floats should be returned in the range [0,1]. - * Ints (GLdepth) values should be in the range [0,MAXDEPTH]. + + void (*WriteDepthPixels)( GLcontext *ctx, GLuint n, + const GLint x[], const GLint y[], + const GLdepth depth[], const GLubyte mask[] ); + /* Write an array of randomly positioned depth values into the + * depth buffer. Only write depth[i] value if mask[i] is nonzero. + */ + + void (*ReadDepthPixels)( GLcontext *ctx, GLuint n, + const GLint x[], const GLint y[], + GLdepth depth[] ); + /* Read an array of randomly positioned depth values from the depth buffer. */ + /*** *** For supporting hardware stencil buffers: *** Either ALL or NONE of these functions must be implemented! ***/ void (*WriteStencilSpan)( GLcontext *ctx, GLuint n, GLint x, GLint y, - const GLstencil stencil[], - const GLubyte mask[] ); + const GLstencil stencil[], const GLubyte mask[] ); /* Write a horizontal span of stencil values into the stencil buffer. * If mask is NULL, write all stencil values. * Else, only write stencil[i] if mask[i] is non-zero. |