swrast_setup.h revision 1182ffeec39bf419928ba862c225e80a439fee7a
11182ffeec39bf419928ba862c225e80a439fee7aKeith Whitwell/* $Id: swrast_setup.h,v 1.9 2001/07/12 22:09:21 keithw Exp $ */
222144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughes
37c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell/*
47c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * Mesa 3-D graphics library
57c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * Version:  3.5
622144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughes *
722144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughes * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
822144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughes *
97c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * Permission is hereby granted, free of charge, to any person obtaining a
107c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * copy of this software and associated documentation files (the "Software"),
117c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * to deal in the Software without restriction, including without limitation
127c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * the rights to use, copy, modify, merge, publish, distribute, sublicense,
137c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * and/or sell copies of the Software, and to permit persons to whom the
147c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * Software is furnished to do so, subject to the following conditions:
1522144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughes *
167c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * The above copyright notice and this permission notice shall be included
177c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * in all copies or substantial portions of the Software.
1822144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughes *
197c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
207c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
217c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
227c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
237c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
247c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
257c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell *
267c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell * Authors:
277c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell *    Keith Whitwell <keithw@valinux.com>
287c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell */
297c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell
30d43a5943d8952367d9292653800b47a85f905343Keith Whitwell/* Public interface to the swrast_setup module.  This module provides
31d43a5943d8952367d9292653800b47a85f905343Keith Whitwell * an implementation of the driver interface to t_vb_render.c, and uses
32d43a5943d8952367d9292653800b47a85f905343Keith Whitwell * the software rasterizer (swrast) to perform actual rasterization.
331182ffeec39bf419928ba862c225e80a439fee7aKeith Whitwell *
341182ffeec39bf419928ba862c225e80a439fee7aKeith Whitwell * The internals of the implementation are private, but can be hooked
351182ffeec39bf419928ba862c225e80a439fee7aKeith Whitwell * into tnl at any time (except between RenderStart/RenderEnd) by
361182ffeec39bf419928ba862c225e80a439fee7aKeith Whitwell * calling _swsetup_Wakeup().
377c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell */
387c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell
397c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell#ifndef SWRAST_SETUP_H
407c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell#define SWRAST_SETUP_H
417c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell
4222144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughesextern GLboolean
437c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell_swsetup_CreateContext( GLcontext *ctx );
447c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell
4522144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughesextern void
467c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell_swsetup_DestroyContext( GLcontext *ctx );
477c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell
4822144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughesextern void
497c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell_swsetup_InvalidateState( GLcontext *ctx, GLuint new_state );
507c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell
5122144ab7552f0799bcfca506bf4ffa7f70a06649Gareth Hughesextern void
521182ffeec39bf419928ba862c225e80a439fee7aKeith Whitwell_swsetup_Wakeup( GLcontext *ctx );
535c1e7fa6ee72f4403d9ec9d12830dd689b966e71Keith Whitwell
547c20642b1091df1aab7d9076a3fe2fb11c6f011cKeith Whitwell#endif
55