|
Blender
V2.59
|
00001 /* 00002 * $Id: bgl.c 38472 2011-07-18 09:49:26Z campbellbarton $ 00003 * 00004 * ***** BEGIN GPL LICENSE BLOCK ***** 00005 * 00006 * This program is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU General Public License 00008 * as published by the Free Software Foundation; either version 2 00009 * of the License, or (at your option) any later version. 00010 * 00011 * This program is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 * GNU General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU General Public License 00017 * along with this program; if not, write to the Free Software Foundation, 00018 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00019 * 00020 * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. 00021 * All rights reserved. 00022 * 00023 * This is a new part of Blender. 00024 * 00025 * Contributor(s): Willian P. Germano 00026 * 00027 * ***** END GPL LICENSE BLOCK ***** 00028 */ 00029 00035 /* This file is the 'bgl' module. 00036 * The BGL submodule "wraps" OpenGL functions and constants, 00037 * allowing script writers to make OpenGL calls in their Python scripts. */ 00038 00039 #include <Python.h> 00040 00041 #include "bgl.h" /*This must come first */ 00042 #include <GL/glew.h> 00043 #include "MEM_guardedalloc.h" 00044 00045 #include "BLI_utildefines.h" 00046 00047 static PyObject *Buffer_new(PyTypeObject *type, PyObject *args, PyObject *kwds); 00048 00049 /* Buffer sequence methods */ 00050 00051 static int Buffer_len(Buffer *self); 00052 static PyObject *Buffer_item(Buffer *self, int i); 00053 static PyObject *Buffer_slice(Buffer *self, int begin, int end); 00054 static int Buffer_ass_item(Buffer *self, int i, PyObject *v); 00055 static int Buffer_ass_slice(Buffer *self, int begin, int end, 00056 PyObject *seq); 00057 static PyObject *Buffer_subscript(Buffer *self, PyObject *item); 00058 static int Buffer_ass_subscript(Buffer *self, PyObject *item, 00059 PyObject *value); 00060 00061 static PySequenceMethods Buffer_SeqMethods = { 00062 (lenfunc) Buffer_len, /*sq_length */ 00063 (binaryfunc) NULL, /*sq_concat */ 00064 (ssizeargfunc) NULL, /*sq_repeat */ 00065 (ssizeargfunc) Buffer_item, /*sq_item */ 00066 (ssizessizeargfunc) Buffer_slice, /*sq_slice, deprecated TODO, replace */ 00067 (ssizeobjargproc) Buffer_ass_item, /*sq_ass_item */ 00068 (ssizessizeobjargproc) Buffer_ass_slice, /*sq_ass_slice, deprecated TODO, replace */ 00069 (objobjproc) NULL, /* sq_contains */ 00070 (binaryfunc) NULL, /* sq_inplace_concat */ 00071 (ssizeargfunc) NULL, /* sq_inplace_repeat */ 00072 }; 00073 00074 00075 static PyMappingMethods Buffer_AsMapping = { 00076 (lenfunc)Buffer_len, 00077 (binaryfunc)Buffer_subscript, 00078 (objobjargproc)Buffer_ass_subscript 00079 }; 00080 00081 static void Buffer_dealloc(Buffer *self); 00082 static PyObject *Buffer_repr(Buffer *self); 00083 00084 static PyObject *Buffer_to_list(Buffer *self) 00085 { 00086 int i, len= self->dimensions[0]; 00087 PyObject *list= PyList_New(len); 00088 00089 for (i=0; i<len; i++) { 00090 PyList_SET_ITEM(list, i, Buffer_item(self, i)); 00091 } 00092 00093 return list; 00094 } 00095 00096 static PyObject *Buffer_to_list_recursive(Buffer *self) 00097 { 00098 PyObject *list; 00099 00100 if(self->ndimensions > 1) { 00101 int i, len= self->dimensions[0]; 00102 list= PyList_New(len); 00103 00104 for (i=0; i<len; i++) { 00105 Buffer *sub= (Buffer *)Buffer_item(self, i); 00106 PyList_SET_ITEM(list, i, Buffer_to_list_recursive(sub)); 00107 Py_DECREF(sub); 00108 } 00109 } 00110 else { 00111 list= Buffer_to_list(self); 00112 } 00113 00114 return list; 00115 } 00116 00117 /* *DEPRECATED* 2011/7/17 bgl.Buffer.list */ 00118 static PyObject *Buffer_list(Buffer *self, void *UNUSED(arg)) 00119 { 00120 fprintf(stderr, "Warning: 'Buffer.list' deprecated, use '[:]' instead\n"); 00121 return Buffer_to_list(self); 00122 } 00123 00124 static PyObject *Buffer_dimensions(Buffer *self, void *UNUSED(arg)) 00125 { 00126 PyObject *list= PyList_New(self->ndimensions); 00127 int i; 00128 00129 for (i= 0; i<self->ndimensions; i++) { 00130 PyList_SET_ITEM(list, i, PyLong_FromLong(self->dimensions[i])); 00131 } 00132 00133 return list; 00134 } 00135 00136 static PyMethodDef Buffer_methods[] = { 00137 {"to_list", (PyCFunction)Buffer_to_list_recursive, METH_NOARGS, 00138 "return the buffer as a list"}, 00139 {NULL, NULL, 0, NULL} 00140 }; 00141 00142 static PyGetSetDef Buffer_getseters[] = { 00143 {(char *)"list", (getter)Buffer_list, NULL, NULL, NULL}, 00144 {(char *)"dimensions", (getter)Buffer_dimensions, NULL, NULL, NULL}, 00145 {NULL, NULL, NULL, NULL, NULL} 00146 }; 00147 00148 00149 PyTypeObject BGL_bufferType = { 00150 PyVarObject_HEAD_INIT(NULL, 0) 00151 "bgl.Buffer", /*tp_name */ 00152 sizeof(Buffer), /*tp_basicsize */ 00153 0, /*tp_itemsize */ 00154 (destructor)Buffer_dealloc, /*tp_dealloc */ 00155 (printfunc)NULL, /*tp_print */ 00156 NULL, /*tp_getattr */ 00157 NULL, /*tp_setattr */ 00158 NULL, /*tp_compare */ 00159 (reprfunc) Buffer_repr, /*tp_repr */ 00160 NULL, /*tp_as_number */ 00161 &Buffer_SeqMethods, /*tp_as_sequence */ 00162 &Buffer_AsMapping, /* PyMappingMethods *tp_as_mapping; */ 00163 00164 /* More standard operations (here for binary compatibility) */ 00165 00166 NULL, /* hashfunc tp_hash; */ 00167 NULL, /* ternaryfunc tp_call; */ 00168 NULL, /* reprfunc tp_str; */ 00169 NULL, /* getattrofunc tp_getattro; */ 00170 NULL, /* setattrofunc tp_setattro; */ 00171 00172 /* Functions to access object as input/output buffer */ 00173 NULL, /* PyBufferProcs *tp_as_buffer; */ 00174 00175 /*** Flags to define presence of optional/expanded features ***/ 00176 Py_TPFLAGS_DEFAULT, /* long tp_flags; */ 00177 00178 NULL, /* char *tp_doc; Documentation string */ 00179 /*** Assigned meaning in release 2.0 ***/ 00180 /* call function for all accessible objects */ 00181 NULL, /* traverseproc tp_traverse; */ 00182 00183 /* delete references to contained objects */ 00184 NULL, /* inquiry tp_clear; */ 00185 00186 /*** Assigned meaning in release 2.1 ***/ 00187 /*** rich comparisons ***/ 00188 NULL, /* richcmpfunc tp_richcompare; */ 00189 00190 /*** weak reference enabler ***/ 00191 0, /* long tp_weaklistoffset; */ 00192 00193 /*** Added in release 2.2 ***/ 00194 /* Iterators */ 00195 NULL, /* getiterfunc tp_iter; */ 00196 NULL, /* iternextfunc tp_iternext; */ 00197 /*** Attribute descriptor and subclassing stuff ***/ 00198 Buffer_methods, /* struct PyMethodDef *tp_methods; */ 00199 NULL, /* struct PyMemberDef *tp_members; */ 00200 Buffer_getseters, /* struct PyGetSetDef *tp_getset; */ 00201 NULL, /*tp_base*/ 00202 NULL, /*tp_dict*/ 00203 NULL, /*tp_descr_get*/ 00204 NULL, /*tp_descr_set*/ 00205 0, /*tp_dictoffset*/ 00206 NULL, /*tp_init*/ 00207 NULL, /*tp_alloc*/ 00208 Buffer_new, /*tp_new*/ 00209 NULL, /*tp_free*/ 00210 NULL, /*tp_is_gc*/ 00211 NULL, /*tp_bases*/ 00212 NULL, /*tp_mro*/ 00213 NULL, /*tp_cache*/ 00214 NULL, /*tp_subclasses*/ 00215 NULL, /*tp_weaklist*/ 00216 NULL /*tp_del*/ 00217 }; 00218 00219 00220 /* #ifndef __APPLE__ */ 00221 00222 #define BGL_Wrap(nargs, funcname, ret, arg_list) \ 00223 static PyObject *Method_##funcname (PyObject *UNUSED(self), PyObject *args) {\ 00224 arg_def##nargs arg_list; \ 00225 ret_def_##ret; \ 00226 if(!PyArg_ParseTuple(args, arg_str##nargs arg_list, arg_ref##nargs arg_list)) return NULL;\ 00227 ret_set_##ret gl##funcname (arg_var##nargs arg_list);\ 00228 ret_ret_##ret; \ 00229 } 00230 00231 #define BGLU_Wrap(nargs, funcname, ret, arg_list) \ 00232 static PyObject *Method_##funcname (PyObject *UNUSED(self), PyObject *args) {\ 00233 arg_def##nargs arg_list; \ 00234 ret_def_##ret; \ 00235 if(!PyArg_ParseTuple(args, arg_str##nargs arg_list, arg_ref##nargs arg_list)) return NULL;\ 00236 ret_set_##ret glu##funcname (arg_var##nargs arg_list);\ 00237 ret_ret_##ret; \ 00238 } 00239 00240 /* #endif */ 00241 00242 /********/ 00243 int BGL_typeSize(int type) 00244 { 00245 switch (type) { 00246 case GL_BYTE: 00247 return sizeof(char); 00248 case GL_SHORT: 00249 return sizeof(short); 00250 case GL_INT: 00251 return sizeof(int); 00252 case GL_FLOAT: 00253 return sizeof(float); 00254 case GL_DOUBLE: 00255 return sizeof(double); 00256 } 00257 return -1; 00258 } 00259 00260 Buffer *BGL_MakeBuffer(int type, int ndimensions, int *dimensions, void *initbuffer) 00261 { 00262 Buffer *buffer; 00263 void *buf= NULL; 00264 int i, size, length; 00265 00266 length= 1; 00267 for (i=0; i<ndimensions; i++) 00268 length*= dimensions[i]; 00269 00270 size= BGL_typeSize(type); 00271 00272 buf= MEM_mallocN(length*size, "Buffer buffer"); 00273 00274 buffer= (Buffer *) PyObject_NEW(Buffer, &BGL_bufferType); 00275 buffer->parent= NULL; 00276 buffer->ndimensions= ndimensions; 00277 buffer->dimensions= MEM_mallocN(ndimensions*sizeof(int), "Buffer dimensions"); 00278 memcpy(buffer->dimensions, dimensions, ndimensions*sizeof(int)); 00279 buffer->type= type; 00280 buffer->buf.asvoid= buf; 00281 00282 if (initbuffer) { 00283 memcpy(buffer->buf.asvoid, initbuffer, length*size); 00284 } 00285 else { 00286 memset(buffer->buf.asvoid, 0, length*size); 00287 } 00288 return buffer; 00289 } 00290 00291 00292 #define MAX_DIMENSIONS 256 00293 static PyObject *Buffer_new(PyTypeObject *UNUSED(type), PyObject *args, PyObject *kwds) 00294 { 00295 PyObject *length_ob= NULL, *init= NULL; 00296 Buffer *buffer; 00297 int dimensions[MAX_DIMENSIONS]; 00298 00299 int i, type; 00300 int ndimensions = 0; 00301 00302 if(kwds && PyDict_Size(kwds)) { 00303 PyErr_SetString(PyExc_TypeError, 00304 "bgl.Buffer(): takes no keyword args"); 00305 return NULL; 00306 } 00307 00308 if (!PyArg_ParseTuple(args, "iO|O: bgl.Buffer", &type, &length_ob, &init)) { 00309 return NULL; 00310 } 00311 if (!ELEM5(type, GL_BYTE, GL_SHORT, GL_INT, GL_FLOAT, GL_DOUBLE)) { 00312 PyErr_SetString(PyExc_AttributeError, 00313 "invalid first argument type, should be one of " 00314 "GL_BYTE, GL_SHORT, GL_INT, GL_FLOAT or GL_DOUBLE"); 00315 return NULL; 00316 } 00317 00318 if (PyLong_Check(length_ob)) { 00319 ndimensions= 1; 00320 if(((dimensions[0]= PyLong_AsLong(length_ob)) < 1)) { 00321 PyErr_SetString(PyExc_AttributeError, 00322 "dimensions must be between 1 and "STRINGIFY(MAX_DIMENSIONS)); 00323 return NULL; 00324 } 00325 } 00326 else if (PySequence_Check(length_ob)) { 00327 ndimensions= PySequence_Size(length_ob); 00328 if (ndimensions > MAX_DIMENSIONS) { 00329 PyErr_SetString(PyExc_AttributeError, 00330 "too many dimensions, max is "STRINGIFY(MAX_DIMENSIONS)); 00331 return NULL; 00332 } 00333 else if (ndimensions < 1) { 00334 PyErr_SetString(PyExc_AttributeError, 00335 "sequence must have at least one dimension"); 00336 return NULL; 00337 } 00338 for (i=0; i<ndimensions; i++) { 00339 PyObject *ob= PySequence_GetItem(length_ob, i); 00340 00341 if (!PyLong_Check(ob)) dimensions[i]= 1; 00342 else dimensions[i]= PyLong_AsLong(ob); 00343 Py_DECREF(ob); 00344 00345 if(dimensions[i] < 1) { 00346 PyErr_SetString(PyExc_AttributeError, 00347 "dimensions must be between 1 and "STRINGIFY(MAX_DIMENSIONS)); 00348 return NULL; 00349 } 00350 } 00351 } 00352 else { 00353 PyErr_Format(PyExc_TypeError, 00354 "invalid second argument argument expected a sequence " 00355 "or an int, not a %.200s", Py_TYPE(length_ob)->tp_name); 00356 return NULL; 00357 } 00358 00359 buffer= BGL_MakeBuffer(type, ndimensions, dimensions, NULL); 00360 if (init && ndimensions) { 00361 if (Buffer_ass_slice(buffer, 0, dimensions[0], init)) { 00362 Py_DECREF(buffer); 00363 return NULL; 00364 } 00365 } 00366 00367 return (PyObject *) buffer; 00368 } 00369 00370 /*@ Buffer sequence methods */ 00371 00372 static int Buffer_len(Buffer *self) 00373 { 00374 return self->dimensions[0]; 00375 } 00376 00377 static PyObject *Buffer_item(Buffer *self, int i) 00378 { 00379 if (i >= self->dimensions[0] || i < 0) { 00380 PyErr_SetString(PyExc_IndexError, "array index out of range"); 00381 return NULL; 00382 } 00383 00384 if (self->ndimensions==1) { 00385 switch (self->type) { 00386 case GL_BYTE: return Py_BuildValue("b", self->buf.asbyte[i]); 00387 case GL_SHORT: return Py_BuildValue("h", self->buf.asshort[i]); 00388 case GL_INT: return Py_BuildValue("i", self->buf.asint[i]); 00389 case GL_FLOAT: return PyFloat_FromDouble(self->buf.asfloat[i]); 00390 case GL_DOUBLE: return Py_BuildValue("d", self->buf.asdouble[i]); 00391 } 00392 } 00393 else { 00394 Buffer *newbuf; 00395 int j, length, size; 00396 00397 length= 1; 00398 for (j=1; j < self->ndimensions; j++) { 00399 length *= self->dimensions[j]; 00400 } 00401 size= BGL_typeSize(self->type); 00402 00403 newbuf= (Buffer *) PyObject_NEW(Buffer, &BGL_bufferType); 00404 00405 Py_INCREF(self); 00406 newbuf->parent= (PyObject *)self; 00407 00408 newbuf->ndimensions= self->ndimensions - 1; 00409 newbuf->type= self->type; 00410 newbuf->buf.asvoid= self->buf.asbyte + i*length*size; 00411 newbuf->dimensions= MEM_mallocN(newbuf->ndimensions*sizeof(int), 00412 "Buffer dimensions"); 00413 memcpy(newbuf->dimensions, self->dimensions+1, 00414 newbuf->ndimensions*sizeof(int)); 00415 00416 return (PyObject *) newbuf; 00417 } 00418 00419 return NULL; 00420 } 00421 00422 static PyObject *Buffer_slice(Buffer *self, int begin, int end) 00423 { 00424 PyObject *list; 00425 int count; 00426 00427 if (begin < 0) begin= 0; 00428 if (end > self->dimensions[0]) end= self->dimensions[0]; 00429 if (begin > end) begin= end; 00430 00431 list= PyList_New(end-begin); 00432 00433 for (count= begin; count<end; count++) { 00434 PyList_SET_ITEM(list, count-begin, Buffer_item(self, count)); 00435 } 00436 return list; 00437 } 00438 00439 static int Buffer_ass_item(Buffer *self, int i, PyObject *v) 00440 { 00441 if (i >= self->dimensions[0] || i < 0) { 00442 PyErr_SetString(PyExc_IndexError, 00443 "array assignment index out of range"); 00444 return -1; 00445 } 00446 00447 if (self->ndimensions!=1) { 00448 Buffer *row= (Buffer *)Buffer_item(self, i); 00449 00450 if (row) { 00451 int ret= Buffer_ass_slice(row, 0, self->dimensions[1], v); 00452 Py_DECREF(row); 00453 return ret; 00454 } 00455 else { 00456 return -1; 00457 } 00458 } 00459 00460 switch(self->type) { 00461 case GL_BYTE: 00462 return PyArg_Parse(v, "b:Expected ints", &self->buf.asbyte[i]) ? 0:-1; 00463 case GL_SHORT: 00464 return PyArg_Parse(v, "h:Expected ints", &self->buf.asshort[i]) ? 0:-1; 00465 case GL_INT: 00466 return PyArg_Parse(v, "i:Expected ints", &self->buf.asint[i]) ? 0:-1; 00467 case GL_FLOAT: 00468 return PyArg_Parse(v, "f:Expected floats", &self->buf.asfloat[i]) ? 0:-1; 00469 case GL_DOUBLE: 00470 return PyArg_Parse(v, "d:Expected floats", &self->buf.asdouble[i]) ? 0:-1; 00471 default: 00472 return 0; /* should never happen */ 00473 } 00474 } 00475 00476 static int Buffer_ass_slice(Buffer *self, int begin, int end, PyObject *seq) 00477 { 00478 PyObject *item; 00479 int count, err=0; 00480 00481 if (begin < 0) begin= 0; 00482 if (end > self->dimensions[0]) end= self->dimensions[0]; 00483 if (begin > end) begin= end; 00484 00485 if (!PySequence_Check(seq)) { 00486 PyErr_Format(PyExc_TypeError, 00487 "buffer[:] = value, invalid assignment. " 00488 "Expected a sequence, not an %.200s type", 00489 Py_TYPE(seq)->tp_name); 00490 return -1; 00491 } 00492 00493 /* re-use count var */ 00494 if ((count= PySequence_Size(seq)) != (end - begin)) { 00495 PyErr_Format(PyExc_TypeError, 00496 "buffer[:] = value, size mismatch in assignment. " 00497 "Expected: %d (given: %d)", count, end - begin); 00498 return -1; 00499 } 00500 00501 for (count= begin; count < end; count++) { 00502 item= PySequence_GetItem(seq, count - begin); 00503 if(item) { 00504 err= Buffer_ass_item(self, count, item); 00505 Py_DECREF(item); 00506 } 00507 else { 00508 err= -1; 00509 } 00510 if (err) break; 00511 } 00512 return err; 00513 } 00514 00515 static PyObject *Buffer_subscript(Buffer *self, PyObject *item) 00516 { 00517 if (PyIndex_Check(item)) { 00518 Py_ssize_t i; 00519 i = PyNumber_AsSsize_t(item, PyExc_IndexError); 00520 if (i == -1 && PyErr_Occurred()) 00521 return NULL; 00522 if (i < 0) 00523 i += self->dimensions[0]; 00524 return Buffer_item(self, i); 00525 } 00526 else if (PySlice_Check(item)) { 00527 Py_ssize_t start, stop, step, slicelength; 00528 00529 if (PySlice_GetIndicesEx((void *)item, self->dimensions[0], &start, &stop, &step, &slicelength) < 0) 00530 return NULL; 00531 00532 if (slicelength <= 0) { 00533 return PyTuple_New(0); 00534 } 00535 else if (step == 1) { 00536 return Buffer_slice(self, start, stop); 00537 } 00538 else { 00539 PyErr_SetString(PyExc_IndexError, 00540 "slice steps not supported with vectors"); 00541 return NULL; 00542 } 00543 } 00544 else { 00545 PyErr_Format(PyExc_TypeError, 00546 "buffer indices must be integers, not %.200s", 00547 Py_TYPE(item)->tp_name); 00548 return NULL; 00549 } 00550 } 00551 00552 static int Buffer_ass_subscript(Buffer *self, PyObject *item, PyObject *value) 00553 { 00554 if (PyIndex_Check(item)) { 00555 Py_ssize_t i = PyNumber_AsSsize_t(item, PyExc_IndexError); 00556 if (i == -1 && PyErr_Occurred()) 00557 return -1; 00558 if (i < 0) 00559 i += self->dimensions[0]; 00560 return Buffer_ass_item(self, i, value); 00561 } 00562 else if (PySlice_Check(item)) { 00563 Py_ssize_t start, stop, step, slicelength; 00564 00565 if (PySlice_GetIndicesEx((void *)item, self->dimensions[0], &start, &stop, &step, &slicelength) < 0) 00566 return -1; 00567 00568 if (step == 1) 00569 return Buffer_ass_slice(self, start, stop, value); 00570 else { 00571 PyErr_SetString(PyExc_IndexError, 00572 "slice steps not supported with vectors"); 00573 return -1; 00574 } 00575 } 00576 else { 00577 PyErr_Format(PyExc_TypeError, 00578 "buffer indices must be integers, not %.200s", 00579 Py_TYPE(item)->tp_name); 00580 return -1; 00581 } 00582 } 00583 00584 00585 static void Buffer_dealloc(Buffer *self) 00586 { 00587 if (self->parent) Py_DECREF(self->parent); 00588 else MEM_freeN (self->buf.asvoid); 00589 00590 MEM_freeN(self->dimensions); 00591 00592 PyObject_DEL(self); 00593 } 00594 00595 00596 static PyObject *Buffer_repr(Buffer *self) 00597 { 00598 PyObject *list= Buffer_to_list_recursive(self); 00599 PyObject *repr; 00600 const char *typestr= "UNKNOWN"; 00601 00602 switch(self->type) { 00603 case GL_BYTE: typestr= "GL_BYTE"; break; 00604 case GL_SHORT: typestr= "GL_SHORT"; break; 00605 case GL_INT: typestr= "GL_BYTE"; break; 00606 case GL_FLOAT: typestr= "GL_FLOAT"; break; 00607 case GL_DOUBLE: typestr= "GL_DOUBLE"; break; 00608 } 00609 00610 repr= PyUnicode_FromFormat("Buffer(%s, %R)", typestr, list); 00611 Py_DECREF(list); 00612 00613 return repr; 00614 } 00615 00616 00617 BGL_Wrap(2, Accum, void, (GLenum, GLfloat)) 00618 BGL_Wrap(2, AlphaFunc, void, (GLenum, GLclampf)) 00619 BGL_Wrap(3, AreTexturesResident, GLboolean, (GLsizei, GLuintP, GLbooleanP)) 00620 BGL_Wrap(1, Begin, void, (GLenum)) 00621 BGL_Wrap(2, BindTexture, void, (GLenum, GLuint)) 00622 BGL_Wrap(7, Bitmap, void, (GLsizei, GLsizei, GLfloat, 00623 GLfloat, GLfloat, GLfloat, GLubyteP)) 00624 BGL_Wrap(2, BlendFunc, void, (GLenum, GLenum)) 00625 BGL_Wrap(1, CallList, void, (GLuint)) 00626 BGL_Wrap(3, CallLists, void, (GLsizei, GLenum, GLvoidP)) 00627 BGL_Wrap(1, Clear, void, (GLbitfield)) 00628 BGL_Wrap(4, ClearAccum, void, (GLfloat, GLfloat, GLfloat, GLfloat)) 00629 BGL_Wrap(4, ClearColor, void, (GLclampf, GLclampf, GLclampf, GLclampf)) 00630 BGL_Wrap(1, ClearDepth, void, (GLclampd)) 00631 BGL_Wrap(1, ClearIndex, void, (GLfloat)) 00632 BGL_Wrap(1, ClearStencil, void, (GLint)) 00633 BGL_Wrap(2, ClipPlane, void, (GLenum, GLdoubleP)) 00634 BGL_Wrap(3, Color3b, void, (GLbyte, GLbyte, GLbyte)) 00635 BGL_Wrap(1, Color3bv, void, (GLbyteP)) 00636 BGL_Wrap(3, Color3d, void, (GLdouble, GLdouble, GLdouble)) 00637 BGL_Wrap(1, Color3dv, void, (GLdoubleP)) 00638 BGL_Wrap(3, Color3f, void, (GLfloat, GLfloat, GLfloat)) 00639 BGL_Wrap(1, Color3fv, void, (GLfloatP)) 00640 BGL_Wrap(3, Color3i, void, (GLint, GLint, GLint)) 00641 BGL_Wrap(1, Color3iv, void, (GLintP)) 00642 BGL_Wrap(3, Color3s, void, (GLshort, GLshort, GLshort)) 00643 BGL_Wrap(1, Color3sv, void, (GLshortP)) 00644 BGL_Wrap(3, Color3ub, void, (GLubyte, GLubyte, GLubyte)) 00645 BGL_Wrap(1, Color3ubv, void, (GLubyteP)) 00646 BGL_Wrap(3, Color3ui, void, (GLuint, GLuint, GLuint)) 00647 BGL_Wrap(1, Color3uiv, void, (GLuintP)) 00648 BGL_Wrap(3, Color3us, void, (GLushort, GLushort, GLushort)) 00649 BGL_Wrap(1, Color3usv, void, (GLushortP)) 00650 BGL_Wrap(4, Color4b, void, (GLbyte, GLbyte, GLbyte, GLbyte)) 00651 BGL_Wrap(1, Color4bv, void, (GLbyteP)) 00652 BGL_Wrap(4, Color4d, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00653 BGL_Wrap(1, Color4dv, void, (GLdoubleP)) 00654 BGL_Wrap(4, Color4f, void, (GLfloat, GLfloat, GLfloat, GLfloat)) 00655 BGL_Wrap(1, Color4fv, void, (GLfloatP)) 00656 BGL_Wrap(4, Color4i, void, (GLint, GLint, GLint, GLint)) 00657 BGL_Wrap(1, Color4iv, void, (GLintP)) 00658 BGL_Wrap(4, Color4s, void, (GLshort, GLshort, GLshort, GLshort)) 00659 BGL_Wrap(1, Color4sv, void, (GLshortP)) 00660 BGL_Wrap(4, Color4ub, void, (GLubyte, GLubyte, GLubyte, GLubyte)) 00661 BGL_Wrap(1, Color4ubv, void, (GLubyteP)) 00662 BGL_Wrap(4, Color4ui, void, (GLuint, GLuint, GLuint, GLuint)) 00663 BGL_Wrap(1, Color4uiv, void, (GLuintP)) 00664 BGL_Wrap(4, Color4us, void, (GLushort, GLushort, GLushort, GLushort)) 00665 BGL_Wrap(1, Color4usv, void, (GLushortP)) 00666 BGL_Wrap(4, ColorMask, void, (GLboolean, GLboolean, GLboolean, GLboolean)) 00667 BGL_Wrap(2, ColorMaterial, void, (GLenum, GLenum)) 00668 BGL_Wrap(5, CopyPixels, void, (GLint, GLint, GLsizei, GLsizei, GLenum)) 00669 BGL_Wrap(8, CopyTexImage2D, void, (GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint)) 00670 BGL_Wrap(1, CullFace, void, (GLenum)) 00671 BGL_Wrap(2, DeleteLists, void, (GLuint, GLsizei)) 00672 BGL_Wrap(2, DeleteTextures, void, (GLsizei, GLuintP)) 00673 BGL_Wrap(1, DepthFunc, void, (GLenum)) 00674 BGL_Wrap(1, DepthMask, void, (GLboolean)) 00675 BGL_Wrap(2, DepthRange, void, (GLclampd, GLclampd)) 00676 BGL_Wrap(1, Disable, void, (GLenum)) 00677 BGL_Wrap(1, DrawBuffer, void, (GLenum)) 00678 BGL_Wrap(5, DrawPixels, void, (GLsizei, GLsizei, GLenum, GLenum, GLvoidP)) 00679 BGL_Wrap(1, EdgeFlag, void, (GLboolean)) 00680 BGL_Wrap(1, EdgeFlagv, void, (GLbooleanP)) 00681 BGL_Wrap(1, Enable, void, (GLenum)) 00682 BGL_Wrap(1, End, void, (void)) 00683 BGL_Wrap(1, EndList, void, (void)) 00684 BGL_Wrap(1, EvalCoord1d, void, (GLdouble)) 00685 BGL_Wrap(1, EvalCoord1dv, void, (GLdoubleP)) 00686 BGL_Wrap(1, EvalCoord1f, void, (GLfloat)) 00687 BGL_Wrap(1, EvalCoord1fv, void, (GLfloatP)) 00688 BGL_Wrap(2, EvalCoord2d, void, (GLdouble, GLdouble)) 00689 BGL_Wrap(1, EvalCoord2dv, void, (GLdoubleP)) 00690 BGL_Wrap(2, EvalCoord2f, void, (GLfloat, GLfloat)) 00691 BGL_Wrap(1, EvalCoord2fv, void, (GLfloatP)) 00692 BGL_Wrap(3, EvalMesh1, void, (GLenum, GLint, GLint)) 00693 BGL_Wrap(5, EvalMesh2, void, (GLenum, GLint, GLint, GLint, GLint)) 00694 BGL_Wrap(1, EvalPoint1, void, (GLint)) 00695 BGL_Wrap(2, EvalPoint2, void, (GLint, GLint)) 00696 BGL_Wrap(3, FeedbackBuffer, void, (GLsizei, GLenum, GLfloatP)) 00697 BGL_Wrap(1, Finish, void, (void)) 00698 BGL_Wrap(1, Flush, void, (void)) 00699 BGL_Wrap(2, Fogf, void, (GLenum, GLfloat)) 00700 BGL_Wrap(2, Fogfv, void, (GLenum, GLfloatP)) 00701 BGL_Wrap(2, Fogi, void, (GLenum, GLint)) 00702 BGL_Wrap(2, Fogiv, void, (GLenum, GLintP)) 00703 BGL_Wrap(1, FrontFace, void, (GLenum)) 00704 BGL_Wrap(6, Frustum, void, (GLdouble, GLdouble, 00705 GLdouble, GLdouble, GLdouble, GLdouble)) 00706 BGL_Wrap(1, GenLists, GLuint, (GLsizei)) 00707 BGL_Wrap(2, GenTextures, void, (GLsizei, GLuintP)) 00708 BGL_Wrap(2, GetBooleanv, void, (GLenum, GLbooleanP)) 00709 BGL_Wrap(2, GetClipPlane, void, (GLenum, GLdoubleP)) 00710 BGL_Wrap(2, GetDoublev, void, (GLenum, GLdoubleP)) 00711 BGL_Wrap(1, GetError, GLenum, (void)) 00712 BGL_Wrap(2, GetFloatv, void, (GLenum, GLfloatP)) 00713 BGL_Wrap(2, GetIntegerv, void, (GLenum, GLintP)) 00714 BGL_Wrap(3, GetLightfv, void, (GLenum, GLenum, GLfloatP)) 00715 BGL_Wrap(3, GetLightiv, void, (GLenum, GLenum, GLintP)) 00716 BGL_Wrap(3, GetMapdv, void, (GLenum, GLenum, GLdoubleP)) 00717 BGL_Wrap(3, GetMapfv, void, (GLenum, GLenum, GLfloatP)) 00718 BGL_Wrap(3, GetMapiv, void, (GLenum, GLenum, GLintP)) 00719 BGL_Wrap(3, GetMaterialfv, void, (GLenum, GLenum, GLfloatP)) 00720 BGL_Wrap(3, GetMaterialiv, void, (GLenum, GLenum, GLintP)) 00721 BGL_Wrap(2, GetPixelMapfv, void, (GLenum, GLfloatP)) 00722 BGL_Wrap(2, GetPixelMapuiv, void, (GLenum, GLuintP)) 00723 BGL_Wrap(2, GetPixelMapusv, void, (GLenum, GLushortP)) 00724 BGL_Wrap(1, GetPolygonStipple,void, (GLubyteP)) 00725 BGL_Wrap(1, GetString, GLstring, (GLenum)) 00726 BGL_Wrap(3, GetTexEnvfv, void, (GLenum, GLenum, GLfloatP)) 00727 BGL_Wrap(3, GetTexEnviv, void, (GLenum, GLenum, GLintP)) 00728 BGL_Wrap(3, GetTexGendv, void, (GLenum, GLenum, GLdoubleP)) 00729 BGL_Wrap(3, GetTexGenfv, void, (GLenum, GLenum, GLfloatP)) 00730 BGL_Wrap(3, GetTexGeniv, void, (GLenum, GLenum, GLintP)) 00731 BGL_Wrap(5, GetTexImage, void, (GLenum, GLint, GLenum, GLenum, GLvoidP)) 00732 BGL_Wrap(4, GetTexLevelParameterfv, void, (GLenum, GLint, GLenum, GLfloatP)) 00733 BGL_Wrap(4, GetTexLevelParameteriv, void, (GLenum, GLint, GLenum, GLintP)) 00734 BGL_Wrap(3, GetTexParameterfv, void, (GLenum, GLenum, GLfloatP)) 00735 BGL_Wrap(3, GetTexParameteriv, void, (GLenum, GLenum, GLintP)) 00736 BGL_Wrap(2, Hint, void, (GLenum, GLenum)) 00737 BGL_Wrap(1, IndexMask, void, (GLuint)) 00738 BGL_Wrap(1, Indexd, void, (GLdouble)) 00739 BGL_Wrap(1, Indexdv, void, (GLdoubleP)) 00740 BGL_Wrap(1, Indexf, void, (GLfloat)) 00741 BGL_Wrap(1, Indexfv, void, (GLfloatP)) 00742 BGL_Wrap(1, Indexi, void, (GLint)) 00743 BGL_Wrap(1, Indexiv, void, (GLintP)) 00744 BGL_Wrap(1, Indexs, void, (GLshort)) 00745 BGL_Wrap(1, Indexsv, void, (GLshortP)) 00746 BGL_Wrap(1, InitNames, void, (void)) 00747 BGL_Wrap(1, IsEnabled, GLboolean, (GLenum)) 00748 BGL_Wrap(1, IsList, GLboolean, (GLuint)) 00749 BGL_Wrap(1, IsTexture, GLboolean, (GLuint)) 00750 BGL_Wrap(2, LightModelf, void, (GLenum, GLfloat)) 00751 BGL_Wrap(2, LightModelfv, void, (GLenum, GLfloatP)) 00752 BGL_Wrap(2, LightModeli, void, (GLenum, GLint)) 00753 BGL_Wrap(2, LightModeliv, void, (GLenum, GLintP)) 00754 BGL_Wrap(3, Lightf, void, (GLenum, GLenum, GLfloat)) 00755 BGL_Wrap(3, Lightfv, void, (GLenum, GLenum, GLfloatP)) 00756 BGL_Wrap(3, Lighti, void, (GLenum, GLenum, GLint)) 00757 BGL_Wrap(3, Lightiv, void, (GLenum, GLenum, GLintP)) 00758 BGL_Wrap(2, LineStipple, void, (GLint, GLushort)) 00759 BGL_Wrap(1, LineWidth, void, (GLfloat)) 00760 BGL_Wrap(1, ListBase, void, (GLuint)) 00761 BGL_Wrap(1, LoadIdentity, void, (void)) 00762 BGL_Wrap(1, LoadMatrixd, void, (GLdoubleP)) 00763 BGL_Wrap(1, LoadMatrixf, void, (GLfloatP)) 00764 BGL_Wrap(1, LoadName, void, (GLuint)) 00765 BGL_Wrap(1, LogicOp, void, (GLenum)) 00766 BGL_Wrap(6, Map1d, void, (GLenum, GLdouble, GLdouble, 00767 GLint, GLint, GLdoubleP)) 00768 BGL_Wrap(6, Map1f, void, (GLenum, GLfloat, GLfloat, 00769 GLint, GLint, GLfloatP)) 00770 BGL_Wrap(10, Map2d, void, (GLenum, GLdouble, GLdouble, 00771 GLint, GLint, GLdouble, GLdouble, GLint, GLint, GLdoubleP)) 00772 BGL_Wrap(10, Map2f, void, (GLenum, GLfloat, GLfloat, 00773 GLint, GLint, GLfloat, GLfloat, GLint, GLint, GLfloatP)) 00774 BGL_Wrap(3, MapGrid1d, void, (GLint, GLdouble, GLdouble)) 00775 BGL_Wrap(3, MapGrid1f, void, (GLint, GLfloat, GLfloat)) 00776 BGL_Wrap(6, MapGrid2d, void, (GLint, GLdouble, GLdouble, 00777 GLint, GLdouble, GLdouble)) 00778 BGL_Wrap(6, MapGrid2f, void, (GLint, GLfloat, GLfloat, 00779 GLint, GLfloat, GLfloat)) 00780 BGL_Wrap(3, Materialf, void, (GLenum, GLenum, GLfloat)) 00781 BGL_Wrap(3, Materialfv, void, (GLenum, GLenum, GLfloatP)) 00782 BGL_Wrap(3, Materiali, void, (GLenum, GLenum, GLint)) 00783 BGL_Wrap(3, Materialiv, void, (GLenum, GLenum, GLintP)) 00784 BGL_Wrap(1, MatrixMode, void, (GLenum)) 00785 BGL_Wrap(1, MultMatrixd, void, (GLdoubleP)) 00786 BGL_Wrap(1, MultMatrixf, void, (GLfloatP)) 00787 BGL_Wrap(2, NewList, void, (GLuint, GLenum)) 00788 BGL_Wrap(3, Normal3b, void, (GLbyte, GLbyte, GLbyte)) 00789 BGL_Wrap(1, Normal3bv, void, (GLbyteP)) 00790 BGL_Wrap(3, Normal3d, void, (GLdouble, GLdouble, GLdouble)) 00791 BGL_Wrap(1, Normal3dv, void, (GLdoubleP)) 00792 BGL_Wrap(3, Normal3f, void, (GLfloat, GLfloat, GLfloat)) 00793 BGL_Wrap(1, Normal3fv, void, (GLfloatP)) 00794 BGL_Wrap(3, Normal3i, void, (GLint, GLint, GLint)) 00795 BGL_Wrap(1, Normal3iv, void, (GLintP)) 00796 BGL_Wrap(3, Normal3s, void, (GLshort, GLshort, GLshort)) 00797 BGL_Wrap(1, Normal3sv, void, (GLshortP)) 00798 BGL_Wrap(6, Ortho, void, (GLdouble, GLdouble, 00799 GLdouble, GLdouble, GLdouble, GLdouble)) 00800 BGL_Wrap(1, PassThrough, void, (GLfloat)) 00801 BGL_Wrap(3, PixelMapfv, void, (GLenum, GLint, GLfloatP)) 00802 BGL_Wrap(3, PixelMapuiv, void, (GLenum, GLint, GLuintP)) 00803 BGL_Wrap(3, PixelMapusv, void, (GLenum, GLint, GLushortP)) 00804 BGL_Wrap(2, PixelStoref, void, (GLenum, GLfloat)) 00805 BGL_Wrap(2, PixelStorei, void, (GLenum, GLint)) 00806 BGL_Wrap(2, PixelTransferf, void, (GLenum, GLfloat)) 00807 BGL_Wrap(2, PixelTransferi, void, (GLenum, GLint)) 00808 BGL_Wrap(2, PixelZoom, void, (GLfloat, GLfloat)) 00809 BGL_Wrap(1, PointSize, void, (GLfloat)) 00810 BGL_Wrap(2, PolygonMode, void, (GLenum, GLenum)) 00811 BGL_Wrap(2, PolygonOffset, void, (GLfloat, GLfloat)) 00812 BGL_Wrap(1, PolygonStipple, void, (GLubyteP)) 00813 BGL_Wrap(1, PopAttrib, void, (void)) 00814 BGL_Wrap(1, PopClientAttrib, void, (void)) 00815 BGL_Wrap(1, PopMatrix, void, (void)) 00816 BGL_Wrap(1, PopName, void, (void)) 00817 BGL_Wrap(3, PrioritizeTextures, void, (GLsizei, GLuintP, GLclampfP)) 00818 BGL_Wrap(1, PushAttrib, void, (GLbitfield)) 00819 BGL_Wrap(1, PushClientAttrib, void, (GLbitfield)) 00820 BGL_Wrap(1, PushMatrix, void, (void)) 00821 BGL_Wrap(1, PushName, void, (GLuint)) 00822 BGL_Wrap(2, RasterPos2d, void, (GLdouble, GLdouble)) 00823 BGL_Wrap(1, RasterPos2dv, void, (GLdoubleP)) 00824 BGL_Wrap(2, RasterPos2f, void, (GLfloat, GLfloat)) 00825 BGL_Wrap(1, RasterPos2fv, void, (GLfloatP)) 00826 BGL_Wrap(2, RasterPos2i, void, (GLint, GLint)) 00827 BGL_Wrap(1, RasterPos2iv, void, (GLintP)) 00828 BGL_Wrap(2, RasterPos2s, void, (GLshort, GLshort)) 00829 BGL_Wrap(1, RasterPos2sv, void, (GLshortP)) 00830 BGL_Wrap(3, RasterPos3d, void, (GLdouble, GLdouble, GLdouble)) 00831 BGL_Wrap(1, RasterPos3dv, void, (GLdoubleP)) 00832 BGL_Wrap(3, RasterPos3f, void, (GLfloat, GLfloat, GLfloat)) 00833 BGL_Wrap(1, RasterPos3fv, void, (GLfloatP)) 00834 BGL_Wrap(3, RasterPos3i, void, (GLint, GLint, GLint)) 00835 BGL_Wrap(1, RasterPos3iv, void, (GLintP)) 00836 BGL_Wrap(3, RasterPos3s, void, (GLshort, GLshort, GLshort)) 00837 BGL_Wrap(1, RasterPos3sv, void, (GLshortP)) 00838 BGL_Wrap(4, RasterPos4d, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00839 BGL_Wrap(1, RasterPos4dv, void, (GLdoubleP)) 00840 BGL_Wrap(4, RasterPos4f, void, (GLfloat, GLfloat, GLfloat, GLfloat)) 00841 BGL_Wrap(1, RasterPos4fv, void, (GLfloatP)) 00842 BGL_Wrap(4, RasterPos4i, void, (GLint, GLint, GLint, GLint)) 00843 BGL_Wrap(1, RasterPos4iv, void, (GLintP)) 00844 BGL_Wrap(4, RasterPos4s, void, (GLshort, GLshort, GLshort, GLshort)) 00845 BGL_Wrap(1, RasterPos4sv, void, (GLshortP)) 00846 BGL_Wrap(1, ReadBuffer, void, (GLenum)) 00847 BGL_Wrap(7, ReadPixels, void, (GLint, GLint, GLsizei, 00848 GLsizei, GLenum, GLenum, GLvoidP)) 00849 BGL_Wrap(4, Rectd, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00850 BGL_Wrap(2, Rectdv, void, (GLdoubleP, GLdoubleP)) 00851 BGL_Wrap(4, Rectf, void, (GLfloat, GLfloat, GLfloat, GLfloat)) 00852 BGL_Wrap(2, Rectfv, void, (GLfloatP, GLfloatP)) 00853 BGL_Wrap(4, Recti, void, (GLint, GLint, GLint, GLint)) 00854 BGL_Wrap(2, Rectiv, void, (GLintP, GLintP)) 00855 BGL_Wrap(4, Rects, void, (GLshort, GLshort, GLshort, GLshort)) 00856 BGL_Wrap(2, Rectsv, void, (GLshortP, GLshortP)) 00857 BGL_Wrap(1, RenderMode, GLint, (GLenum)) 00858 BGL_Wrap(4, Rotated, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00859 BGL_Wrap(4, Rotatef, void, (GLfloat, GLfloat, GLfloat, GLfloat)) 00860 BGL_Wrap(3, Scaled, void, (GLdouble, GLdouble, GLdouble)) 00861 BGL_Wrap(3, Scalef, void, (GLfloat, GLfloat, GLfloat)) 00862 BGL_Wrap(4, Scissor, void, (GLint, GLint, GLsizei, GLsizei)) 00863 BGL_Wrap(2, SelectBuffer, void, (GLsizei, GLuintP)) 00864 BGL_Wrap(1, ShadeModel, void, (GLenum)) 00865 BGL_Wrap(3, StencilFunc, void, (GLenum, GLint, GLuint)) 00866 BGL_Wrap(1, StencilMask, void, (GLuint)) 00867 BGL_Wrap(3, StencilOp, void, (GLenum, GLenum, GLenum)) 00868 BGL_Wrap(1, TexCoord1d, void, (GLdouble)) 00869 BGL_Wrap(1, TexCoord1dv, void, (GLdoubleP)) 00870 BGL_Wrap(1, TexCoord1f, void, (GLfloat)) 00871 BGL_Wrap(1, TexCoord1fv, void, (GLfloatP)) 00872 BGL_Wrap(1, TexCoord1i, void, (GLint)) 00873 BGL_Wrap(1, TexCoord1iv, void, (GLintP)) 00874 BGL_Wrap(1, TexCoord1s, void, (GLshort)) 00875 BGL_Wrap(1, TexCoord1sv, void, (GLshortP)) 00876 BGL_Wrap(2, TexCoord2d, void, (GLdouble, GLdouble)) 00877 BGL_Wrap(1, TexCoord2dv, void, (GLdoubleP)) 00878 BGL_Wrap(2, TexCoord2f, void, (GLfloat, GLfloat)) 00879 BGL_Wrap(1, TexCoord2fv, void, (GLfloatP)) 00880 BGL_Wrap(2, TexCoord2i, void, (GLint, GLint)) 00881 BGL_Wrap(1, TexCoord2iv, void, (GLintP)) 00882 BGL_Wrap(2, TexCoord2s, void, (GLshort, GLshort)) 00883 BGL_Wrap(1, TexCoord2sv, void, (GLshortP)) 00884 BGL_Wrap(3, TexCoord3d, void, (GLdouble, GLdouble, GLdouble)) 00885 BGL_Wrap(1, TexCoord3dv, void, (GLdoubleP)) 00886 BGL_Wrap(3, TexCoord3f, void, (GLfloat, GLfloat, GLfloat)) 00887 BGL_Wrap(1, TexCoord3fv, void, (GLfloatP)) 00888 BGL_Wrap(3, TexCoord3i, void, (GLint, GLint, GLint)) 00889 BGL_Wrap(1, TexCoord3iv, void, (GLintP)) 00890 BGL_Wrap(3, TexCoord3s, void, (GLshort, GLshort, GLshort)) 00891 BGL_Wrap(1, TexCoord3sv, void, (GLshortP)) 00892 BGL_Wrap(4, TexCoord4d, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00893 BGL_Wrap(1, TexCoord4dv, void, (GLdoubleP)) 00894 BGL_Wrap(4, TexCoord4f, void, (GLfloat, GLfloat, GLfloat, GLfloat)) 00895 BGL_Wrap(1, TexCoord4fv, void, (GLfloatP)) 00896 BGL_Wrap(4, TexCoord4i, void, (GLint, GLint, GLint, GLint)) 00897 BGL_Wrap(1, TexCoord4iv, void, (GLintP)) 00898 BGL_Wrap(4, TexCoord4s, void, (GLshort, GLshort, GLshort, GLshort)) 00899 BGL_Wrap(1, TexCoord4sv, void, (GLshortP)) 00900 BGL_Wrap(3, TexEnvf, void, (GLenum, GLenum, GLfloat)) 00901 BGL_Wrap(3, TexEnvfv, void, (GLenum, GLenum, GLfloatP)) 00902 BGL_Wrap(3, TexEnvi, void, (GLenum, GLenum, GLint)) 00903 BGL_Wrap(3, TexEnviv, void, (GLenum, GLenum, GLintP)) 00904 BGL_Wrap(3, TexGend, void, (GLenum, GLenum, GLdouble)) 00905 BGL_Wrap(3, TexGendv, void, (GLenum, GLenum, GLdoubleP)) 00906 BGL_Wrap(3, TexGenf, void, (GLenum, GLenum, GLfloat)) 00907 BGL_Wrap(3, TexGenfv, void, (GLenum, GLenum, GLfloatP)) 00908 BGL_Wrap(3, TexGeni, void, (GLenum, GLenum, GLint)) 00909 BGL_Wrap(3, TexGeniv, void, (GLenum, GLenum, GLintP)) 00910 BGL_Wrap(8, TexImage1D, void, (GLenum, GLint, GLint, 00911 GLsizei, GLint, GLenum, GLenum, GLvoidP)) 00912 BGL_Wrap(9, TexImage2D, void, (GLenum, GLint, GLint, 00913 GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoidP)) 00914 BGL_Wrap(3, TexParameterf, void, (GLenum, GLenum, GLfloat)) 00915 BGL_Wrap(3, TexParameterfv, void, (GLenum, GLenum, GLfloatP)) 00916 BGL_Wrap(3, TexParameteri, void, (GLenum, GLenum, GLint)) 00917 BGL_Wrap(3, TexParameteriv, void, (GLenum, GLenum, GLintP)) 00918 BGL_Wrap(3, Translated, void, (GLdouble, GLdouble, GLdouble)) 00919 BGL_Wrap(3, Translatef, void, (GLfloat, GLfloat, GLfloat)) 00920 BGL_Wrap(2, Vertex2d, void, (GLdouble, GLdouble)) 00921 BGL_Wrap(1, Vertex2dv, void, (GLdoubleP)) 00922 BGL_Wrap(2, Vertex2f, void, (GLfloat, GLfloat)) 00923 BGL_Wrap(1, Vertex2fv, void, (GLfloatP)) 00924 BGL_Wrap(2, Vertex2i, void, (GLint, GLint)) 00925 BGL_Wrap(1, Vertex2iv, void, (GLintP)) 00926 BGL_Wrap(2, Vertex2s, void, (GLshort, GLshort)) 00927 BGL_Wrap(1, Vertex2sv, void, (GLshortP)) 00928 BGL_Wrap(3, Vertex3d, void, (GLdouble, GLdouble, GLdouble)) 00929 BGL_Wrap(1, Vertex3dv, void, (GLdoubleP)) 00930 BGL_Wrap(3, Vertex3f, void, (GLfloat, GLfloat, GLfloat)) 00931 BGL_Wrap(1, Vertex3fv, void, (GLfloatP)) 00932 BGL_Wrap(3, Vertex3i, void, (GLint, GLint, GLint)) 00933 BGL_Wrap(1, Vertex3iv, void, (GLintP)) 00934 BGL_Wrap(3, Vertex3s, void, (GLshort, GLshort, GLshort)) 00935 BGL_Wrap(1, Vertex3sv, void, (GLshortP)) 00936 BGL_Wrap(4, Vertex4d, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00937 BGL_Wrap(1, Vertex4dv, void, (GLdoubleP)) 00938 BGL_Wrap(4, Vertex4f, void, (GLfloat, GLfloat, GLfloat, GLfloat)) 00939 BGL_Wrap(1, Vertex4fv, void, (GLfloatP)) 00940 BGL_Wrap(4, Vertex4i, void, (GLint, GLint, GLint, GLint)) 00941 BGL_Wrap(1, Vertex4iv, void, (GLintP)) 00942 BGL_Wrap(4, Vertex4s, void, (GLshort, GLshort, GLshort, GLshort)) 00943 BGL_Wrap(1, Vertex4sv, void, (GLshortP)) 00944 BGL_Wrap(4, Viewport, void, (GLint, GLint, GLsizei, GLsizei)) 00945 BGLU_Wrap(4, Perspective, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00946 BGLU_Wrap(9, LookAt, void, (GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble)) 00947 BGLU_Wrap(4, Ortho2D, void, (GLdouble, GLdouble, GLdouble, GLdouble)) 00948 BGLU_Wrap(5, PickMatrix, void, (GLdouble, GLdouble, GLdouble, GLdouble, GLintP)) 00949 BGLU_Wrap(9, Project, GLint, (GLdouble, GLdouble, GLdouble, GLdoubleP, GLdoubleP, GLintP, GLdoubleP, GLdoubleP, GLdoubleP)) 00950 BGLU_Wrap(9, UnProject, GLint, (GLdouble, GLdouble, GLdouble, GLdoubleP, GLdoubleP, GLintP, GLdoubleP, GLdoubleP, GLdoubleP)) 00951 00952 #undef MethodDef 00953 #define MethodDef(func) {"gl"#func, Method_##func, METH_VARARGS, "no string"} 00954 #define MethodDefu(func) {"glu"#func, Method_##func, METH_VARARGS, "no string"} 00955 /* So that MethodDef(Accum) becomes: 00956 * {"glAccum", Method_Accumfunc, METH_VARARGS} */ 00957 00958 static struct PyMethodDef BGL_methods[] = { 00959 00960 /* #ifndef __APPLE__ */ 00961 MethodDef(Accum), 00962 MethodDef(AlphaFunc), 00963 MethodDef(AreTexturesResident), 00964 MethodDef(Begin), 00965 MethodDef(BindTexture), 00966 MethodDef(Bitmap), 00967 MethodDef(BlendFunc), 00968 MethodDef(CallList), 00969 MethodDef(CallLists), 00970 MethodDef(Clear), 00971 MethodDef(ClearAccum), 00972 MethodDef(ClearColor), 00973 MethodDef(ClearDepth), 00974 MethodDef(ClearIndex), 00975 MethodDef(ClearStencil), 00976 MethodDef(ClipPlane), 00977 MethodDef(Color3b), 00978 MethodDef(Color3bv), 00979 MethodDef(Color3d), 00980 MethodDef(Color3dv), 00981 MethodDef(Color3f), 00982 MethodDef(Color3fv), 00983 MethodDef(Color3i), 00984 MethodDef(Color3iv), 00985 MethodDef(Color3s), 00986 MethodDef(Color3sv), 00987 MethodDef(Color3ub), 00988 MethodDef(Color3ubv), 00989 MethodDef(Color3ui), 00990 MethodDef(Color3uiv), 00991 MethodDef(Color3us), 00992 MethodDef(Color3usv), 00993 MethodDef(Color4b), 00994 MethodDef(Color4bv), 00995 MethodDef(Color4d), 00996 MethodDef(Color4dv), 00997 MethodDef(Color4f), 00998 MethodDef(Color4fv), 00999 MethodDef(Color4i), 01000 MethodDef(Color4iv), 01001 MethodDef(Color4s), 01002 MethodDef(Color4sv), 01003 MethodDef(Color4ub), 01004 MethodDef(Color4ubv), 01005 MethodDef(Color4ui), 01006 MethodDef(Color4uiv), 01007 MethodDef(Color4us), 01008 MethodDef(Color4usv), 01009 MethodDef(ColorMask), 01010 MethodDef(ColorMaterial), 01011 MethodDef(CopyPixels), 01012 MethodDef(CopyTexImage2D), 01013 MethodDef(CullFace), 01014 MethodDef(DeleteLists), 01015 MethodDef(DeleteTextures), 01016 MethodDef(DepthFunc), 01017 MethodDef(DepthMask), 01018 MethodDef(DepthRange), 01019 MethodDef(Disable), 01020 MethodDef(DrawBuffer), 01021 MethodDef(DrawPixels), 01022 MethodDef(EdgeFlag), 01023 MethodDef(EdgeFlagv), 01024 MethodDef(Enable), 01025 MethodDef(End), 01026 MethodDef(EndList), 01027 MethodDef(EvalCoord1d), 01028 MethodDef(EvalCoord1dv), 01029 MethodDef(EvalCoord1f), 01030 MethodDef(EvalCoord1fv), 01031 MethodDef(EvalCoord2d), 01032 MethodDef(EvalCoord2dv), 01033 MethodDef(EvalCoord2f), 01034 MethodDef(EvalCoord2fv), 01035 MethodDef(EvalMesh1), 01036 MethodDef(EvalMesh2), 01037 MethodDef(EvalPoint1), 01038 MethodDef(EvalPoint2), 01039 MethodDef(FeedbackBuffer), 01040 MethodDef(Finish), 01041 MethodDef(Flush), 01042 MethodDef(Fogf), 01043 MethodDef(Fogfv), 01044 MethodDef(Fogi), 01045 MethodDef(Fogiv), 01046 MethodDef(FrontFace), 01047 MethodDef(Frustum), 01048 MethodDef(GenLists), 01049 MethodDef(GenTextures), 01050 MethodDef(GetBooleanv), 01051 MethodDef(GetClipPlane), 01052 MethodDef(GetDoublev), 01053 MethodDef(GetError), 01054 MethodDef(GetFloatv), 01055 MethodDef(GetIntegerv), 01056 MethodDef(GetLightfv), 01057 MethodDef(GetLightiv), 01058 MethodDef(GetMapdv), 01059 MethodDef(GetMapfv), 01060 MethodDef(GetMapiv), 01061 MethodDef(GetMaterialfv), 01062 MethodDef(GetMaterialiv), 01063 MethodDef(GetPixelMapfv), 01064 MethodDef(GetPixelMapuiv), 01065 MethodDef(GetPixelMapusv), 01066 MethodDef(GetPolygonStipple), 01067 MethodDef(GetString), 01068 MethodDef(GetTexEnvfv), 01069 MethodDef(GetTexEnviv), 01070 MethodDef(GetTexGendv), 01071 MethodDef(GetTexGenfv), 01072 MethodDef(GetTexGeniv), 01073 MethodDef(GetTexImage), 01074 MethodDef(GetTexLevelParameterfv), 01075 MethodDef(GetTexLevelParameteriv), 01076 MethodDef(GetTexParameterfv), 01077 MethodDef(GetTexParameteriv), 01078 MethodDef(Hint), 01079 MethodDef(IndexMask), 01080 MethodDef(Indexd), 01081 MethodDef(Indexdv), 01082 MethodDef(Indexf), 01083 MethodDef(Indexfv), 01084 MethodDef(Indexi), 01085 MethodDef(Indexiv), 01086 MethodDef(Indexs), 01087 MethodDef(Indexsv), 01088 MethodDef(InitNames), 01089 MethodDef(IsEnabled), 01090 MethodDef(IsList), 01091 MethodDef(IsTexture), 01092 MethodDef(LightModelf), 01093 MethodDef(LightModelfv), 01094 MethodDef(LightModeli), 01095 MethodDef(LightModeliv), 01096 MethodDef(Lightf), 01097 MethodDef(Lightfv), 01098 MethodDef(Lighti), 01099 MethodDef(Lightiv), 01100 MethodDef(LineStipple), 01101 MethodDef(LineWidth), 01102 MethodDef(ListBase), 01103 MethodDef(LoadIdentity), 01104 MethodDef(LoadMatrixd), 01105 MethodDef(LoadMatrixf), 01106 MethodDef(LoadName), 01107 MethodDef(LogicOp), 01108 MethodDef(Map1d), 01109 MethodDef(Map1f), 01110 MethodDef(Map2d), 01111 MethodDef(Map2f), 01112 MethodDef(MapGrid1d), 01113 MethodDef(MapGrid1f), 01114 MethodDef(MapGrid2d), 01115 MethodDef(MapGrid2f), 01116 MethodDef(Materialf), 01117 MethodDef(Materialfv), 01118 MethodDef(Materiali), 01119 MethodDef(Materialiv), 01120 MethodDef(MatrixMode), 01121 MethodDef(MultMatrixd), 01122 MethodDef(MultMatrixf), 01123 MethodDef(NewList), 01124 MethodDef(Normal3b), 01125 MethodDef(Normal3bv), 01126 MethodDef(Normal3d), 01127 MethodDef(Normal3dv), 01128 MethodDef(Normal3f), 01129 MethodDef(Normal3fv), 01130 MethodDef(Normal3i), 01131 MethodDef(Normal3iv), 01132 MethodDef(Normal3s), 01133 MethodDef(Normal3sv), 01134 MethodDef(Ortho), 01135 MethodDef(PassThrough), 01136 MethodDef(PixelMapfv), 01137 MethodDef(PixelMapuiv), 01138 MethodDef(PixelMapusv), 01139 MethodDef(PixelStoref), 01140 MethodDef(PixelStorei), 01141 MethodDef(PixelTransferf), 01142 MethodDef(PixelTransferi), 01143 MethodDef(PixelZoom), 01144 MethodDef(PointSize), 01145 MethodDef(PolygonMode), 01146 MethodDef(PolygonOffset), 01147 MethodDef(PolygonStipple), 01148 MethodDef(PopAttrib), 01149 MethodDef(PopClientAttrib), 01150 MethodDef(PopMatrix), 01151 MethodDef(PopName), 01152 MethodDef(PrioritizeTextures), 01153 MethodDef(PushAttrib), 01154 MethodDef(PushClientAttrib), 01155 MethodDef(PushMatrix), 01156 MethodDef(PushName), 01157 MethodDef(RasterPos2d), 01158 MethodDef(RasterPos2dv), 01159 MethodDef(RasterPos2f), 01160 MethodDef(RasterPos2fv), 01161 MethodDef(RasterPos2i), 01162 MethodDef(RasterPos2iv), 01163 MethodDef(RasterPos2s), 01164 MethodDef(RasterPos2sv), 01165 MethodDef(RasterPos3d), 01166 MethodDef(RasterPos3dv), 01167 MethodDef(RasterPos3f), 01168 MethodDef(RasterPos3fv), 01169 MethodDef(RasterPos3i), 01170 MethodDef(RasterPos3iv), 01171 MethodDef(RasterPos3s), 01172 MethodDef(RasterPos3sv), 01173 MethodDef(RasterPos4d), 01174 MethodDef(RasterPos4dv), 01175 MethodDef(RasterPos4f), 01176 MethodDef(RasterPos4fv), 01177 MethodDef(RasterPos4i), 01178 MethodDef(RasterPos4iv), 01179 MethodDef(RasterPos4s), 01180 MethodDef(RasterPos4sv), 01181 MethodDef(ReadBuffer), 01182 MethodDef(ReadPixels), 01183 MethodDef(Rectd), 01184 MethodDef(Rectdv), 01185 MethodDef(Rectf), 01186 MethodDef(Rectfv), 01187 MethodDef(Recti), 01188 MethodDef(Rectiv), 01189 MethodDef(Rects), 01190 MethodDef(Rectsv), 01191 MethodDef(RenderMode), 01192 MethodDef(Rotated), 01193 MethodDef(Rotatef), 01194 MethodDef(Scaled), 01195 MethodDef(Scalef), 01196 MethodDef(Scissor), 01197 MethodDef(SelectBuffer), 01198 MethodDef(ShadeModel), 01199 MethodDef(StencilFunc), 01200 MethodDef(StencilMask), 01201 MethodDef(StencilOp), 01202 MethodDef(TexCoord1d), 01203 MethodDef(TexCoord1dv), 01204 MethodDef(TexCoord1f), 01205 MethodDef(TexCoord1fv), 01206 MethodDef(TexCoord1i), 01207 MethodDef(TexCoord1iv), 01208 MethodDef(TexCoord1s), 01209 MethodDef(TexCoord1sv), 01210 MethodDef(TexCoord2d), 01211 MethodDef(TexCoord2dv), 01212 MethodDef(TexCoord2f), 01213 MethodDef(TexCoord2fv), 01214 MethodDef(TexCoord2i), 01215 MethodDef(TexCoord2iv), 01216 MethodDef(TexCoord2s), 01217 MethodDef(TexCoord2sv), 01218 MethodDef(TexCoord3d), 01219 MethodDef(TexCoord3dv), 01220 MethodDef(TexCoord3f), 01221 MethodDef(TexCoord3fv), 01222 MethodDef(TexCoord3i), 01223 MethodDef(TexCoord3iv), 01224 MethodDef(TexCoord3s), 01225 MethodDef(TexCoord3sv), 01226 MethodDef(TexCoord4d), 01227 MethodDef(TexCoord4dv), 01228 MethodDef(TexCoord4f), 01229 MethodDef(TexCoord4fv), 01230 MethodDef(TexCoord4i), 01231 MethodDef(TexCoord4iv), 01232 MethodDef(TexCoord4s), 01233 MethodDef(TexCoord4sv), 01234 MethodDef(TexEnvf), 01235 MethodDef(TexEnvfv), 01236 MethodDef(TexEnvi), 01237 MethodDef(TexEnviv), 01238 MethodDef(TexGend), 01239 MethodDef(TexGendv), 01240 MethodDef(TexGenf), 01241 MethodDef(TexGenfv), 01242 MethodDef(TexGeni), 01243 MethodDef(TexGeniv), 01244 MethodDef(TexImage1D), 01245 MethodDef(TexImage2D), 01246 MethodDef(TexParameterf), 01247 MethodDef(TexParameterfv), 01248 MethodDef(TexParameteri), 01249 MethodDef(TexParameteriv), 01250 MethodDef(Translated), 01251 MethodDef(Translatef), 01252 MethodDef(Vertex2d), 01253 MethodDef(Vertex2dv), 01254 MethodDef(Vertex2f), 01255 MethodDef(Vertex2fv), 01256 MethodDef(Vertex2i), 01257 MethodDef(Vertex2iv), 01258 MethodDef(Vertex2s), 01259 MethodDef(Vertex2sv), 01260 MethodDef(Vertex3d), 01261 MethodDef(Vertex3dv), 01262 MethodDef(Vertex3f), 01263 MethodDef(Vertex3fv), 01264 MethodDef(Vertex3i), 01265 MethodDef(Vertex3iv), 01266 MethodDef(Vertex3s), 01267 MethodDef(Vertex3sv), 01268 MethodDef(Vertex4d), 01269 MethodDef(Vertex4dv), 01270 MethodDef(Vertex4f), 01271 MethodDef(Vertex4fv), 01272 MethodDef(Vertex4i), 01273 MethodDef(Vertex4iv), 01274 MethodDef(Vertex4s), 01275 MethodDef(Vertex4sv), 01276 MethodDef(Viewport), 01277 MethodDefu(Perspective), 01278 MethodDefu(LookAt), 01279 MethodDefu(Ortho2D), 01280 MethodDefu(PickMatrix), 01281 MethodDefu(Project), 01282 MethodDefu(UnProject), 01283 /* #endif */ 01284 {NULL, NULL, 0, NULL} 01285 }; 01286 01287 static struct PyModuleDef BGL_module_def = { 01288 PyModuleDef_HEAD_INIT, 01289 "bgl", /* m_name */ 01290 NULL, /* m_doc */ 01291 0, /* m_size */ 01292 BGL_methods, /* m_methods */ 01293 NULL, /* m_reload */ 01294 NULL, /* m_traverse */ 01295 NULL, /* m_clear */ 01296 NULL, /* m_free */ 01297 }; 01298 01299 01300 PyObject *BPyInit_bgl(void) 01301 { 01302 PyObject *submodule, *dict, *item; 01303 submodule= PyModule_Create(&BGL_module_def); 01304 dict= PyModule_GetDict(submodule); 01305 01306 if(PyType_Ready(&BGL_bufferType) < 0) 01307 return NULL; /* should never happen */ 01308 01309 01310 PyModule_AddObject(submodule, "Buffer", (PyObject *)&BGL_bufferType); 01311 01312 #define EXPP_ADDCONST(x) PyDict_SetItemString(dict, #x, item=PyLong_FromLong((int)x)); Py_DECREF(item) 01313 01314 /* So, for example: 01315 * EXPP_ADDCONST(GL_CURRENT_BIT) becomes 01316 * PyDict_SetItemString(dict, "GL_CURRENT_BIT", item=PyLong_FromLong(GL_CURRENT_BIT)); Py_DECREF(item) */ 01317 01318 EXPP_ADDCONST(GL_CURRENT_BIT); 01319 EXPP_ADDCONST(GL_POINT_BIT); 01320 EXPP_ADDCONST(GL_LINE_BIT); 01321 EXPP_ADDCONST(GL_POLYGON_BIT); 01322 EXPP_ADDCONST(GL_POLYGON_STIPPLE_BIT); 01323 EXPP_ADDCONST(GL_PIXEL_MODE_BIT); 01324 EXPP_ADDCONST(GL_LIGHTING_BIT); 01325 EXPP_ADDCONST(GL_FOG_BIT); 01326 EXPP_ADDCONST(GL_DEPTH_BUFFER_BIT); 01327 EXPP_ADDCONST(GL_ACCUM_BUFFER_BIT); 01328 EXPP_ADDCONST(GL_STENCIL_BUFFER_BIT); 01329 EXPP_ADDCONST(GL_VIEWPORT_BIT); 01330 EXPP_ADDCONST(GL_TRANSFORM_BIT); 01331 EXPP_ADDCONST(GL_ENABLE_BIT); 01332 EXPP_ADDCONST(GL_COLOR_BUFFER_BIT); 01333 EXPP_ADDCONST(GL_HINT_BIT); 01334 EXPP_ADDCONST(GL_EVAL_BIT); 01335 EXPP_ADDCONST(GL_LIST_BIT); 01336 EXPP_ADDCONST(GL_TEXTURE_BIT); 01337 EXPP_ADDCONST(GL_SCISSOR_BIT); 01338 EXPP_ADDCONST(GL_ALL_ATTRIB_BITS); 01339 EXPP_ADDCONST(GL_CLIENT_ALL_ATTRIB_BITS); 01340 01341 EXPP_ADDCONST(GL_FALSE); 01342 EXPP_ADDCONST(GL_TRUE); 01343 01344 EXPP_ADDCONST(GL_POINTS); 01345 EXPP_ADDCONST(GL_LINES); 01346 EXPP_ADDCONST(GL_LINE_LOOP); 01347 EXPP_ADDCONST(GL_LINE_STRIP); 01348 EXPP_ADDCONST(GL_TRIANGLES); 01349 EXPP_ADDCONST(GL_TRIANGLE_STRIP); 01350 EXPP_ADDCONST(GL_TRIANGLE_FAN); 01351 EXPP_ADDCONST(GL_QUADS); 01352 EXPP_ADDCONST(GL_QUAD_STRIP); 01353 EXPP_ADDCONST(GL_POLYGON); 01354 01355 EXPP_ADDCONST(GL_ACCUM); 01356 EXPP_ADDCONST(GL_LOAD); 01357 EXPP_ADDCONST(GL_RETURN); 01358 EXPP_ADDCONST(GL_MULT); 01359 EXPP_ADDCONST(GL_ADD); 01360 01361 EXPP_ADDCONST(GL_NEVER); 01362 EXPP_ADDCONST(GL_LESS); 01363 EXPP_ADDCONST(GL_EQUAL); 01364 EXPP_ADDCONST(GL_LEQUAL); 01365 EXPP_ADDCONST(GL_GREATER); 01366 EXPP_ADDCONST(GL_NOTEQUAL); 01367 EXPP_ADDCONST(GL_GEQUAL); 01368 EXPP_ADDCONST(GL_ALWAYS); 01369 01370 EXPP_ADDCONST(GL_ZERO); 01371 EXPP_ADDCONST(GL_ONE); 01372 EXPP_ADDCONST(GL_SRC_COLOR); 01373 EXPP_ADDCONST(GL_ONE_MINUS_SRC_COLOR); 01374 EXPP_ADDCONST(GL_SRC_ALPHA); 01375 EXPP_ADDCONST(GL_ONE_MINUS_SRC_ALPHA); 01376 EXPP_ADDCONST(GL_DST_ALPHA); 01377 EXPP_ADDCONST(GL_ONE_MINUS_DST_ALPHA); 01378 01379 EXPP_ADDCONST(GL_DST_COLOR); 01380 EXPP_ADDCONST(GL_ONE_MINUS_DST_COLOR); 01381 EXPP_ADDCONST(GL_SRC_ALPHA_SATURATE); 01382 01383 EXPP_ADDCONST(GL_NONE); 01384 EXPP_ADDCONST(GL_FRONT_LEFT); 01385 EXPP_ADDCONST(GL_FRONT_RIGHT); 01386 EXPP_ADDCONST(GL_BACK_LEFT); 01387 EXPP_ADDCONST(GL_BACK_RIGHT); 01388 EXPP_ADDCONST(GL_FRONT); 01389 EXPP_ADDCONST(GL_BACK); 01390 EXPP_ADDCONST(GL_LEFT); 01391 EXPP_ADDCONST(GL_RIGHT); 01392 EXPP_ADDCONST(GL_FRONT_AND_BACK); 01393 EXPP_ADDCONST(GL_AUX0); 01394 EXPP_ADDCONST(GL_AUX1); 01395 EXPP_ADDCONST(GL_AUX2); 01396 EXPP_ADDCONST(GL_AUX3); 01397 01398 EXPP_ADDCONST(GL_NO_ERROR); 01399 EXPP_ADDCONST(GL_INVALID_ENUM); 01400 EXPP_ADDCONST(GL_INVALID_VALUE); 01401 EXPP_ADDCONST(GL_INVALID_OPERATION); 01402 EXPP_ADDCONST(GL_STACK_OVERFLOW); 01403 EXPP_ADDCONST(GL_STACK_UNDERFLOW); 01404 EXPP_ADDCONST(GL_OUT_OF_MEMORY); 01405 01406 EXPP_ADDCONST(GL_2D); 01407 EXPP_ADDCONST(GL_3D); 01408 EXPP_ADDCONST(GL_3D_COLOR); 01409 EXPP_ADDCONST(GL_3D_COLOR_TEXTURE); 01410 EXPP_ADDCONST(GL_4D_COLOR_TEXTURE); 01411 01412 EXPP_ADDCONST(GL_PASS_THROUGH_TOKEN); 01413 EXPP_ADDCONST(GL_POINT_TOKEN); 01414 EXPP_ADDCONST(GL_LINE_TOKEN); 01415 EXPP_ADDCONST(GL_POLYGON_TOKEN); 01416 EXPP_ADDCONST(GL_BITMAP_TOKEN); 01417 EXPP_ADDCONST(GL_DRAW_PIXEL_TOKEN); 01418 EXPP_ADDCONST(GL_COPY_PIXEL_TOKEN); 01419 EXPP_ADDCONST(GL_LINE_RESET_TOKEN); 01420 01421 EXPP_ADDCONST(GL_EXP); 01422 EXPP_ADDCONST(GL_EXP2); 01423 01424 EXPP_ADDCONST(GL_CW); 01425 EXPP_ADDCONST(GL_CCW); 01426 01427 EXPP_ADDCONST(GL_COEFF); 01428 EXPP_ADDCONST(GL_ORDER); 01429 EXPP_ADDCONST(GL_DOMAIN); 01430 01431 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_I); 01432 EXPP_ADDCONST(GL_PIXEL_MAP_S_TO_S); 01433 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_R); 01434 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_G); 01435 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_B); 01436 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_A); 01437 EXPP_ADDCONST(GL_PIXEL_MAP_R_TO_R); 01438 EXPP_ADDCONST(GL_PIXEL_MAP_G_TO_G); 01439 EXPP_ADDCONST(GL_PIXEL_MAP_B_TO_B); 01440 EXPP_ADDCONST(GL_PIXEL_MAP_A_TO_A); 01441 01442 EXPP_ADDCONST(GL_CURRENT_COLOR); 01443 EXPP_ADDCONST(GL_CURRENT_INDEX); 01444 EXPP_ADDCONST(GL_CURRENT_NORMAL); 01445 EXPP_ADDCONST(GL_CURRENT_TEXTURE_COORDS); 01446 EXPP_ADDCONST(GL_CURRENT_RASTER_COLOR); 01447 EXPP_ADDCONST(GL_CURRENT_RASTER_INDEX); 01448 EXPP_ADDCONST(GL_CURRENT_RASTER_TEXTURE_COORDS); 01449 EXPP_ADDCONST(GL_CURRENT_RASTER_POSITION); 01450 EXPP_ADDCONST(GL_CURRENT_RASTER_POSITION_VALID); 01451 EXPP_ADDCONST(GL_CURRENT_RASTER_DISTANCE); 01452 EXPP_ADDCONST(GL_POINT_SMOOTH); 01453 EXPP_ADDCONST(GL_POINT_SIZE); 01454 EXPP_ADDCONST(GL_POINT_SIZE_RANGE); 01455 EXPP_ADDCONST(GL_POINT_SIZE_GRANULARITY); 01456 EXPP_ADDCONST(GL_LINE_SMOOTH); 01457 EXPP_ADDCONST(GL_LINE_WIDTH); 01458 EXPP_ADDCONST(GL_LINE_WIDTH_RANGE); 01459 EXPP_ADDCONST(GL_LINE_WIDTH_GRANULARITY); 01460 EXPP_ADDCONST(GL_LINE_STIPPLE); 01461 EXPP_ADDCONST(GL_LINE_STIPPLE_PATTERN); 01462 EXPP_ADDCONST(GL_LINE_STIPPLE_REPEAT); 01463 EXPP_ADDCONST(GL_LIST_MODE); 01464 EXPP_ADDCONST(GL_MAX_LIST_NESTING); 01465 EXPP_ADDCONST(GL_LIST_BASE); 01466 EXPP_ADDCONST(GL_LIST_INDEX); 01467 EXPP_ADDCONST(GL_POLYGON_MODE); 01468 EXPP_ADDCONST(GL_POLYGON_SMOOTH); 01469 EXPP_ADDCONST(GL_POLYGON_STIPPLE); 01470 EXPP_ADDCONST(GL_EDGE_FLAG); 01471 EXPP_ADDCONST(GL_CULL_FACE); 01472 EXPP_ADDCONST(GL_CULL_FACE_MODE); 01473 EXPP_ADDCONST(GL_FRONT_FACE); 01474 EXPP_ADDCONST(GL_LIGHTING); 01475 EXPP_ADDCONST(GL_LIGHT_MODEL_LOCAL_VIEWER); 01476 EXPP_ADDCONST(GL_LIGHT_MODEL_TWO_SIDE); 01477 EXPP_ADDCONST(GL_LIGHT_MODEL_AMBIENT); 01478 EXPP_ADDCONST(GL_SHADE_MODEL); 01479 EXPP_ADDCONST(GL_COLOR_MATERIAL_FACE); 01480 EXPP_ADDCONST(GL_COLOR_MATERIAL_PARAMETER); 01481 EXPP_ADDCONST(GL_COLOR_MATERIAL); 01482 EXPP_ADDCONST(GL_FOG); 01483 EXPP_ADDCONST(GL_FOG_INDEX); 01484 EXPP_ADDCONST(GL_FOG_DENSITY); 01485 EXPP_ADDCONST(GL_FOG_START); 01486 EXPP_ADDCONST(GL_FOG_END); 01487 EXPP_ADDCONST(GL_FOG_MODE); 01488 EXPP_ADDCONST(GL_FOG_COLOR); 01489 EXPP_ADDCONST(GL_DEPTH_RANGE); 01490 EXPP_ADDCONST(GL_DEPTH_TEST); 01491 EXPP_ADDCONST(GL_DEPTH_WRITEMASK); 01492 EXPP_ADDCONST(GL_DEPTH_CLEAR_VALUE); 01493 EXPP_ADDCONST(GL_DEPTH_FUNC); 01494 EXPP_ADDCONST(GL_ACCUM_CLEAR_VALUE); 01495 EXPP_ADDCONST(GL_STENCIL_TEST); 01496 EXPP_ADDCONST(GL_STENCIL_CLEAR_VALUE); 01497 EXPP_ADDCONST(GL_STENCIL_FUNC); 01498 EXPP_ADDCONST(GL_STENCIL_VALUE_MASK); 01499 EXPP_ADDCONST(GL_STENCIL_FAIL); 01500 EXPP_ADDCONST(GL_STENCIL_PASS_DEPTH_FAIL); 01501 EXPP_ADDCONST(GL_STENCIL_PASS_DEPTH_PASS); 01502 EXPP_ADDCONST(GL_STENCIL_REF); 01503 EXPP_ADDCONST(GL_STENCIL_WRITEMASK); 01504 EXPP_ADDCONST(GL_MATRIX_MODE); 01505 EXPP_ADDCONST(GL_NORMALIZE); 01506 EXPP_ADDCONST(GL_VIEWPORT); 01507 EXPP_ADDCONST(GL_MODELVIEW_STACK_DEPTH); 01508 EXPP_ADDCONST(GL_PROJECTION_STACK_DEPTH); 01509 EXPP_ADDCONST(GL_TEXTURE_STACK_DEPTH); 01510 EXPP_ADDCONST(GL_MODELVIEW_MATRIX); 01511 EXPP_ADDCONST(GL_PROJECTION_MATRIX); 01512 EXPP_ADDCONST(GL_TEXTURE_MATRIX); 01513 EXPP_ADDCONST(GL_ATTRIB_STACK_DEPTH); 01514 EXPP_ADDCONST(GL_ALPHA_TEST); 01515 EXPP_ADDCONST(GL_ALPHA_TEST_FUNC); 01516 EXPP_ADDCONST(GL_ALPHA_TEST_REF); 01517 EXPP_ADDCONST(GL_DITHER); 01518 EXPP_ADDCONST(GL_BLEND_DST); 01519 EXPP_ADDCONST(GL_BLEND_SRC); 01520 EXPP_ADDCONST(GL_BLEND); 01521 EXPP_ADDCONST(GL_LOGIC_OP_MODE); 01522 EXPP_ADDCONST(GL_LOGIC_OP); 01523 EXPP_ADDCONST(GL_AUX_BUFFERS); 01524 EXPP_ADDCONST(GL_DRAW_BUFFER); 01525 EXPP_ADDCONST(GL_READ_BUFFER); 01526 EXPP_ADDCONST(GL_SCISSOR_BOX); 01527 EXPP_ADDCONST(GL_SCISSOR_TEST); 01528 EXPP_ADDCONST(GL_INDEX_CLEAR_VALUE); 01529 EXPP_ADDCONST(GL_INDEX_WRITEMASK); 01530 EXPP_ADDCONST(GL_COLOR_CLEAR_VALUE); 01531 EXPP_ADDCONST(GL_COLOR_WRITEMASK); 01532 EXPP_ADDCONST(GL_INDEX_MODE); 01533 EXPP_ADDCONST(GL_RGBA_MODE); 01534 EXPP_ADDCONST(GL_DOUBLEBUFFER); 01535 EXPP_ADDCONST(GL_STEREO); 01536 EXPP_ADDCONST(GL_RENDER_MODE); 01537 EXPP_ADDCONST(GL_PERSPECTIVE_CORRECTION_HINT); 01538 EXPP_ADDCONST(GL_POINT_SMOOTH_HINT); 01539 EXPP_ADDCONST(GL_LINE_SMOOTH_HINT); 01540 EXPP_ADDCONST(GL_POLYGON_SMOOTH_HINT); 01541 EXPP_ADDCONST(GL_FOG_HINT); 01542 EXPP_ADDCONST(GL_TEXTURE_GEN_S); 01543 EXPP_ADDCONST(GL_TEXTURE_GEN_T); 01544 EXPP_ADDCONST(GL_TEXTURE_GEN_R); 01545 EXPP_ADDCONST(GL_TEXTURE_GEN_Q); 01546 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_I_SIZE); 01547 EXPP_ADDCONST(GL_PIXEL_MAP_S_TO_S_SIZE); 01548 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_R_SIZE); 01549 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_G_SIZE); 01550 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_B_SIZE); 01551 EXPP_ADDCONST(GL_PIXEL_MAP_I_TO_A_SIZE); 01552 EXPP_ADDCONST(GL_PIXEL_MAP_R_TO_R_SIZE); 01553 EXPP_ADDCONST(GL_PIXEL_MAP_G_TO_G_SIZE); 01554 EXPP_ADDCONST(GL_PIXEL_MAP_B_TO_B_SIZE); 01555 EXPP_ADDCONST(GL_PIXEL_MAP_A_TO_A_SIZE); 01556 EXPP_ADDCONST(GL_UNPACK_SWAP_BYTES); 01557 EXPP_ADDCONST(GL_UNPACK_LSB_FIRST); 01558 EXPP_ADDCONST(GL_UNPACK_ROW_LENGTH); 01559 EXPP_ADDCONST(GL_UNPACK_SKIP_ROWS); 01560 EXPP_ADDCONST(GL_UNPACK_SKIP_PIXELS); 01561 EXPP_ADDCONST(GL_UNPACK_ALIGNMENT); 01562 EXPP_ADDCONST(GL_PACK_SWAP_BYTES); 01563 EXPP_ADDCONST(GL_PACK_LSB_FIRST); 01564 EXPP_ADDCONST(GL_PACK_ROW_LENGTH); 01565 EXPP_ADDCONST(GL_PACK_SKIP_ROWS); 01566 EXPP_ADDCONST(GL_PACK_SKIP_PIXELS); 01567 EXPP_ADDCONST(GL_PACK_ALIGNMENT); 01568 EXPP_ADDCONST(GL_MAP_COLOR); 01569 EXPP_ADDCONST(GL_MAP_STENCIL); 01570 EXPP_ADDCONST(GL_INDEX_SHIFT); 01571 EXPP_ADDCONST(GL_INDEX_OFFSET); 01572 EXPP_ADDCONST(GL_RED_SCALE); 01573 EXPP_ADDCONST(GL_RED_BIAS); 01574 EXPP_ADDCONST(GL_ZOOM_X); 01575 EXPP_ADDCONST(GL_ZOOM_Y); 01576 EXPP_ADDCONST(GL_GREEN_SCALE); 01577 EXPP_ADDCONST(GL_GREEN_BIAS); 01578 EXPP_ADDCONST(GL_BLUE_SCALE); 01579 EXPP_ADDCONST(GL_BLUE_BIAS); 01580 EXPP_ADDCONST(GL_ALPHA_SCALE); 01581 EXPP_ADDCONST(GL_ALPHA_BIAS); 01582 EXPP_ADDCONST(GL_DEPTH_SCALE); 01583 EXPP_ADDCONST(GL_DEPTH_BIAS); 01584 EXPP_ADDCONST(GL_MAX_EVAL_ORDER); 01585 EXPP_ADDCONST(GL_MAX_LIGHTS); 01586 EXPP_ADDCONST(GL_MAX_CLIP_PLANES); 01587 EXPP_ADDCONST(GL_MAX_TEXTURE_SIZE); 01588 EXPP_ADDCONST(GL_MAX_PIXEL_MAP_TABLE); 01589 EXPP_ADDCONST(GL_MAX_ATTRIB_STACK_DEPTH); 01590 EXPP_ADDCONST(GL_MAX_MODELVIEW_STACK_DEPTH); 01591 EXPP_ADDCONST(GL_MAX_NAME_STACK_DEPTH); 01592 EXPP_ADDCONST(GL_MAX_PROJECTION_STACK_DEPTH); 01593 EXPP_ADDCONST(GL_MAX_TEXTURE_STACK_DEPTH); 01594 EXPP_ADDCONST(GL_MAX_VIEWPORT_DIMS); 01595 EXPP_ADDCONST(GL_SUBPIXEL_BITS); 01596 EXPP_ADDCONST(GL_INDEX_BITS); 01597 EXPP_ADDCONST(GL_RED_BITS); 01598 EXPP_ADDCONST(GL_GREEN_BITS); 01599 EXPP_ADDCONST(GL_BLUE_BITS); 01600 EXPP_ADDCONST(GL_ALPHA_BITS); 01601 EXPP_ADDCONST(GL_DEPTH_BITS); 01602 EXPP_ADDCONST(GL_STENCIL_BITS); 01603 EXPP_ADDCONST(GL_ACCUM_RED_BITS); 01604 EXPP_ADDCONST(GL_ACCUM_GREEN_BITS); 01605 EXPP_ADDCONST(GL_ACCUM_BLUE_BITS); 01606 EXPP_ADDCONST(GL_ACCUM_ALPHA_BITS); 01607 EXPP_ADDCONST(GL_NAME_STACK_DEPTH); 01608 EXPP_ADDCONST(GL_AUTO_NORMAL); 01609 EXPP_ADDCONST(GL_MAP1_COLOR_4); 01610 EXPP_ADDCONST(GL_MAP1_INDEX); 01611 EXPP_ADDCONST(GL_MAP1_NORMAL); 01612 EXPP_ADDCONST(GL_MAP1_TEXTURE_COORD_1); 01613 EXPP_ADDCONST(GL_MAP1_TEXTURE_COORD_2); 01614 EXPP_ADDCONST(GL_MAP1_TEXTURE_COORD_3); 01615 EXPP_ADDCONST(GL_MAP1_TEXTURE_COORD_4); 01616 EXPP_ADDCONST(GL_MAP1_VERTEX_3); 01617 EXPP_ADDCONST(GL_MAP1_VERTEX_4); 01618 EXPP_ADDCONST(GL_MAP2_COLOR_4); 01619 EXPP_ADDCONST(GL_MAP2_INDEX); 01620 EXPP_ADDCONST(GL_MAP2_NORMAL); 01621 EXPP_ADDCONST(GL_MAP2_TEXTURE_COORD_1); 01622 EXPP_ADDCONST(GL_MAP2_TEXTURE_COORD_2); 01623 EXPP_ADDCONST(GL_MAP2_TEXTURE_COORD_3); 01624 EXPP_ADDCONST(GL_MAP2_TEXTURE_COORD_4); 01625 EXPP_ADDCONST(GL_MAP2_VERTEX_3); 01626 EXPP_ADDCONST(GL_MAP2_VERTEX_4); 01627 EXPP_ADDCONST(GL_MAP1_GRID_DOMAIN); 01628 EXPP_ADDCONST(GL_MAP1_GRID_SEGMENTS); 01629 EXPP_ADDCONST(GL_MAP2_GRID_DOMAIN); 01630 EXPP_ADDCONST(GL_MAP2_GRID_SEGMENTS); 01631 EXPP_ADDCONST(GL_TEXTURE_1D); 01632 EXPP_ADDCONST(GL_TEXTURE_2D); 01633 01634 EXPP_ADDCONST(GL_TEXTURE_WIDTH); 01635 EXPP_ADDCONST(GL_TEXTURE_HEIGHT); 01636 EXPP_ADDCONST(GL_TEXTURE_COMPONENTS); 01637 EXPP_ADDCONST(GL_TEXTURE_BORDER_COLOR); 01638 EXPP_ADDCONST(GL_TEXTURE_BORDER); 01639 01640 EXPP_ADDCONST(GL_DONT_CARE); 01641 EXPP_ADDCONST(GL_FASTEST); 01642 EXPP_ADDCONST(GL_NICEST); 01643 01644 EXPP_ADDCONST(GL_AMBIENT); 01645 EXPP_ADDCONST(GL_DIFFUSE); 01646 EXPP_ADDCONST(GL_SPECULAR); 01647 EXPP_ADDCONST(GL_POSITION); 01648 EXPP_ADDCONST(GL_SPOT_DIRECTION); 01649 EXPP_ADDCONST(GL_SPOT_EXPONENT); 01650 EXPP_ADDCONST(GL_SPOT_CUTOFF); 01651 EXPP_ADDCONST(GL_CONSTANT_ATTENUATION); 01652 EXPP_ADDCONST(GL_LINEAR_ATTENUATION); 01653 EXPP_ADDCONST(GL_QUADRATIC_ATTENUATION); 01654 01655 EXPP_ADDCONST(GL_COMPILE); 01656 EXPP_ADDCONST(GL_COMPILE_AND_EXECUTE); 01657 01658 EXPP_ADDCONST(GL_BYTE); 01659 EXPP_ADDCONST(GL_UNSIGNED_BYTE); 01660 EXPP_ADDCONST(GL_SHORT); 01661 EXPP_ADDCONST(GL_UNSIGNED_SHORT); 01662 EXPP_ADDCONST(GL_INT); 01663 EXPP_ADDCONST(GL_UNSIGNED_INT); 01664 EXPP_ADDCONST(GL_FLOAT); 01665 EXPP_ADDCONST(GL_DOUBLE); 01666 EXPP_ADDCONST(GL_2_BYTES); 01667 EXPP_ADDCONST(GL_3_BYTES); 01668 EXPP_ADDCONST(GL_4_BYTES); 01669 01670 EXPP_ADDCONST(GL_CLEAR); 01671 EXPP_ADDCONST(GL_AND); 01672 EXPP_ADDCONST(GL_AND_REVERSE); 01673 EXPP_ADDCONST(GL_COPY); 01674 EXPP_ADDCONST(GL_AND_INVERTED); 01675 EXPP_ADDCONST(GL_NOOP); 01676 EXPP_ADDCONST(GL_XOR); 01677 EXPP_ADDCONST(GL_OR); 01678 EXPP_ADDCONST(GL_NOR); 01679 EXPP_ADDCONST(GL_EQUIV); 01680 EXPP_ADDCONST(GL_INVERT); 01681 EXPP_ADDCONST(GL_OR_REVERSE); 01682 EXPP_ADDCONST(GL_COPY_INVERTED); 01683 EXPP_ADDCONST(GL_OR_INVERTED); 01684 EXPP_ADDCONST(GL_NAND); 01685 EXPP_ADDCONST(GL_SET); 01686 01687 EXPP_ADDCONST(GL_EMISSION); 01688 EXPP_ADDCONST(GL_SHININESS); 01689 EXPP_ADDCONST(GL_AMBIENT_AND_DIFFUSE); 01690 EXPP_ADDCONST(GL_COLOR_INDEXES); 01691 01692 EXPP_ADDCONST(GL_MODELVIEW); 01693 EXPP_ADDCONST(GL_PROJECTION); 01694 EXPP_ADDCONST(GL_TEXTURE); 01695 01696 EXPP_ADDCONST(GL_COLOR); 01697 EXPP_ADDCONST(GL_DEPTH); 01698 EXPP_ADDCONST(GL_STENCIL); 01699 01700 EXPP_ADDCONST(GL_COLOR_INDEX); 01701 EXPP_ADDCONST(GL_STENCIL_INDEX); 01702 EXPP_ADDCONST(GL_DEPTH_COMPONENT); 01703 EXPP_ADDCONST(GL_RED); 01704 EXPP_ADDCONST(GL_GREEN); 01705 EXPP_ADDCONST(GL_BLUE); 01706 EXPP_ADDCONST(GL_ALPHA); 01707 EXPP_ADDCONST(GL_RGB); 01708 EXPP_ADDCONST(GL_RGBA); 01709 EXPP_ADDCONST(GL_LUMINANCE); 01710 EXPP_ADDCONST(GL_LUMINANCE_ALPHA); 01711 01712 EXPP_ADDCONST(GL_BITMAP); 01713 01714 EXPP_ADDCONST(GL_POINT); 01715 EXPP_ADDCONST(GL_LINE); 01716 EXPP_ADDCONST(GL_FILL); 01717 01718 EXPP_ADDCONST(GL_RENDER); 01719 EXPP_ADDCONST(GL_FEEDBACK); 01720 EXPP_ADDCONST(GL_SELECT); 01721 01722 EXPP_ADDCONST(GL_FLAT); 01723 EXPP_ADDCONST(GL_SMOOTH); 01724 01725 EXPP_ADDCONST(GL_KEEP); 01726 EXPP_ADDCONST(GL_REPLACE); 01727 EXPP_ADDCONST(GL_INCR); 01728 EXPP_ADDCONST(GL_DECR); 01729 01730 EXPP_ADDCONST(GL_VENDOR); 01731 EXPP_ADDCONST(GL_RENDERER); 01732 EXPP_ADDCONST(GL_VERSION); 01733 EXPP_ADDCONST(GL_EXTENSIONS); 01734 01735 EXPP_ADDCONST(GL_S); 01736 EXPP_ADDCONST(GL_T); 01737 EXPP_ADDCONST(GL_R); 01738 EXPP_ADDCONST(GL_Q); 01739 01740 EXPP_ADDCONST(GL_MODULATE); 01741 EXPP_ADDCONST(GL_DECAL); 01742 01743 EXPP_ADDCONST(GL_TEXTURE_ENV_MODE); 01744 EXPP_ADDCONST(GL_TEXTURE_ENV_COLOR); 01745 01746 EXPP_ADDCONST(GL_TEXTURE_ENV); 01747 01748 EXPP_ADDCONST(GL_EYE_LINEAR); 01749 EXPP_ADDCONST(GL_OBJECT_LINEAR); 01750 EXPP_ADDCONST(GL_SPHERE_MAP); 01751 01752 EXPP_ADDCONST(GL_TEXTURE_GEN_MODE); 01753 EXPP_ADDCONST(GL_OBJECT_PLANE); 01754 EXPP_ADDCONST(GL_EYE_PLANE); 01755 01756 EXPP_ADDCONST(GL_NEAREST); 01757 EXPP_ADDCONST(GL_LINEAR); 01758 01759 EXPP_ADDCONST(GL_NEAREST_MIPMAP_NEAREST); 01760 EXPP_ADDCONST(GL_LINEAR_MIPMAP_NEAREST); 01761 EXPP_ADDCONST(GL_NEAREST_MIPMAP_LINEAR); 01762 EXPP_ADDCONST(GL_LINEAR_MIPMAP_LINEAR); 01763 01764 EXPP_ADDCONST(GL_TEXTURE_MAG_FILTER); 01765 EXPP_ADDCONST(GL_TEXTURE_MIN_FILTER); 01766 EXPP_ADDCONST(GL_TEXTURE_WRAP_S); 01767 EXPP_ADDCONST(GL_TEXTURE_WRAP_T); 01768 01769 EXPP_ADDCONST(GL_CLAMP); 01770 EXPP_ADDCONST(GL_REPEAT); 01771 01772 EXPP_ADDCONST(GL_CLIP_PLANE0); 01773 EXPP_ADDCONST(GL_CLIP_PLANE1); 01774 EXPP_ADDCONST(GL_CLIP_PLANE2); 01775 EXPP_ADDCONST(GL_CLIP_PLANE3); 01776 EXPP_ADDCONST(GL_CLIP_PLANE4); 01777 EXPP_ADDCONST(GL_CLIP_PLANE5); 01778 01779 EXPP_ADDCONST(GL_LIGHT0); 01780 EXPP_ADDCONST(GL_LIGHT1); 01781 EXPP_ADDCONST(GL_LIGHT2); 01782 EXPP_ADDCONST(GL_LIGHT3); 01783 EXPP_ADDCONST(GL_LIGHT4); 01784 EXPP_ADDCONST(GL_LIGHT5); 01785 EXPP_ADDCONST(GL_LIGHT6); 01786 EXPP_ADDCONST(GL_LIGHT7); 01787 01788 EXPP_ADDCONST(GL_POLYGON_OFFSET_UNITS); 01789 EXPP_ADDCONST(GL_POLYGON_OFFSET_POINT); 01790 EXPP_ADDCONST(GL_POLYGON_OFFSET_LINE); 01791 EXPP_ADDCONST(GL_POLYGON_OFFSET_FILL); 01792 EXPP_ADDCONST(GL_POLYGON_OFFSET_FACTOR); 01793 01794 EXPP_ADDCONST(GL_TEXTURE_PRIORITY); 01795 EXPP_ADDCONST(GL_TEXTURE_RESIDENT); 01796 EXPP_ADDCONST(GL_TEXTURE_BINDING_1D); 01797 EXPP_ADDCONST(GL_TEXTURE_BINDING_2D); 01798 01799 return submodule; 01800 } 01801