From 86d518ec5b12248a985dc28021a2f8f4a2a2e525 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 10 Dec 1999 16:14:40 +0000 Subject: [PATCH] added stencil buffer functions --- src/mesa/main/dd.h | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 5dc04fb..904fa48 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -1,4 +1,4 @@ -/* $Id: dd.h,v 1.6 1999/11/25 17:36:48 brianp Exp $ */ +/* $Id: dd.h,v 1.7 1999/12/10 16:14:40 brianp Exp $ */ /* * Mesa 3-D graphics library @@ -390,6 +390,7 @@ struct dd_function_table { /*** *** For supporting hardware Z buffers: + *** Either ALL or NONE of these functions must be implemented! ***/ void (*AllocDepthBuffer)( GLcontext *ctx ); @@ -421,6 +422,43 @@ struct dd_function_table { /*** + *** 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[] ); + /* 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. + */ + + + void (*ReadStencilSpan)( GLcontext *ctx, GLuint n, GLint x, GLint y, + GLstencil stencil[] ); + /* Read a horizontal span of stencil values from the stencil buffer. + */ + + + void (*WriteStencilPixels)( GLcontext *ctx, GLuint n, + const GLint x[], const GLint y[], + const GLstencil stencil[], + const GLubyte mask[] ); + /* Write an array 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. + */ + + void (*ReadStencilPixels)( GLcontext *ctx, GLuint n, + const GLint x[], const GLint y[], + GLstencil stencil[] ); + /* Read an array of stencil values from the stencil buffer. + */ + + + + /*** *** Accelerated point, line, polygon, glDrawPixels and glBitmap functions: ***/ -- 2.7.4