cosmetic changes
[mesa.git] / src / mesa / shader / shaderobjects.h
1 /*
2 * Mesa 3-D graphics library
3 * Version: 6.3
4 *
5 * Copyright (C) 2004-2005 Brian Paul All Rights Reserved.
6 *
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:
13 *
14 * The above copyright notice and this permission notice shall be included
15 * in all copies or substantial portions of the Software.
16 *
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.
23 */
24
25 #ifndef SHADEROBJECTS_H
26 #define SHADEROBJECTS_H
27
28 #include "mtypes.h"
29
30 #if FEATURE_ARB_shader_objects
31
32 extern void GLAPIENTRY
33 _mesa_DeleteObjectARB(GLhandleARB obj);
34
35 extern GLhandleARB GLAPIENTRY
36 _mesa_GetHandleARB(GLenum pname);
37
38 extern void GLAPIENTRY
39 _mesa_DetachObjectARB (GLhandleARB, GLhandleARB);
40
41 extern GLhandleARB GLAPIENTRY
42 _mesa_CreateShaderObjectARB (GLenum);
43
44 extern void GLAPIENTRY
45 _mesa_ShaderSourceARB (GLhandleARB, GLsizei, const GLcharARB* *, const GLint *);
46
47 extern void GLAPIENTRY
48 _mesa_CompileShaderARB (GLhandleARB);
49
50 extern GLhandleARB GLAPIENTRY
51 _mesa_CreateProgramObjectARB (void);
52
53 extern void GLAPIENTRY
54 _mesa_AttachObjectARB (GLhandleARB, GLhandleARB);
55
56 extern void GLAPIENTRY
57 _mesa_LinkProgramARB (GLhandleARB);
58
59 extern void GLAPIENTRY
60 _mesa_UseProgramObjectARB (GLhandleARB);
61
62 extern void GLAPIENTRY
63 _mesa_ValidateProgramARB (GLhandleARB);
64
65 extern void GLAPIENTRY
66 _mesa_Uniform1fARB (GLint, GLfloat);
67
68 extern void GLAPIENTRY
69 _mesa_Uniform2fARB (GLint, GLfloat, GLfloat);
70
71 extern void GLAPIENTRY
72 _mesa_Uniform3fARB (GLint, GLfloat, GLfloat, GLfloat);
73
74 extern void GLAPIENTRY
75 _mesa_Uniform4fARB (GLint, GLfloat, GLfloat, GLfloat, GLfloat);
76
77 extern void GLAPIENTRY
78 _mesa_Uniform1iARB (GLint, GLint);
79
80 extern void GLAPIENTRY
81 _mesa_Uniform2iARB (GLint, GLint, GLint);
82
83 extern void GLAPIENTRY
84 _mesa_Uniform3iARB (GLint, GLint, GLint, GLint);
85
86 extern void GLAPIENTRY
87 _mesa_Uniform4iARB (GLint, GLint, GLint, GLint, GLint);
88
89 extern void GLAPIENTRY
90 _mesa_Uniform1fvARB (GLint, GLsizei, const GLfloat *);
91
92 extern void GLAPIENTRY
93 _mesa_Uniform2fvARB (GLint, GLsizei, const GLfloat *);
94
95 extern void GLAPIENTRY
96 _mesa_Uniform3fvARB (GLint, GLsizei, const GLfloat *);
97
98 extern void GLAPIENTRY
99 _mesa_Uniform4fvARB (GLint, GLsizei, const GLfloat *);
100
101 extern void GLAPIENTRY
102 _mesa_Uniform1ivARB (GLint, GLsizei, const GLint *);
103
104 extern void GLAPIENTRY
105 _mesa_Uniform2ivARB (GLint, GLsizei, const GLint *);
106
107 extern void GLAPIENTRY
108 _mesa_Uniform3ivARB (GLint, GLsizei, const GLint *);
109
110 extern void GLAPIENTRY
111 _mesa_Uniform4ivARB (GLint, GLsizei, const GLint *);
112
113 extern void GLAPIENTRY
114 _mesa_UniformMatrix2fvARB (GLint, GLsizei, GLboolean, const GLfloat *);
115
116 extern void GLAPIENTRY
117 _mesa_UniformMatrix3fvARB (GLint, GLsizei, GLboolean, const GLfloat *);
118
119 extern void GLAPIENTRY
120 _mesa_UniformMatrix4fvARB (GLint, GLsizei, GLboolean, const GLfloat *);
121
122 extern void GLAPIENTRY
123 _mesa_GetObjectParameterfvARB (GLhandleARB, GLenum, GLfloat *);
124
125 extern void GLAPIENTRY
126 _mesa_GetObjectParameterivARB (GLhandleARB, GLenum, GLint *);
127
128 extern void GLAPIENTRY
129 _mesa_GetInfoLogARB (GLhandleARB, GLsizei, GLsizei *, GLcharARB *);
130
131 extern void GLAPIENTRY
132 _mesa_GetAttachedObjectsARB (GLhandleARB, GLsizei, GLsizei *, GLhandleARB *);
133
134 extern GLint GLAPIENTRY
135 _mesa_GetUniformLocationARB (GLhandleARB, const GLcharARB *);
136
137 extern void GLAPIENTRY
138 _mesa_GetActiveUniformARB (GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLcharARB *);
139
140 extern void GLAPIENTRY
141 _mesa_GetUniformfvARB (GLhandleARB, GLint, GLfloat *);
142
143 extern void GLAPIENTRY
144 _mesa_GetUniformivARB (GLhandleARB, GLint, GLint *);
145
146 extern void GLAPIENTRY
147 _mesa_GetShaderSourceARB (GLhandleARB, GLsizei, GLsizei *, GLcharARB *);
148
149 #if FEATURE_ARB_vertex_shader
150
151 extern void GLAPIENTRY
152 _mesa_BindAttribLocationARB (GLhandleARB, GLuint, const GLcharARB *);
153
154 extern void GLAPIENTRY
155 _mesa_GetActiveAttribARB (GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLcharARB *);
156
157 extern GLint GLAPIENTRY
158 _mesa_GetAttribLocationARB (GLhandleARB, const GLcharARB *);
159
160 #endif
161
162 extern void
163 _mesa_init_shaderobjects (GLcontext *ctx);
164
165 #endif
166
167 #endif
168