Minor tweaks to help out at a driver level.
[mesa.git] / src / mesa / main / api_noop.h
1
2 /*
3 * Mesa 3-D graphics library
4 * Version: 4.1
5 *
6 * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
7 *
8 * Permission is hereby granted, free of charge, to any person obtaining a
9 * copy of this software and associated documentation files (the "Software"),
10 * to deal in the Software without restriction, including without limitation
11 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12 * and/or sell copies of the Software, and to permit persons to whom the
13 * Software is furnished to do so, subject to the following conditions:
14 *
15 * The above copyright notice and this permission notice shall be included
16 * in all copies or substantial portions of the Software.
17 *
18 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
22 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
23 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24 */
25
26 #ifndef _API_NOOP_H
27 #define _API_NOOP_H
28
29
30 #include "glheader.h"
31 #include "mtypes.h"
32 #include "context.h"
33
34 /* In states where certain vertex components are required for t&l or
35 * rasterization, we still need to keep track of the current values.
36 * These functions provide this service by keeping uptodate the
37 * 'ctx->Current' struct for all data elements not included in the
38 * currently enabled hardware vertex.
39 *
40 */
41 extern void GLAPIENTRY _mesa_noop_EdgeFlag( GLboolean b );
42
43 extern void GLAPIENTRY _mesa_noop_EdgeFlagv( const GLboolean *b );
44
45 extern void GLAPIENTRY _mesa_noop_FogCoordfEXT( GLfloat a );
46
47 extern void GLAPIENTRY _mesa_noop_FogCoordfvEXT( const GLfloat *v );
48
49 extern void GLAPIENTRY _mesa_noop_Indexf( GLfloat i );
50
51 extern void GLAPIENTRY _mesa_noop_Indexfv( const GLfloat *v );
52
53 extern void GLAPIENTRY _mesa_noop_Normal3f( GLfloat a, GLfloat b, GLfloat c );
54
55 extern void GLAPIENTRY _mesa_noop_Normal3fv( const GLfloat *v );
56
57 extern void GLAPIENTRY _mesa_noop_Materialfv( GLenum face, GLenum pname, const GLfloat *param );
58
59 extern void _mesa_noop_Color4ub( GLubyte a, GLubyte b, GLubyte c, GLubyte d );
60
61 extern void _mesa_noop_Color4ubv( const GLubyte *v );
62
63 extern void GLAPIENTRY _mesa_noop_Color4f( GLfloat a, GLfloat b, GLfloat c, GLfloat d );
64
65 extern void GLAPIENTRY _mesa_noop_Color4fv( const GLfloat *v );
66
67 extern void _mesa_noop_Color3ub( GLubyte a, GLubyte b, GLubyte c );
68
69 extern void _mesa_noop_Color3ubv( const GLubyte *v );
70
71 extern void GLAPIENTRY _mesa_noop_Color3f( GLfloat a, GLfloat b, GLfloat c );
72
73 extern void GLAPIENTRY _mesa_noop_Color3fv( const GLfloat *v );
74
75 extern void GLAPIENTRY _mesa_noop_MultiTexCoord1fARB( GLenum target, GLfloat a );
76
77 extern void GLAPIENTRY _mesa_noop_MultiTexCoord1fvARB( GLenum target, const GLfloat *v );
78
79 extern void GLAPIENTRY _mesa_noop_MultiTexCoord2fARB( GLenum target, GLfloat a,
80 GLfloat b );
81
82 extern void GLAPIENTRY _mesa_noop_MultiTexCoord2fvARB( GLenum target, const GLfloat *v );
83
84 extern void GLAPIENTRY _mesa_noop_MultiTexCoord3fARB( GLenum target, GLfloat a,
85 GLfloat b, GLfloat c);
86
87 extern void GLAPIENTRY _mesa_noop_MultiTexCoord3fvARB( GLenum target, const GLfloat *v );
88
89 extern void GLAPIENTRY _mesa_noop_MultiTexCoord4fARB( GLenum target, GLfloat a,
90 GLfloat b, GLfloat c, GLfloat d );
91
92 extern void GLAPIENTRY _mesa_noop_MultiTexCoord4fvARB( GLenum target, const GLfloat *v );
93
94 extern void _mesa_noop_SecondaryColor3ubEXT( GLubyte a, GLubyte b, GLubyte c );
95
96 extern void _mesa_noop_SecondaryColor3ubvEXT( const GLubyte *v );
97
98 extern void GLAPIENTRY _mesa_noop_SecondaryColor3fEXT( GLfloat a, GLfloat b, GLfloat c );
99
100 extern void GLAPIENTRY _mesa_noop_SecondaryColor3fvEXT( const GLfloat *v );
101
102 extern void GLAPIENTRY _mesa_noop_TexCoord1f( GLfloat a );
103
104 extern void GLAPIENTRY _mesa_noop_TexCoord1fv( const GLfloat *v );
105
106 extern void GLAPIENTRY _mesa_noop_TexCoord2f( GLfloat a, GLfloat b );
107
108 extern void GLAPIENTRY _mesa_noop_TexCoord2fv( const GLfloat *v );
109
110 extern void GLAPIENTRY _mesa_noop_TexCoord3f( GLfloat a, GLfloat b, GLfloat c );
111
112 extern void GLAPIENTRY _mesa_noop_TexCoord3fv( const GLfloat *v );
113
114 extern void GLAPIENTRY _mesa_noop_TexCoord4f( GLfloat a, GLfloat b, GLfloat c, GLfloat d );
115
116 extern void GLAPIENTRY _mesa_noop_TexCoord4fv( const GLfloat *v );
117
118 extern void GLAPIENTRY _mesa_noop_Vertex2fv( const GLfloat *v );
119
120 extern void GLAPIENTRY _mesa_noop_Vertex3fv( const GLfloat *v );
121
122 extern void GLAPIENTRY _mesa_noop_Vertex4fv( const GLfloat *v );
123
124 extern void GLAPIENTRY _mesa_noop_Vertex2f( GLfloat a, GLfloat b );
125
126 extern void GLAPIENTRY _mesa_noop_Vertex3f( GLfloat a, GLfloat b, GLfloat c );
127
128 extern void GLAPIENTRY _mesa_noop_Vertex4f( GLfloat a, GLfloat b, GLfloat c, GLfloat d );
129
130 extern void GLAPIENTRY _mesa_noop_VertexAttrib1fNV( GLuint index, GLfloat x );
131
132 extern void GLAPIENTRY _mesa_noop_VertexAttrib1fvNV( GLuint index, const GLfloat *v );
133
134 extern void GLAPIENTRY _mesa_noop_VertexAttrib2fNV( GLuint index, GLfloat x, GLfloat y );
135 extern void GLAPIENTRY _mesa_noop_VertexAttrib2fvNV( GLuint index, const GLfloat *v );
136
137 extern void GLAPIENTRY _mesa_noop_VertexAttrib3fNV( GLuint index, GLfloat x,
138 GLfloat y, GLfloat z );
139 extern void GLAPIENTRY _mesa_noop_VertexAttrib3fvNV( GLuint index, const GLfloat *v );
140
141 extern void GLAPIENTRY _mesa_noop_VertexAttrib4fNV( GLuint index, GLfloat x,
142 GLfloat y, GLfloat z, GLfloat w );
143
144 extern void GLAPIENTRY _mesa_noop_VertexAttrib4fvNV( GLuint index, const GLfloat *v );
145
146 extern void GLAPIENTRY _mesa_noop_End( void );
147 extern void GLAPIENTRY _mesa_noop_Begin( GLenum mode );
148 extern void GLAPIENTRY _mesa_noop_EvalPoint2( GLint a, GLint b );
149 extern void GLAPIENTRY _mesa_noop_EvalPoint1( GLint a );
150 extern void GLAPIENTRY _mesa_noop_EvalCoord2fv( const GLfloat *v );
151 extern void GLAPIENTRY _mesa_noop_EvalCoord2f( GLfloat a, GLfloat b );
152 extern void GLAPIENTRY _mesa_noop_EvalCoord1fv( const GLfloat *v );
153 extern void GLAPIENTRY _mesa_noop_EvalCoord1f( GLfloat a );
154
155 extern void _mesa_noop_vtxfmt_init( GLvertexformat *vfmt );
156
157 extern void GLAPIENTRY _mesa_noop_EvalMesh2( GLenum mode, GLint i1, GLint i2,
158 GLint j1, GLint j2 );
159
160 extern void GLAPIENTRY _mesa_noop_EvalMesh1( GLenum mode, GLint i1, GLint i2 );
161
162
163 /* Not strictly a noop -- translate Rectf down to Begin/End and
164 * vertices. Closer to the loopback operations, but doesn't meet the
165 * criteria for inclusion there (cannot be used in the Save table).
166 */
167 extern void GLAPIENTRY _mesa_noop_Rectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 );
168
169
170 extern void GLAPIENTRY _mesa_noop_DrawArrays(GLenum mode, GLint start, GLsizei count);
171 extern void GLAPIENTRY _mesa_noop_DrawElements(GLenum mode, GLsizei count, GLenum type,
172 const GLvoid *indices);
173 extern void GLAPIENTRY _mesa_noop_DrawRangeElements(GLenum mode,
174 GLuint start, GLuint end,
175 GLsizei count, GLenum type,
176 const GLvoid *indices);
177
178
179
180 #endif