comparison demos/glfuncs.d @ 42:0b9b286b67b6 trunk

[svn r46] fix for shift operations added a simple opengl binding in demos
author lindquist
date Fri, 19 Oct 2007 15:16:11 +0200
parents
children
comparison
equal deleted inserted replaced
41:835320b88ad6 42:0b9b286b67b6
1 /*
2 * Copyright (c) 2004-2006 Derelict Developers
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * * Neither the names 'Derelict', 'DerelictGL', nor the names of its contributors
17 * may be used to endorse or promote products derived from this software
18 * without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
22 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 *
32 * Converted to a static binding by Tomas Lindquist Olsen <tomas@famolsen.dk>
33 */
34 module glfuncs;
35
36 import gltypes;
37
38 extern(System):
39
40 // Miscellaneous
41 void glClearIndex(GLfloat c);
42 void glClearColor(GLclampf,GLclampf,GLclampf,GLclampf);
43 void glClear(GLbitfield);
44 void glIndexMask(GLuint);
45 void glColorMask(GLboolean,GLboolean,GLboolean,GLboolean);
46 void glAlphaFunc(GLenum,GLclampf);
47 void glBlendFunc(GLenum,GLenum);
48 void glLogicOp(GLenum);
49 void glCullFace(GLenum);
50 void glFrontFace(GLenum);
51 void glPointSize(GLfloat);
52 void glLineWidth(GLfloat);
53 void glLineStipple(GLint,GLushort);
54 void glPolygonMode(GLenum,GLenum);
55 void glPolygonOffset(GLfloat,GLfloat);
56 void glPolygonStipple(GLubyte*);
57 void glGetPolygonStipple(GLubyte*);
58 void glEdgeFlag(GLboolean);
59 void glEdgeFlagv(GLboolean*);
60 void glScissor(GLint,GLint,GLsizei,GLsizei);
61 void glClipPlane(GLenum,GLdouble*);
62 void glGetClipPlane(GLenum,GLdouble*);
63 void glDrawBuffer(GLenum);
64 void glReadBuffer(GLenum);
65 void glEnable(GLenum);
66 void glDisable(GLenum);
67 GLboolean glIsEnabled(GLenum);
68 void glEnableClientState(GLenum);
69 void glDisableClientState(GLenum);
70 void glGetBooleanv(GLenum,GLboolean*);
71 void glGetDoublev(GLenum,GLdouble*);
72 void glGetFloatv(GLenum,GLfloat*);
73 void glGetIntegerv(GLenum,GLint*);
74 void glPushAttrib(GLbitfield);
75 void glPopAttrib();
76 void glPushClientAttrib(GLbitfield);
77 void glPopClientAttrib();
78 GLint glRenderMode(GLenum);
79 GLenum glGetError();
80 GLchar* glGetString(GLenum);
81 void glFinish();
82 void glFlush();
83 void glHint(GLenum,GLenum);
84
85 // Depth Buffer
86 void glClearDepth(GLclampd);
87 void glDepthFunc(GLenum);
88 void glDepthMask(GLboolean);
89 void glDepthRange(GLclampd,GLclampd);
90
91 // Accumulation Buffer
92 void glClearAccum(GLfloat,GLfloat,GLfloat,GLfloat);
93 void glAccum(GLenum,GLfloat);
94
95 // Transformation
96 void glMatrixMode(GLenum);
97 void glOrtho(GLdouble,GLdouble,GLdouble,GLdouble,GLdouble,GLdouble);
98 void glFrustum(GLdouble,GLdouble,GLdouble,GLdouble,GLdouble,GLdouble);
99 void glViewport(GLint,GLint,GLsizei,GLsizei);
100 void glPushMatrix();
101 void glPopMatrix();
102 void glLoadIdentity();
103 void glLoadMatrixd(GLdouble*);
104 void glLoadMatrixf(GLfloat*);
105 void glMultMatrixd(GLdouble*);
106 void glMultMatrixf(GLfloat*);
107 void glRotated(GLdouble,GLdouble,GLdouble,GLdouble);
108 void glRotatef(GLfloat,GLfloat,GLfloat,GLfloat);
109 void glScaled(GLdouble,GLdouble,GLdouble);
110 void glScalef(GLfloat,GLfloat,GLfloat);
111 void glTranslated(GLdouble,GLdouble,GLdouble);
112 void glTranslatef(GLfloat,GLfloat,GLfloat);
113
114 // Display Lists
115 GLboolean glIsList(GLuint);
116 void glDeleteLists(GLuint,GLsizei);
117 GLuint glGenLists(GLsizei);
118 void glNewList(GLuint,GLenum);
119 void glEndList();
120 void glCallList(GLuint);
121 void glCallLists(GLsizei,GLenum,GLvoid*);
122 void glListBase(GLuint);
123
124 // Drawing Functions
125 void glBegin(GLenum);
126 void glEnd();
127 void glVertex2d(GLdouble,GLdouble);
128 void glVertex2f(GLfloat,GLfloat);
129 void glVertex2i(GLint,GLint);
130 void glVertex2s(GLshort,GLshort);
131 void glVertex3d(GLdouble,GLdouble,GLdouble);
132 void glVertex3f(GLfloat,GLfloat,GLfloat);
133 void glVertex3i(GLint,GLint,GLint);
134 void glVertex3s(GLshort,GLshort,GLshort);
135 void glVertex4d(GLdouble,GLdouble,GLdouble,GLdouble);
136 void glVertex4f(GLfloat,GLfloat,GLfloat,GLfloat);
137 void glVertex4i(GLint,GLint,GLint,GLint);
138 void glVertex4s(GLshort,GLshort,GLshort,GLshort);
139 void glVertex2dv(GLdouble*);
140 void glVertex2fv(GLfloat*);
141 void glVertex2iv(GLint*);
142 void glVertex2sv(GLshort*);
143 void glVertex3dv(GLdouble*);
144 void glVertex3fv(GLfloat*);
145 void glVertex3iv(GLint*);
146 void glVertex3sv(GLshort*);
147 void glVertex4dv(GLdouble*);
148 void glVertex4fv(GLfloat*);
149 void glVertex4iv(GLint*);
150 void glVertex4sv(GLshort*);
151 void glNormal3b(GLbyte,GLbyte,GLbyte);
152 void glNormal3d(GLdouble,GLdouble,GLdouble);
153 void glNormal3f(GLfloat,GLfloat,GLfloat);
154 void glNormal3i(GLint,GLint,GLint);
155 void glNormal3s(GLshort,GLshort,GLshort);
156 void glNormal3bv(GLbyte*);
157 void glNormal3dv(GLdouble*);
158 void glNormal3fv(GLfloat*);
159 void glNormal3iv(GLint*);
160 void glNormal3sv(GLshort*);
161 void glIndexd(GLdouble);
162 void glIndexf(GLfloat);
163 void glIndexi(GLint);
164 void glIndexs(GLshort);
165 void glIndexub(GLubyte);
166 void glIndexdv(GLdouble*);
167 void glIndexfv(GLfloat*);
168 void glIndexiv(GLint*);
169 void glIndexsv(GLshort*);
170 void glIndexubv(GLubyte*);
171 void glColor3b(GLbyte,GLbyte,GLbyte);
172 void glColor3d(GLdouble,GLdouble,GLdouble);
173 void glColor3f(GLfloat,GLfloat,GLfloat);
174 void glColor3i(GLint,GLint,GLint);
175 void glColor3s(GLshort,GLshort,GLshort);
176 void glColor3ub(GLubyte,GLubyte,GLubyte);
177 void glColor3ui(GLuint,GLuint,GLuint);
178 void glColor3us(GLushort,GLushort,GLushort);
179 void glColor4b(GLbyte,GLbyte,GLbyte,GLbyte);
180 void glColor4d(GLdouble,GLdouble,GLdouble,GLdouble);
181 void glColor4f(GLfloat,GLfloat,GLfloat,GLfloat);
182 void glColor4i(GLint,GLint,GLint,GLint);
183 void glColor4s(GLshort,GLshort,GLshort,GLshort);
184 void glColor4ub(GLubyte,GLubyte,GLubyte,GLubyte);
185 void glColor4ui(GLuint,GLuint,GLuint,GLuint);
186 void glColor4us(GLushort,GLushort,GLushort,GLushort);
187 void glColor3bv(GLubyte*);
188 void glColor3dv(GLdouble*);
189 void glColor3fv(GLfloat*);
190 void glColor3iv(GLint*);
191 void glColor3sv(GLshort*);
192 void glColor3ubv(GLubyte*);
193 void glColor3uiv(GLuint*);
194 void glColor3usv(GLushort*);
195 void glColor4bv(GLbyte*);
196 void glColor4dv(GLdouble*);
197 void glColor4fv(GLfloat*);
198 void glColor4iv(GLint*);
199 void glColor4sv(GLshort*);
200 void glColor4ubv(GLubyte*);
201 void glColor4uiv(GLuint*);
202 void glColor4usv(GLushort);
203 void glTexCoord1d(GLdouble);
204 void glTexCoord1f(GLfloat);
205 void glTexCoord1i(GLint);
206 void glTexCoord1s(GLshort);
207 void glTexCoord2d(GLdouble,GLdouble);
208 void glTexCoord2f(GLfloat,GLfloat);
209 void glTexCoord2i(GLint,GLint);
210 void glTexCoord2s(GLshort,GLshort);
211 void glTexCoord3d(GLdouble,GLdouble,GLdouble);
212 void glTexCoord3f(GLfloat,GLfloat,GLfloat);
213 void glTexCoord3i(GLint,GLint,GLint);
214 void glTexCoord3s(GLshort,GLshort,GLshort);
215 void glTexCoord4d(GLdouble,GLdouble,GLdouble,GLdouble);
216 void glTexCoord4f(GLfloat,GLfloat,GLfloat,GLfloat);
217 void glTexCoord4i(GLint,GLint,GLint,GLint);
218 void glTexCoord4s(GLshort,GLshort,GLshort,GLshort);
219 void glTexCoord1dv(GLdouble*);
220 void glTexCoord1fv(GLfloat*);
221 void glTexCoord1iv(GLint*);
222 void glTexCoord1sv(GLshort*);
223 void glTexCoord2dv(GLdouble*);
224 void glTexCoord2fv(GLfloat*);
225 void glTexCoord2iv(GLint*);
226 void glTexCoord2sv(GLshort*);
227 void glTexCoord3dv(GLdouble*);
228 void glTexCoord3fv(GLfloat*);
229 void glTexCoord3iv(GLint*);
230 void glTexCoord3sv(GLshort*);
231 void glTexCoord4dv(GLdouble*);
232 void glTexCoord4fv(GLfloat*);
233 void glTexCoord4iv(GLint*);
234 void glTexCoord4sv(GLshort*);
235 void glRasterPos2d(GLdouble,GLdouble);
236 void glRasterPos2f(GLfloat,GLfloat);
237 void glRasterPos2i(GLint,GLint);
238 void glRasterPos2s(GLshort,GLshort);
239 void glRasterPos3d(GLdouble,GLdouble,GLdouble);
240 void glRasterPos3f(GLfloat,GLfloat,GLfloat);
241 void glRasterPos3i(GLint,GLint,GLint);
242 void glRasterPos3s(GLshort,GLshort,GLshort);
243 void glRasterPos4d(GLdouble,GLdouble,GLdouble,GLdouble);
244 void glRasterPos4f(GLfloat,GLfloat,GLfloat,GLfloat);
245 void glRasterPos4i(GLint,GLint,GLint,GLint);
246 void glRasterPos4s(GLshort,GLshort,GLshort,GLshort);
247 void glRasterPos2dv(GLdouble*);
248 void glRasterPos2fv(GLfloat*);
249 void glRasterPos2iv(GLint*);
250 void glRasterPos2sv(GLshort*);
251 void glRasterPos3dv(GLdouble*);
252 void glRasterPos3fv(GLfloat*);
253 void glRasterPos3iv(GLint*);
254 void glRasterPos3sv(GLshort*);
255 void glRasterPos4dv(GLdouble*);
256 void glRasterPos4fv(GLfloat*);
257 void glRasterPos4iv(GLint*);
258 void glRasterPos4sv(GLshort*);
259 void glRectd(GLdouble,GLdouble,GLdouble,GLdouble);
260 void glRectf(GLfloat,GLfloat,GLfloat,GLfloat);
261 void glRecti(GLint,GLint,GLint,GLint);
262 void glRects(GLshort,GLshort,GLshort,GLshort);
263 void glRectdv(GLdouble*);
264 void glRectfv(GLfloat*);
265 void glRectiv(GLint*);
266 void glRectsv(GLshort*);
267
268 // Lighting
269 void glShadeModel(GLenum);
270 void glLightf(GLenum,GLenum,GLfloat);
271 void glLighti(GLenum,GLenum,GLint);
272 void glLightfv(GLenum,GLenum,GLfloat*);
273 void glLightiv(GLenum,GLenum,GLint*);
274 void glGetLightfv(GLenum,GLenum,GLfloat*);
275 void glGetLightiv(GLenum,GLenum,GLint*);
276 void glLightModelf(GLenum,GLfloat);
277 void glLightModeli(GLenum,GLint);
278 void glLightModelfv(GLenum,GLfloat*);
279 void glLightModeliv(GLenum,GLint*);
280 void glMaterialf(GLenum,GLenum,GLfloat);
281 void glMateriali(GLenum,GLenum,GLint);
282 void glMaterialfv(GLenum,GLenum,GLfloat*);
283 void glMaterialiv(GLenum,GLenum,GLint*);
284 void glGetMaterialfv(GLenum,GLenum,GLfloat*);
285 void glGetMaterialiv(GLenum,GLenum,GLint*);
286 void glColorMaterial(GLenum,GLenum);
287
288 // Raster functions
289 void glPixelZoom(GLfloat,GLfloat);
290 void glPixelStoref(GLenum,GLfloat);
291 void glPixelStorei(GLenum,GLint);
292 void glPixelTransferf(GLenum,GLfloat);
293 void glPixelTransferi(GLenum,GLint);
294 void glPixelMapfv(GLenum,GLint,GLfloat*);
295 void glPixelMapuiv(GLenum,GLint,GLuint*);
296 void glPixelMapusv(GLenum,GLint,GLushort*);
297 void glGetPixelMapfv(GLenum,GLfloat*);
298 void glGetPixelMapuiv(GLenum,GLuint*);
299 void glGetPixelMapusv(GLenum,GLushort*);
300 void glBitmap(GLsizei,GLsizei,GLfloat,GLfloat,GLfloat,GLfloat,GLubyte*);
301 void glReadPixels(GLint,GLint,GLsizei,GLsizei,GLenum,GLenum,GLvoid*);
302 void glDrawPixels(GLsizei,GLsizei,GLenum,GLenum,GLvoid*);
303 void glCopyPixels(GLint,GLint,GLsizei,GLsizei,GLenum);
304
305 // Stenciling
306 void glStencilFunc(GLenum,GLint,GLuint);
307 void glStencilMask(GLuint);
308 void glStencilOp(GLenum,GLenum,GLenum);
309 void glClearStencil(GLint);
310
311 // Texture mapping
312 void glTexGend(GLenum,GLenum,GLdouble);
313 void glTexGenf(GLenum,GLenum,GLfloat);
314 void glTexGeni(GLenum,GLenum,GLint);
315 void glTexGendv(GLenum,GLenum,GLdouble*);
316 void glTexGenfv(GLenum,GLenum,GLfloat*);
317 void glTexGeniv(GLenum,GLenum,GLint*);
318 void glGetTexGendv(GLenum,GLenum,GLdouble*);
319 void glGetTexGenfv(GLenum,GLenum,GLfloat*);
320 void glGetTexGeniv(GLenum,GLenum,GLint*);
321 void glTexEnvf(GLenum,GLenum,GLfloat);
322 void glTexEnvi(GLenum,GLenum,GLint);
323 void glTexEnvfv(GLenum,GLenum,GLfloat*);
324 void glTexEnviv(GLenum,GLenum,GLint*);
325 void glGetTexEnvfv(GLenum,GLenum,GLfloat*);
326 void glGetTexEnviv(GLenum,GLenum,GLint*);
327 void glTexParameterf(GLenum,GLenum,GLfloat);
328 void glTexParameteri(GLenum,GLenum,GLint);
329 void glTexParameterfv(GLenum,GLenum,GLfloat*);
330 void glTexParameteriv(GLenum,GLenum,GLint*);
331 void glGetTexParameterfv(GLenum,GLenum,GLfloat*);
332 void glGetTexParameteriv(GLenum,GLenum,GLint*);
333 void glGetTexLevelParameterfv(GLenum,GLint,GLenum,GLfloat*);
334 void glGetTexLevelParameteriv(GLenum,GLint,GLenum,GLint*);
335 void glTexImage1D(GLenum,GLint,GLint,GLsizei,GLint,GLenum,GLenum,GLvoid*);
336 void glTexImage2D(GLenum,GLint,GLint,GLsizei,GLsizei,GLint,GLenum,GLenum,GLvoid*);
337 void glGetTexImage(GLenum,GLint,GLenum,GLenum,GLvoid*);
338
339 // Evaluators
340 void glMap1d(GLenum,GLdouble,GLdouble,GLint,GLint,GLdouble*);
341 void glMap1f(GLenum,GLfloat,GLfloat,GLint,GLint,GLfloat*);
342 void glMap2d(GLenum,GLdouble,GLdouble,GLint,GLint,GLdouble,GLdouble,GLint,GLint,GLdouble*);
343 void glMap2f(GLenum,GLfloat,GLfloat,GLint,GLint,GLfloat,GLfloat,GLint,GLint,GLfloat*);
344 void glGetMapdv(GLenum,GLenum,GLdouble*);
345 void glGetMapfv(GLenum,GLenum,GLfloat*);
346 void glGetMapiv(GLenum,GLenum,GLint*);
347 void glEvalCoord1d(GLdouble);
348 void glEvalCoord1f(GLfloat);
349 void glEvalCoord1dv(GLdouble*);
350 void glEvalCoord1fv(GLfloat*);
351 void glEvalCoord2d(GLdouble,GLdouble);
352 void glEvalCoord2f(GLfloat,GLfloat);
353 void glEvalCoord2dv(GLdouble*);
354 void glEvalCoord2fv(GLfloat*);
355 void glMapGrid1d(GLint,GLdouble,GLdouble);
356 void glMapGrid1f(GLint,GLfloat,GLfloat);
357 void glMapGrid2d(GLint,GLdouble,GLdouble,GLint,GLdouble,GLdouble);
358 void glMapGrid2f(GLint,GLfloat,GLfloat,GLint,GLfloat,GLfloat);
359 void glEvalPoint1(GLint);
360 void glEvalPoint2(GLint,GLint);
361 void glEvalMesh1(GLenum,GLint,GLint);
362 void glEvalMesh2(GLenum,GLint,GLint,GLint,GLint);
363
364 // Fog
365 void glFogf(GLenum,GLfloat);
366 void glFogi(GLenum,GLint);
367 void glFogfv(GLenum,GLfloat*);
368 void glFogiv(GLenum,GLint*);
369
370 // Selection and Feedback
371 void glFeedbackBuffer(GLsizei,GLenum,GLfloat*);
372 void glPassThrough(GLfloat);
373 void glSelectBuffer(GLsizei,GLuint*);
374 void glInitNames();
375 void glLoadName(GLuint);
376 void glPushName(GLuint);
377 void glPopName();
378
379 // texture objects
380 void glGenTextures(GLsizei,GLuint*);
381 void glDeleteTextures(GLsizei,GLuint*);
382 void glBindTexture(GLenum,GLuint);
383 void glPrioritizeTextures(GLsizei,GLuint*,GLclampf*);
384 GLboolean glAreTexturesResident(GLsizei,GLuint*,GLboolean*);
385 GLboolean glIsTexture(GLuint);
386
387 // texture mapping
388 void glTexSubImage1D(GLenum,GLint,GLint,GLsizei,GLenum,GLenum,GLvoid*);
389 void glTexSubImage2D(GLenum,GLint,GLint,GLint,GLsizei,GLsizei,GLenum,GLenum,GLvoid*);
390 void glCopyTexImage1D(GLenum,GLint,GLenum,GLint,GLint,GLsizei,GLint);
391 void glCopyTexImage2D(GLenum,GLint,GLenum,GLint,GLint,GLsizei,GLsizei,GLint);
392 void glCopyTexSubImage1D(GLenum,GLint,GLint,GLint,GLint,GLsizei);
393 void glCopyTexSubImage2D(GLenum,GLint,GLint,GLint,GLint,GLint,GLsizei,GLsizei);
394
395 // vertex arrays
396 void glVertexPointer(GLint,GLenum,GLsizei,GLvoid*);
397 void glNormalPointer(GLenum,GLsizei,GLvoid*);
398 void glColorPointer(GLint,GLenum,GLsizei,GLvoid*);
399 void glIndexPointer(GLenum,GLsizei,GLvoid*);
400 void glTexCoordPointer(GLint,GLenum,GLsizei,GLvoid*);
401 void glEdgeFlagPointer(GLsizei,GLvoid*);
402 void glGetPointerv(GLenum,GLvoid**);
403 void glArrayElement(GLint);
404 void glDrawArrays(GLenum,GLint,GLsizei);
405 void glDrawElements(GLenum,GLsizei,GLenum,GLvoid*);
406 void glInterleavedArrays(GLenum,GLsizei,GLvoid*);