diff options
author | Brian Paul <[email protected]> | 2006-01-26 01:32:47 +0000 |
---|---|---|
committer | Brian Paul <[email protected]> | 2006-01-26 01:32:47 +0000 |
commit | 3a5bb1729d8c229a587e34ccd5ddc86e26811b9f (patch) | |
tree | 332757da105c23529cfa85ddde5fe290ce6e3eb2 /src/mesa/swrast/s_context.h | |
parent | 2219a15b06ba1f72d74b79047e52840d167f03b7 (diff) |
New comments, clean-up of fields related to point/line/triangle validation.
Diffstat (limited to 'src/mesa/swrast/s_context.h')
-rw-r--r-- | src/mesa/swrast/s_context.h | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/src/mesa/swrast/s_context.h b/src/mesa/swrast/s_context.h index 5cfe7627a5d..c1c01df8f56 100644 --- a/src/mesa/swrast/s_context.h +++ b/src/mesa/swrast/s_context.h @@ -299,23 +299,32 @@ typedef struct GLuint StateChanges; GLenum Primitive; /* current primitive being drawn (ala glBegin) */ - /** Mechanism to allow driver (like X11) to register further - * software rasterization routines. + void (*InvalidateState)( GLcontext *ctx, GLbitfield new_state ); + + /** + * When the NewState mask intersects these masks, we invalidate the + * Point/Line/Triangle function pointers below. + */ + /*@{*/ + GLbitfield InvalidatePointMask; + GLbitfield InvalidateLineMask; + GLbitfield InvalidateTriangleMask; + /*@}*/ + + /** + * Device drivers plug in functions for these callbacks. + * Will be called when the GL state change mask intersects the above masks. */ /*@{*/ void (*choose_point)( GLcontext * ); void (*choose_line)( GLcontext * ); void (*choose_triangle)( GLcontext * ); - - GLbitfield invalidate_point; - GLbitfield invalidate_line; - GLbitfield invalidate_triangle; /*@}*/ - /** Function pointers for dispatch behind public entrypoints. */ + /** + * Current point, line and triangle drawing functions. + */ /*@{*/ - void (*InvalidateState)( GLcontext *ctx, GLbitfield new_state ); - swrast_point_func Point; swrast_line_func Line; swrast_tri_func Triangle; |