2 * Mesa 3-D graphics library
5 * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
7 * Permission is hereby granted, free of charge, to any person obtaining a
8 * copy of this software and associated documentation files (the "Software"),
9 * to deal in the Software without restriction, including without limitation
10 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11 * and/or sell copies of the Software, and to permit persons to whom the
12 * Software is furnished to do so, subject to the following conditions:
14 * The above copyright notice and this permission notice shall be included
15 * in all copies or substantial portions of the Software.
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
21 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 * \file swrast/swrast_features.h
28 * \brief Public interface to the software rasterization functions.
29 * \author Keith Whitwell <keith@tungstengraphics.com>
32 #ifndef SWRAST_FEATURES_H
33 #define SWRAST_FEATURES_H
35 #include "main/mtypes.h"
41 _swrast_Accum(GLcontext *ctx, GLenum op, GLfloat value);
47 * Imaging fallbacks (a better solution should be found, perhaps
48 * moving all the imaging fallback code to a new module)
53 _swrast_CopyConvolutionFilter2D(GLcontext *ctx, GLenum target,
54 GLenum internalFormat,
55 GLint x, GLint y, GLsizei width,
59 _swrast_CopyConvolutionFilter1D(GLcontext *ctx, GLenum target,
60 GLenum internalFormat,
61 GLint x, GLint y, GLsizei width);
66 #if FEATURE_colortable
69 _swrast_CopyColorSubTable( GLcontext *ctx,GLenum target, GLsizei start,
70 GLint x, GLint y, GLsizei width);
73 _swrast_CopyColorTable( GLcontext *ctx,
74 GLenum target, GLenum internalformat,
75 GLint x, GLint y, GLsizei width);
77 #define _swrast_UpdateTexturePalette NULL
85 _swrast_Bitmap( GLcontext *ctx,
87 GLsizei width, GLsizei height,
88 const struct gl_pixelstore_attrib *unpack,
89 const GLubyte *bitmap );
92 _swrast_CopyPixels( GLcontext *ctx,
93 GLint srcx, GLint srcy,
94 GLint destx, GLint desty,
95 GLsizei width, GLsizei height,
99 _swrast_DrawPixels( GLcontext *ctx,
101 GLsizei width, GLsizei height,
102 GLenum format, GLenum type,
103 const struct gl_pixelstore_attrib *unpack,
104 const GLvoid *pixels );
106 #else /* FEATURE_drawpix */
109 _swrast_Bitmap( GLcontext *ctx,
111 GLsizei width, GLsizei height,
112 const struct gl_pixelstore_attrib *unpack,
113 const GLubyte *bitmap )
119 _swrast_CopyPixels( GLcontext *ctx,
120 GLint srcx, GLint srcy,
121 GLint destx, GLint desty,
122 GLsizei width, GLsizei height,
129 _swrast_DrawPixels( GLcontext *ctx,
131 GLsizei width, GLsizei height,
132 GLenum format, GLenum type,
133 const struct gl_pixelstore_attrib *unpack,
134 const GLvoid *pixels )
142 #endif /* SWRAST_FEATURES_H */