X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmesa%2Fswrast_setup%2Fswrast_setup.h;h=5dcbe2675b478f28ec6aa41c74d500c28f85cc85;hb=79892e7976fbb91ae426f5868d5f453e977c1f17;hp=aa32f06f24bd930b58048b9e110f0ee101b5984d;hpb=ba41b8afb1b40b967cf5c0e604bbf09793eb8fee;p=mesa.git diff --git a/src/mesa/swrast_setup/swrast_setup.h b/src/mesa/swrast_setup/swrast_setup.h index aa32f06f24b..5dcbe2675b4 100644 --- a/src/mesa/swrast_setup/swrast_setup.h +++ b/src/mesa/swrast_setup/swrast_setup.h @@ -1,19 +1,20 @@ + /* * Mesa 3-D graphics library * Version: 3.5 - * - * Copyright (C) 1999 Brian Paul All Rights Reserved. - * + * + * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL @@ -22,49 +23,39 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Authors: - * Keith Whitwell + * Keith Whitwell */ -/* Public interface to the swrast_setup module. +/* Public interface to the swrast_setup module. This module provides + * an implementation of the driver interface to t_vb_render.c, and uses + * the software rasterizer (swrast) to perform actual rasterization. + * + * The internals of the implementation are private, but can be hooked + * into tnl at any time (except between RenderStart/RenderEnd) by + * calling _swsetup_Wakeup(). */ #ifndef SWRAST_SETUP_H #define SWRAST_SETUP_H -extern GLboolean +#include "swrast/swrast.h" + +extern GLboolean _swsetup_CreateContext( GLcontext *ctx ); -extern void +extern void _swsetup_DestroyContext( GLcontext *ctx ); extern void -_swsetup_RegisterVB( struct vertex_buffer *VB ); - -extern void -_swsetup_UnregisterVB( struct vertex_buffer *VB ); - -extern void _swsetup_InvalidateState( GLcontext *ctx, GLuint new_state ); -extern void -_swsetup_RasterSetup( struct vertex_buffer *VB, - GLuint start, GLuint end ); - -extern void -_swsetup_Quad( GLcontext *ctx, GLuint v0, GLuint v1, - GLuint v2, GLuint v3, GLuint pv ); - -extern void -_swsetup_Triangle( GLcontext *ctx, GLuint v0, GLuint v1, - GLuint v2, GLuint pv ); - - -extern void -_swsetup_Line( GLcontext *ctx, GLuint v0, GLuint v1, GLuint pv ); - +extern void +_swsetup_Wakeup( GLcontext *ctx ); +/* Helper function to translate a hardware vertex (as understood by + * the tnl/t_vertex.c code) to a swrast vertex. + */ extern void -_swsetup_Points( GLcontext *ctx, GLuint first, GLuint last ); - +_swsetup_Translate( GLcontext *ctx, const void *vertex, SWvertex *dest ); #endif