summaryrefslogtreecommitdiffstats
path: root/Modules/glmodule.c
diff options
context:
space:
mode:
authorRoger E. Masse <rmasse@newcnri.cnri.reston.va.us>1996-12-24 19:39:23 (GMT)
committerRoger E. Masse <rmasse@newcnri.cnri.reston.va.us>1996-12-24 19:39:23 (GMT)
commitfbd1d74286b30d205831982f5f4aa3a8b00a9b79 (patch)
treea7826c42c97c71be72bd011666b35f5b4a774a29 /Modules/glmodule.c
parentcf284cc5dbe14242a5ec0ab3bc9157cef8be7b46 (diff)
downloadcpython-fbd1d74286b30d205831982f5f4aa3a8b00a9b79.zip
cpython-fbd1d74286b30d205831982f5f4aa3a8b00a9b79.tar.gz
cpython-fbd1d74286b30d205831982f5f4aa3a8b00a9b79.tar.bz2
Renamed.
However: "cgensupport.h" is still present... otherwise I get maaaany type errors... not sure if this needs more attention.
Diffstat (limited to 'Modules/glmodule.c')
-rw-r--r--Modules/glmodule.c8530
1 files changed, 8530 insertions, 0 deletions
diff --git a/Modules/glmodule.c b/Modules/glmodule.c
new file mode 100644
index 0000000..41956cc
--- /dev/null
+++ b/Modules/glmodule.c
@@ -0,0 +1,8530 @@
+/***********************************************************
+Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam,
+The Netherlands.
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the names of Stichting Mathematisch
+Centrum or CWI or Corporation for National Research Initiatives or
+CNRI not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior
+permission.
+
+While CWI is the initial source for this software, a modified version
+is made available by the Corporation for National Research Initiatives
+(CNRI) at the Internet address ftp://ftp.python.org.
+
+STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH
+REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH
+CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
+DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
+PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.
+
+******************************************************************/
+
+/*
+Input used to generate the Python module "glmodule.c".
+The stub generator is a Python script called "cgen.py".
+
+Each definition must be contained on one line:
+
+<returntype> <name> <type> <arg> <type> <arg>
+
+<returntype> can be: void, short, long (XXX maybe others?)
+
+<type> can be: char, string, short, float, long, or double
+ string indicates a null terminated string;
+ if <type> is char and <arg> begins with a *, the * is stripped
+ and <type> is changed into string
+
+<arg> has the form <mode> or <mode>[<subscript>]
+ where <mode> can be
+ s: arg is sent
+ r: arg is received (arg is a pointer)
+ and <subscript> can be (N and I are numbers):
+ N
+ argI
+ retval
+ N*argI
+ N*I
+ N*retval
+ In the case where the subscript consists of two parts
+ separated by *, the first part is the width of the matrix, and
+ the second part is the length of the matrix. This order is
+ opposite from the order used in C to declare a two-dimensional
+ matrix.
+*/
+
+/*
+ * An attempt has been made to make this module switch threads on qread
+ * calls. It is far from safe, though.
+ */
+
+#include <gl.h>
+#include <device.h>
+
+#ifdef __sgi
+extern int devport();
+extern int textwritemask();
+extern int pagewritemask();
+extern int gewrite();
+extern int gettp();
+#endif
+
+#include "Python.h"
+#include "cgensupport.h"
+
+
+/*
+Some stubs are too complicated for the stub generator.
+We can include manually written versions of them here.
+A line starting with '%' gives the name of the function so the stub
+generator can include it in the table of functions.
+*/
+
+
+static PyObject *
+gl_qread(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ short arg1 ;
+ Py_BEGIN_ALLOW_THREADS
+ retval = qread( & arg1 );
+ Py_END_ALLOW_THREADS
+ { PyObject *v = PyTuple_New( 2 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewlongobject(retval));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg1));
+ return v;
+ }
+}
+
+
+/*
+varray -- an array of v.. calls.
+The argument is an array (maybe list or tuple) of points.
+Each point must be a tuple or list of coordinates (x, y, z).
+The points may be 2- or 3-dimensional but must all have the
+same dimension. Float and int values may be mixed however.
+The points are always converted to 3D double precision points
+by assuming z=0.0 if necessary (as indicated in the man page),
+and for each point v3d() is called.
+*/
+
+
+static PyObject *
+gl_varray(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ PyObject *v, *w=NULL;
+ int i, n, width;
+ double vec[3];
+ PyObject * (*getitem) Py_FPROTO((PyObject *, int));
+
+ if (!PyArg_GetObject(args, 1, 0, &v))
+ return NULL;
+
+ if (PyList_Check(v)) {
+ n = PyList_Size(v);
+ getitem = PyList_GetItem;
+ }
+ else if (PyTuple_Check(v)) {
+ n = PyTuple_Size(v);
+ getitem = PyTuple_GetItem;
+ }
+ else {
+ PyErr_BadArgument();
+ return NULL;
+ }
+
+ if (n == 0) {
+ Py_INCREF(Py_None);
+ return Py_None;
+ }
+ if (n > 0)
+ w = (*getitem)(v, 0);
+
+ width = 0;
+ if (w == NULL) {
+ }
+ else if (PyList_Check(w)) {
+ width = PyList_Size(w);
+ }
+ else if (PyTuple_Check(w)) {
+ width = PyTuple_Size(w);
+ }
+
+ switch (width) {
+ case 2:
+ vec[2] = 0.0;
+ /* Fall through */
+ case 3:
+ break;
+ default:
+ PyErr_BadArgument();
+ return NULL;
+ }
+
+ for (i = 0; i < n; i++) {
+ w = (*getitem)(v, i);
+ if (!PyArg_GetDoubleArray(w, 1, 0, width, vec))
+ return NULL;
+ v3d(vec);
+ }
+
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/*
+vnarray, nvarray -- an array of n3f and v3f calls.
+The argument is an array (list or tuple) of pairs of points and normals.
+Each pair is a tuple (NOT a list) of a point and a normal for that point.
+Each point or normal must be a tuple (NOT a list) of coordinates (x, y, z).
+Three coordinates must be given. Float and int values may be mixed.
+For each pair, n3f() is called for the normal, and then v3f() is called
+for the vector.
+
+vnarray and nvarray differ only in the order of the vector and normal in
+the pair: vnarray expects (v, n) while nvarray expects (n, v).
+*/
+
+static PyObject *gen_nvarray(); /* Forward */
+
+
+static PyObject *
+gl_nvarray(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ return gen_nvarray(args, 0);
+}
+
+
+static PyObject *
+gl_vnarray(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ return gen_nvarray(args, 1);
+}
+
+/* Generic, internal version of {nv,nv}array: inorm indicates the
+ argument order, 0: normal first, 1: vector first. */
+
+static PyObject *
+gen_nvarray(args, inorm)
+ PyObject *args;
+ int inorm;
+{
+ PyObject *v, *w, *wnorm, *wvec;
+ int i, n;
+ float norm[3], vec[3];
+ PyObject * (*getitem) Py_FPROTO((PyObject *, int));
+
+ if (!PyArg_GetObject(args, 1, 0, &v))
+ return NULL;
+
+ if (PyList_Check(v)) {
+ n = PyList_Size(v);
+ getitem = PyList_GetItem;
+ }
+ else if (PyTuple_Check(v)) {
+ n = PyTuple_Size(v);
+ getitem = PyTuple_GetItem;
+ }
+ else {
+ PyErr_BadArgument();
+ return NULL;
+ }
+
+ for (i = 0; i < n; i++) {
+ w = (*getitem)(v, i);
+ if (!PyTuple_Check(w) || PyTuple_Size(w) != 2) {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ wnorm = PyTuple_GetItem(w, inorm);
+ wvec = PyTuple_GetItem(w, 1 - inorm);
+ if (!PyArg_GetFloatArray(wnorm, 1, 0, 3, norm) ||
+ !PyArg_GetFloatArray(wvec, 1, 0, 3, vec))
+ return NULL;
+ n3f(norm);
+ v3f(vec);
+ }
+
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* nurbssurface(s_knots[], t_knots[], ctl[][], s_order, t_order, type).
+ The dimensions of ctl[] are computed as follows:
+ [len(s_knots) - s_order], [len(t_knots) - t_order]
+*/
+
+
+static PyObject *
+gl_nurbssurface(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ double * arg2 ;
+ long arg3 ;
+ double * arg4 ;
+ double *arg5 ;
+ long arg6 ;
+ long arg7 ;
+ long arg8 ;
+ long ncoords;
+ long s_byte_stride, t_byte_stride;
+ long s_nctl, t_nctl;
+ long s, t;
+ PyObject *v, *w, *pt;
+ double *pnext;
+ if (!PyArg_GetLongArraySize(args, 6, 0, &arg1))
+ return NULL;
+ if ((arg2 = PyMem_NEW(double, arg1 )) == NULL) {
+ return PyErr_NoMemory();
+ }
+ if (!PyArg_GetDoubleArray(args, 6, 0, arg1 , arg2))
+ return NULL;
+ if (!PyArg_GetLongArraySize(args, 6, 1, &arg3))
+ return NULL;
+ if ((arg4 = PyMem_NEW(double, arg3 )) == NULL) {
+ return PyErr_NoMemory();
+ }
+ if (!PyArg_GetDoubleArray(args, 6, 1, arg3 , arg4))
+ return NULL;
+ if (!PyArg_GetLong(args, 6, 3, &arg6))
+ return NULL;
+ if (!PyArg_GetLong(args, 6, 4, &arg7))
+ return NULL;
+ if (!PyArg_GetLong(args, 6, 5, &arg8))
+ return NULL;
+ if (arg8 == N_XYZ)
+ ncoords = 3;
+ else if (arg8 == N_XYZW)
+ ncoords = 4;
+ else {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ s_nctl = arg1 - arg6;
+ t_nctl = arg3 - arg7;
+ if (!PyArg_GetObject(args, 6, 2, &v))
+ return NULL;
+ if (!PyList_Check(v) || PyList_Size(v) != s_nctl) {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ if ((arg5 = PyMem_NEW(double, s_nctl*t_nctl*ncoords )) == NULL) {
+ return PyErr_NoMemory();
+ }
+ pnext = arg5;
+ for (s = 0; s < s_nctl; s++) {
+ w = PyList_GetItem(v, s);
+ if (w == NULL || !PyList_Check(w) ||
+ PyList_Size(w) != t_nctl) {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ for (t = 0; t < t_nctl; t++) {
+ pt = PyList_GetItem(w, t);
+ if (!PyArg_GetDoubleArray(pt, 1, 0, ncoords, pnext))
+ return NULL;
+ pnext += ncoords;
+ }
+ }
+ s_byte_stride = sizeof(double) * ncoords;
+ t_byte_stride = s_byte_stride * s_nctl;
+ nurbssurface( arg1 , arg2 , arg3 , arg4 ,
+ s_byte_stride , t_byte_stride , arg5 , arg6 , arg7 , arg8 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg4);
+ PyMem_DEL(arg5);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* nurbscurve(knots, ctlpoints, order, type).
+ The length of ctlpoints is len(knots)-order. */
+
+
+static PyObject *
+gl_nurbscurve(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ double * arg2 ;
+ long arg3 ;
+ double * arg4 ;
+ long arg5 ;
+ long arg6 ;
+ int ncoords, npoints;
+ int i;
+ PyObject *v;
+ double *pnext;
+ if (!PyArg_GetLongArraySize(args, 4, 0, &arg1))
+ return NULL;
+ if ((arg2 = PyMem_NEW(double, arg1 )) == NULL) {
+ return PyErr_NoMemory();
+ }
+ if (!PyArg_GetDoubleArray(args, 4, 0, arg1 , arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg5))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg6))
+ return NULL;
+ if (arg6 == N_ST)
+ ncoords = 2;
+ else if (arg6 == N_STW)
+ ncoords = 3;
+ else {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ npoints = arg1 - arg5;
+ if (!PyArg_GetObject(args, 4, 1, &v))
+ return NULL;
+ if (!PyList_Check(v) || PyList_Size(v) != npoints) {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ if ((arg4 = PyMem_NEW(double, npoints*ncoords )) == NULL) {
+ return PyErr_NoMemory();
+ }
+ pnext = arg4;
+ for (i = 0; i < npoints; i++) {
+ if (!PyArg_GetDoubleArray(PyList_GetItem(v, i),
+ 1, 0, ncoords, pnext))
+ return NULL;
+ pnext += ncoords;
+ }
+ arg3 = (sizeof(double)) * ncoords;
+ nurbscurve( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg4);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* pwlcurve(points, type).
+ Points is a list of points. Type must be N_ST. */
+
+
+static PyObject *
+gl_pwlcurve(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ PyObject *v;
+ long type;
+ double *data, *pnext;
+ long npoints, ncoords;
+ int i;
+ if (!PyArg_GetObject(args, 2, 0, &v))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &type))
+ return NULL;
+ if (!PyList_Check(v)) {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ npoints = PyList_Size(v);
+ if (type == N_ST)
+ ncoords = 2;
+ else {
+ PyErr_BadArgument();
+ return NULL;
+ }
+ if ((data = PyMem_NEW(double, npoints*ncoords)) == NULL) {
+ return PyErr_NoMemory();
+ }
+ pnext = data;
+ for (i = 0; i < npoints; i++) {
+ if (!PyArg_GetDoubleArray(PyList_GetItem(v, i),
+ 1, 0, ncoords, pnext))
+ return NULL;
+ pnext += ncoords;
+ }
+ pwlcurve(npoints, data, sizeof(double)*ncoords, type);
+ PyMem_DEL(data);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+
+/* Picking and Selecting */
+
+static short *pickbuffer = NULL;
+static long pickbuffersize;
+
+static PyObject *
+pick_select(args, func)
+ PyObject *args;
+ void (*func)();
+{
+ if (!PyArg_GetLong(args, 1, 0, &pickbuffersize))
+ return NULL;
+ if (pickbuffer != NULL) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "pick/gselect: already picking/selecting");
+ return NULL;
+ }
+ if ((pickbuffer = PyMem_NEW(short, pickbuffersize)) == NULL) {
+ return PyErr_NoMemory();
+ }
+ (*func)(pickbuffer, pickbuffersize);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+static PyObject *
+endpick_select(args, func)
+ PyObject *args;
+ long (*func)();
+{
+ PyObject *v, *w;
+ int i, nhits, n;
+ if (!PyArg_NoArgs(args))
+ return NULL;
+ if (pickbuffer == NULL) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "endpick/endselect: not in pick/select mode");
+ return NULL;
+ }
+ nhits = (*func)(pickbuffer);
+ if (nhits < 0) {
+ nhits = -nhits; /* How to report buffer overflow otherwise? */
+ }
+ /* Scan the buffer to see how many integers */
+ n = 0;
+ for (; nhits > 0; nhits--) {
+ n += 1 + pickbuffer[n];
+ }
+ v = PyList_New(n);
+ if (v == NULL)
+ return NULL;
+ /* XXX Could do it nicer and interpret the data structure here,
+ returning a list of lists. But this can be done in Python... */
+ for (i = 0; i < n; i++) {
+ w = PyInt_FromLong((long)pickbuffer[i]);
+ if (w == NULL) {
+ Py_DECREF(v);
+ return NULL;
+ }
+ PyList_SetItem(v, i, w);
+ }
+ PyMem_DEL(pickbuffer);
+ pickbuffer = NULL;
+ return v;
+}
+
+extern void pick(), gselect();
+extern long endpick(), endselect();
+
+static PyObject *gl_pick(self, args) PyObject *self, *args; {
+ return pick_select(args, pick);
+}
+
+static PyObject *gl_endpick(self, args) PyObject *self, *args; {
+ return endpick_select(args, endpick);
+}
+
+static PyObject *gl_gselect(self, args) PyObject *self, *args; {
+ return pick_select(args, gselect);
+}
+
+static PyObject *gl_endselect(self, args) PyObject *self, *args; {
+ return endpick_select(args, endselect);
+}
+
+
+/* XXX The generator botches this one. Here's a quick hack to fix it. */
+
+/* XXX The generator botches this one. Here's a quick hack to fix it. */
+
+
+static PyObject *
+gl_getmatrix(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ Matrix arg1;
+ PyObject *v, *w;
+ int i, j;
+ getmatrix( arg1 );
+ v = PyList_New(16);
+ if (v == NULL) {
+ return PyErr_NoMemory();
+ }
+ for (i = 0; i < 4; i++) for (j = 0; j < 4; j++) {
+ w = mknewfloatobject(arg1[i][j]);
+ if (w == NULL) {
+ Py_DECREF(v);
+ return NULL;
+ }
+ PyList_SetItem(v, i*4+j, w);
+ }
+ return v;
+}
+
+/* Here's an alternate version that returns a 4x4 matrix instead of
+ a vector. Unfortunately it is incompatible with loadmatrix and
+ multmatrix... */
+
+
+static PyObject *
+gl_altgetmatrix(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ Matrix arg1;
+ PyObject *v, *w;
+ int i, j;
+ getmatrix( arg1 );
+ v = PyList_New(4);
+ if (v == NULL) {
+ return NULL;
+ }
+ for (i = 0; i < 4; i++) {
+ w = PyList_New(4);
+ if (w == NULL) {
+ Py_DECREF(v);
+ return NULL;
+ }
+ PyList_SetItem(v, i, w);
+ }
+ for (i = 0; i < 4; i++) {
+ for (j = 0; j < 4; j++) {
+ w = mknewfloatobject(arg1[i][j]);
+ if (w == NULL) {
+ Py_DECREF(v);
+ return NULL;
+ }
+ PyList_SetItem(PyList_GetItem(v, i), j, w);
+ }
+ }
+ return v;
+}
+
+
+static PyObject *
+gl_lrectwrite(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short x1 ;
+ short y1 ;
+ short x2 ;
+ short y2 ;
+ string parray ;
+ PyObject *s;
+#if 0
+ int pixcount;
+#endif
+ if (!PyArg_GetShort(args, 5, 0, &x1))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 1, &y1))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 2, &x2))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &y2))
+ return NULL;
+ if (!PyArg_GetString(args, 5, 4, &parray))
+ return NULL;
+ if (!PyArg_GetObject(args, 5, 4, &s))
+ return NULL;
+#if 0
+/* Don't check this, it breaks experiments with pixmode(PM_SIZE, ...) */
+ pixcount = (long)(x2+1-x1) * (long)(y2+1-y1);
+ if (!PyString_Check(s) || PyString_Size(s) != pixcount*sizeof(long)) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "string arg to lrectwrite has wrong size");
+ return NULL;
+ }
+#endif
+ lrectwrite( x1 , y1 , x2 , y2 , (unsigned long *) parray );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+
+static PyObject *
+gl_lrectread(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short x1 ;
+ short y1 ;
+ short x2 ;
+ short y2 ;
+ PyObject *parray;
+ int pixcount;
+ if (!PyArg_GetShort(args, 4, 0, &x1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &y1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &x2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &y2))
+ return NULL;
+ pixcount = (long)(x2+1-x1) * (long)(y2+1-y1);
+ parray = PyString_FromStringAndSize((char *)NULL,
+ pixcount*sizeof(long));
+ if (parray == NULL)
+ return NULL; /* No memory */
+ lrectread(x1, y1, x2, y2, (unsigned long *) PyString_AsString(parray));
+ return parray;
+}
+
+
+static PyObject *
+gl_readdisplay(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short x1, y1, x2, y2;
+ unsigned long *parray, hints;
+ long size, size_ret;
+ PyObject *rv;
+
+ if ( !PyArg_Parse(args, "hhhhl", &x1, &y1, &x2, &y2, &hints) )
+ return 0;
+ size = (long)(x2+1-x1) * (long)(y2+1-y1);
+ rv = PyString_FromStringAndSize((char *)NULL, size*sizeof(long));
+ if ( rv == NULL )
+ return NULL;
+ parray = (unsigned long *)PyString_AsString(rv);
+ size_ret = readdisplay(x1, y1, x2, y2, parray, hints);
+ if ( size_ret != size ) {
+ printf("gl_readdisplay: got %ld pixels, expected %ld\n",
+ size_ret, size);
+ PyErr_SetString(PyExc_RuntimeError,
+ "readdisplay returned unexpected length");
+ return NULL;
+ }
+ return rv;
+}
+
+/* Desperately needed, here are tools to compress and decompress
+ the data manipulated by lrectread/lrectwrite.
+
+ gl.packrect(width, height, packfactor, bigdata) --> smalldata
+ makes 'bigdata' 4*(packfactor**2) times smaller by:
+ - turning it into B/W (a factor 4)
+ - replacing squares of size pacfactor by one
+ representative
+
+ gl.unpackrect(width, height, packfactor, smalldata) --> bigdata
+ is the inverse; the numeric arguments must be *the same*.
+
+ Both work best if width and height are multiples of packfactor
+ (in fact unpackrect will leave garbage bytes).
+*/
+
+
+static PyObject *
+gl_packrect(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long width, height, packfactor;
+ char *s;
+ PyObject *unpacked, *packed;
+ int pixcount, packedcount, x, y, r, g, b;
+ unsigned long pixel;
+ unsigned char *p;
+ unsigned long *parray;
+ if (!PyArg_GetLong(args, 4, 0, &width))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &height))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &packfactor))
+ return NULL;
+ if (!PyArg_GetString(args, 4, 3, &s)) /* For type checking only */
+ return NULL;
+ if (!PyArg_GetObject(args, 4, 3, &unpacked))
+ return NULL;
+ if (width <= 0 || height <= 0 || packfactor <= 0) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "packrect args must be > 0");
+ return NULL;
+ }
+ pixcount = width*height;
+ packedcount = ((width+packfactor-1)/packfactor) *
+ ((height+packfactor-1)/packfactor);
+ if (PyString_Size(unpacked) != pixcount*sizeof(long)) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "string arg to packrect has wrong size");
+ return NULL;
+ }
+ packed = PyString_FromStringAndSize((char *)NULL, packedcount);
+ if (packed == NULL)
+ return NULL;
+ parray = (unsigned long *) PyString_AsString(unpacked);
+ p = (unsigned char *) PyString_AsString(packed);
+ for (y = 0; y < height; y += packfactor, parray += packfactor*width) {
+ for (x = 0; x < width; x += packfactor) {
+ pixel = parray[x];
+ r = pixel & 0xff;
+ g = (pixel >> 8) & 0xff;
+ b = (pixel >> 16) & 0xff;
+ *p++ = (30*r+59*g+11*b) / 100;
+ }
+ }
+ return packed;
+}
+
+
+static unsigned long unpacktab[256];
+static int unpacktab_inited = 0;
+
+static PyObject *
+gl_unpackrect(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long width, height, packfactor;
+ char *s;
+ PyObject *unpacked, *packed;
+ int pixcount, packedcount;
+ register unsigned char *p;
+ register unsigned long *parray;
+ if (!unpacktab_inited) {
+ register int white;
+ for (white = 256; --white >= 0; )
+ unpacktab[white] = white * 0x010101L;
+ unpacktab_inited++;
+ }
+ if (!PyArg_GetLong(args, 4, 0, &width))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &height))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &packfactor))
+ return NULL;
+ if (!PyArg_GetString(args, 4, 3, &s)) /* For type checking only */
+ return NULL;
+ if (!PyArg_GetObject(args, 4, 3, &packed))
+ return NULL;
+ if (width <= 0 || height <= 0 || packfactor <= 0) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "packrect args must be > 0");
+ return NULL;
+ }
+ pixcount = width*height;
+ packedcount = ((width+packfactor-1)/packfactor) *
+ ((height+packfactor-1)/packfactor);
+ if (PyString_Size(packed) != packedcount) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "string arg to unpackrect has wrong size");
+ return NULL;
+ }
+ unpacked = PyString_FromStringAndSize((char *)NULL,
+ pixcount*sizeof(long));
+ if (unpacked == NULL)
+ return NULL;
+ parray = (unsigned long *) PyString_AsString(unpacked);
+ p = (unsigned char *) PyString_AsString(packed);
+ if (packfactor == 1 && width*height > 0) {
+ /* Just expand bytes to longs */
+ register int x = width * height;
+ do {
+ *parray++ = unpacktab[*p++];
+ } while (--x >= 0);
+ }
+ else {
+ register int y;
+ for (y = 0; y < height-packfactor+1;
+ y += packfactor, parray += packfactor*width) {
+ register int x;
+ for (x = 0; x < width-packfactor+1; x += packfactor) {
+ register unsigned long pixel = unpacktab[*p++];
+ register int i;
+ for (i = packfactor*width; (i-=width) >= 0;) {
+ register int j;
+ for (j = packfactor; --j >= 0; )
+ parray[i+x+j] = pixel;
+ }
+ }
+ }
+ }
+ return unpacked;
+}
+
+static PyObject *
+gl_gversion(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ char buf[20];
+ gversion(buf);
+ return PyString_FromString(buf);
+}
+
+
+/* End of manually written stubs */
+
+
+/* long getshade */
+
+static PyObject *
+gl_getshade(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getshade( );
+ return mknewlongobject(retval);
+}
+
+/* void devport short s long s */
+
+static PyObject *
+gl_devport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ long arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ devport( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rdr2i long s long s */
+
+static PyObject *
+gl_rdr2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ rdr2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rectfs short s short s short s short s */
+
+static PyObject *
+gl_rectfs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ rectfs( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rects short s short s short s short s */
+
+static PyObject *
+gl_rects(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ rects( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rmv2i long s long s */
+
+static PyObject *
+gl_rmv2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ rmv2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void noport */
+
+static PyObject *
+gl_noport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ noport( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void popviewport */
+
+static PyObject *
+gl_popviewport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ popviewport( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void clear */
+
+static PyObject *
+gl_clear(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ clear( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void clearhitcode */
+
+static PyObject *
+gl_clearhitcode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ clearhitcode( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void closeobj */
+
+static PyObject *
+gl_closeobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ closeobj( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cursoff */
+
+static PyObject *
+gl_cursoff(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ cursoff( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void curson */
+
+static PyObject *
+gl_curson(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ curson( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void doublebuffer */
+
+static PyObject *
+gl_doublebuffer(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ doublebuffer( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void finish */
+
+static PyObject *
+gl_finish(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ finish( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void gconfig */
+
+static PyObject *
+gl_gconfig(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ gconfig( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void ginit */
+
+static PyObject *
+gl_ginit(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ ginit( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void greset */
+
+static PyObject *
+gl_greset(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ greset( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void multimap */
+
+static PyObject *
+gl_multimap(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ multimap( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void onemap */
+
+static PyObject *
+gl_onemap(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ onemap( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void popattributes */
+
+static PyObject *
+gl_popattributes(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ popattributes( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void popmatrix */
+
+static PyObject *
+gl_popmatrix(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ popmatrix( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pushattributes */
+
+static PyObject *
+gl_pushattributes(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ pushattributes( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pushmatrix */
+
+static PyObject *
+gl_pushmatrix(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ pushmatrix( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pushviewport */
+
+static PyObject *
+gl_pushviewport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ pushviewport( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void qreset */
+
+static PyObject *
+gl_qreset(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ qreset( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void RGBmode */
+
+static PyObject *
+gl_RGBmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ RGBmode( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void singlebuffer */
+
+static PyObject *
+gl_singlebuffer(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ singlebuffer( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void swapbuffers */
+
+static PyObject *
+gl_swapbuffers(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ swapbuffers( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void gsync */
+
+static PyObject *
+gl_gsync(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ gsync( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void gflush */
+
+static PyObject *
+gl_gflush(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ gflush( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void tpon */
+
+static PyObject *
+gl_tpon(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ tpon( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void tpoff */
+
+static PyObject *
+gl_tpoff(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ tpoff( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void clkon */
+
+static PyObject *
+gl_clkon(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ clkon( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void clkoff */
+
+static PyObject *
+gl_clkoff(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ clkoff( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void ringbell */
+
+static PyObject *
+gl_ringbell(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ ringbell( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void gbegin */
+
+static PyObject *
+gl_gbegin(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ gbegin( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void textinit */
+
+static PyObject *
+gl_textinit(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ textinit( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void initnames */
+
+static PyObject *
+gl_initnames(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ initnames( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pclos */
+
+static PyObject *
+gl_pclos(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ pclos( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void popname */
+
+static PyObject *
+gl_popname(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ popname( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void spclos */
+
+static PyObject *
+gl_spclos(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ spclos( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void zclear */
+
+static PyObject *
+gl_zclear(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ zclear( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void screenspace */
+
+static PyObject *
+gl_screenspace(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ screenspace( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void reshapeviewport */
+
+static PyObject *
+gl_reshapeviewport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ reshapeviewport( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void winpush */
+
+static PyObject *
+gl_winpush(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ winpush( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void winpop */
+
+static PyObject *
+gl_winpop(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ winpop( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void foreground */
+
+static PyObject *
+gl_foreground(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ foreground( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endfullscrn */
+
+static PyObject *
+gl_endfullscrn(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endfullscrn( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endpupmode */
+
+static PyObject *
+gl_endpupmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endpupmode( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void fullscrn */
+
+static PyObject *
+gl_fullscrn(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ fullscrn( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pupmode */
+
+static PyObject *
+gl_pupmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ pupmode( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void winconstraints */
+
+static PyObject *
+gl_winconstraints(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ winconstraints( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pagecolor short s */
+
+static PyObject *
+gl_pagecolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ pagecolor( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void textcolor short s */
+
+static PyObject *
+gl_textcolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ textcolor( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void color short s */
+
+static PyObject *
+gl_color(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ color( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void curveit short s */
+
+static PyObject *
+gl_curveit(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ curveit( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void font short s */
+
+static PyObject *
+gl_font(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ font( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void linewidth short s */
+
+static PyObject *
+gl_linewidth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ linewidth( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setlinestyle short s */
+
+static PyObject *
+gl_setlinestyle(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ setlinestyle( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setmap short s */
+
+static PyObject *
+gl_setmap(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ setmap( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void swapinterval short s */
+
+static PyObject *
+gl_swapinterval(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ swapinterval( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void writemask short s */
+
+static PyObject *
+gl_writemask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ writemask( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void textwritemask short s */
+
+static PyObject *
+gl_textwritemask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ textwritemask( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void qdevice short s */
+
+static PyObject *
+gl_qdevice(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ qdevice( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void unqdevice short s */
+
+static PyObject *
+gl_unqdevice(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ unqdevice( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void curvebasis short s */
+
+static PyObject *
+gl_curvebasis(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ curvebasis( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void curveprecision short s */
+
+static PyObject *
+gl_curveprecision(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ curveprecision( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void loadname short s */
+
+static PyObject *
+gl_loadname(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ loadname( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void passthrough short s */
+
+static PyObject *
+gl_passthrough(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ passthrough( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pushname short s */
+
+static PyObject *
+gl_pushname(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ pushname( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setmonitor short s */
+
+static PyObject *
+gl_setmonitor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ setmonitor( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setshade short s */
+
+static PyObject *
+gl_setshade(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ setshade( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setpattern short s */
+
+static PyObject *
+gl_setpattern(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ setpattern( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pagewritemask short s */
+
+static PyObject *
+gl_pagewritemask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ pagewritemask( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void callobj long s */
+
+static PyObject *
+gl_callobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ callobj( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void delobj long s */
+
+static PyObject *
+gl_delobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ delobj( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void editobj long s */
+
+static PyObject *
+gl_editobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ editobj( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void makeobj long s */
+
+static PyObject *
+gl_makeobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ makeobj( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void maketag long s */
+
+static PyObject *
+gl_maketag(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ maketag( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void chunksize long s */
+
+static PyObject *
+gl_chunksize(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ chunksize( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void compactify long s */
+
+static PyObject *
+gl_compactify(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ compactify( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void deltag long s */
+
+static PyObject *
+gl_deltag(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ deltag( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lsrepeat long s */
+
+static PyObject *
+gl_lsrepeat(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ lsrepeat( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void objinsert long s */
+
+static PyObject *
+gl_objinsert(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ objinsert( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void objreplace long s */
+
+static PyObject *
+gl_objreplace(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ objreplace( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void winclose long s */
+
+static PyObject *
+gl_winclose(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ winclose( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void blanktime long s */
+
+static PyObject *
+gl_blanktime(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ blanktime( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void freepup long s */
+
+static PyObject *
+gl_freepup(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ freepup( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void backbuffer long s */
+
+static PyObject *
+gl_backbuffer(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ backbuffer( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void frontbuffer long s */
+
+static PyObject *
+gl_frontbuffer(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ frontbuffer( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lsbackup long s */
+
+static PyObject *
+gl_lsbackup(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ lsbackup( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void resetls long s */
+
+static PyObject *
+gl_resetls(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ resetls( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lampon long s */
+
+static PyObject *
+gl_lampon(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ lampon( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lampoff long s */
+
+static PyObject *
+gl_lampoff(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ lampoff( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setbell long s */
+
+static PyObject *
+gl_setbell(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ setbell( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void blankscreen long s */
+
+static PyObject *
+gl_blankscreen(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ blankscreen( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void depthcue long s */
+
+static PyObject *
+gl_depthcue(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ depthcue( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void zbuffer long s */
+
+static PyObject *
+gl_zbuffer(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ zbuffer( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void backface long s */
+
+static PyObject *
+gl_backface(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ backface( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cmov2i long s long s */
+
+static PyObject *
+gl_cmov2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ cmov2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void draw2i long s long s */
+
+static PyObject *
+gl_draw2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ draw2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void move2i long s long s */
+
+static PyObject *
+gl_move2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ move2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pnt2i long s long s */
+
+static PyObject *
+gl_pnt2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ pnt2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void patchbasis long s long s */
+
+static PyObject *
+gl_patchbasis(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ patchbasis( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void patchprecision long s long s */
+
+static PyObject *
+gl_patchprecision(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ patchprecision( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pdr2i long s long s */
+
+static PyObject *
+gl_pdr2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ pdr2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pmv2i long s long s */
+
+static PyObject *
+gl_pmv2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ pmv2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpdr2i long s long s */
+
+static PyObject *
+gl_rpdr2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ rpdr2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpmv2i long s long s */
+
+static PyObject *
+gl_rpmv2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ rpmv2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpt2i long s long s */
+
+static PyObject *
+gl_xfpt2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ xfpt2i( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void objdelete long s long s */
+
+static PyObject *
+gl_objdelete(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ objdelete( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void patchcurves long s long s */
+
+static PyObject *
+gl_patchcurves(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ patchcurves( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void minsize long s long s */
+
+static PyObject *
+gl_minsize(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ minsize( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void maxsize long s long s */
+
+static PyObject *
+gl_maxsize(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ maxsize( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void keepaspect long s long s */
+
+static PyObject *
+gl_keepaspect(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ keepaspect( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void prefsize long s long s */
+
+static PyObject *
+gl_prefsize(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ prefsize( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void stepunit long s long s */
+
+static PyObject *
+gl_stepunit(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ stepunit( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void fudge long s long s */
+
+static PyObject *
+gl_fudge(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ fudge( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void winmove long s long s */
+
+static PyObject *
+gl_winmove(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ winmove( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void attachcursor short s short s */
+
+static PyObject *
+gl_attachcursor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ attachcursor( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void deflinestyle short s short s */
+
+static PyObject *
+gl_deflinestyle(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ deflinestyle( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void noise short s short s */
+
+static PyObject *
+gl_noise(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ noise( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void picksize short s short s */
+
+static PyObject *
+gl_picksize(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ picksize( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void qenter short s short s */
+
+static PyObject *
+gl_qenter(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ qenter( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setdepth short s short s */
+
+static PyObject *
+gl_setdepth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ setdepth( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cmov2s short s short s */
+
+static PyObject *
+gl_cmov2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ cmov2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void draw2s short s short s */
+
+static PyObject *
+gl_draw2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ draw2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void move2s short s short s */
+
+static PyObject *
+gl_move2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ move2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pdr2s short s short s */
+
+static PyObject *
+gl_pdr2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ pdr2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pmv2s short s short s */
+
+static PyObject *
+gl_pmv2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ pmv2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pnt2s short s short s */
+
+static PyObject *
+gl_pnt2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ pnt2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rdr2s short s short s */
+
+static PyObject *
+gl_rdr2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ rdr2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rmv2s short s short s */
+
+static PyObject *
+gl_rmv2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ rmv2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpdr2s short s short s */
+
+static PyObject *
+gl_rpdr2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ rpdr2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpmv2s short s short s */
+
+static PyObject *
+gl_rpmv2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ rpmv2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpt2s short s short s */
+
+static PyObject *
+gl_xfpt2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ xfpt2s( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cmov2 float s float s */
+
+static PyObject *
+gl_cmov2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ cmov2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void draw2 float s float s */
+
+static PyObject *
+gl_draw2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ draw2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void move2 float s float s */
+
+static PyObject *
+gl_move2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ move2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pnt2 float s float s */
+
+static PyObject *
+gl_pnt2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ pnt2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pdr2 float s float s */
+
+static PyObject *
+gl_pdr2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ pdr2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pmv2 float s float s */
+
+static PyObject *
+gl_pmv2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ pmv2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rdr2 float s float s */
+
+static PyObject *
+gl_rdr2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ rdr2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rmv2 float s float s */
+
+static PyObject *
+gl_rmv2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ rmv2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpdr2 float s float s */
+
+static PyObject *
+gl_rpdr2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ rpdr2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpmv2 float s float s */
+
+static PyObject *
+gl_rpmv2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ rpmv2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpt2 float s float s */
+
+static PyObject *
+gl_xfpt2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ xfpt2( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void loadmatrix float s[4*4] */
+
+static PyObject *
+gl_loadmatrix(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] [ 4 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 4 * 4 , (float *) arg1))
+ return NULL;
+ loadmatrix( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void multmatrix float s[4*4] */
+
+static PyObject *
+gl_multmatrix(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] [ 4 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 4 * 4 , (float *) arg1))
+ return NULL;
+ multmatrix( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void crv float s[3*4] */
+
+static PyObject *
+gl_crv(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] [ 3 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 * 4 , (float *) arg1))
+ return NULL;
+ crv( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rcrv float s[4*4] */
+
+static PyObject *
+gl_rcrv(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] [ 4 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 4 * 4 , (float *) arg1))
+ return NULL;
+ rcrv( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void addtopup long s char *s long s */
+
+static PyObject *
+gl_addtopup(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ string arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetString(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ addtopup( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void charstr char *s */
+
+static PyObject *
+gl_charstr(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ string arg1 ;
+ if (!PyArg_GetString(args, 1, 0, &arg1))
+ return NULL;
+ charstr( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void getport char *s */
+
+static PyObject *
+gl_getport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ string arg1 ;
+ if (!PyArg_GetString(args, 1, 0, &arg1))
+ return NULL;
+ getport( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long strwidth char *s */
+
+static PyObject *
+gl_strwidth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ string arg1 ;
+ if (!PyArg_GetString(args, 1, 0, &arg1))
+ return NULL;
+ retval = strwidth( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* long winopen char *s */
+
+static PyObject *
+gl_winopen(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ string arg1 ;
+ if (!PyArg_GetString(args, 1, 0, &arg1))
+ return NULL;
+ retval = winopen( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* void wintitle char *s */
+
+static PyObject *
+gl_wintitle(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ string arg1 ;
+ if (!PyArg_GetString(args, 1, 0, &arg1))
+ return NULL;
+ wintitle( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polf long s float s[3*arg1] */
+
+static PyObject *
+gl_polf(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 3 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (float(*)[3]) PyMem_NEW(float , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 * arg1 , (float *) arg2))
+ return NULL;
+ polf( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polf2 long s float s[2*arg1] */
+
+static PyObject *
+gl_polf2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 2 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (float(*)[2]) PyMem_NEW(float , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 1, 0, 2 * arg1 , (float *) arg2))
+ return NULL;
+ polf2( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void poly long s float s[3*arg1] */
+
+static PyObject *
+gl_poly(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 3 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (float(*)[3]) PyMem_NEW(float , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 * arg1 , (float *) arg2))
+ return NULL;
+ poly( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void poly2 long s float s[2*arg1] */
+
+static PyObject *
+gl_poly2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 2 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (float(*)[2]) PyMem_NEW(float , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 1, 0, 2 * arg1 , (float *) arg2))
+ return NULL;
+ poly2( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void crvn long s float s[3*arg1] */
+
+static PyObject *
+gl_crvn(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 3 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (float(*)[3]) PyMem_NEW(float , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 * arg1 , (float *) arg2))
+ return NULL;
+ crvn( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rcrvn long s float s[4*arg1] */
+
+static PyObject *
+gl_rcrvn(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 4 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 4;
+ if ((arg2 = (float(*)[4]) PyMem_NEW(float , 4 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 1, 0, 4 * arg1 , (float *) arg2))
+ return NULL;
+ rcrvn( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polf2i long s long s[2*arg1] */
+
+static PyObject *
+gl_polf2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long (* arg2) [ 2 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (long(*)[2]) PyMem_NEW(long , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetLongArray(args, 1, 0, 2 * arg1 , (long *) arg2))
+ return NULL;
+ polf2i( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polfi long s long s[3*arg1] */
+
+static PyObject *
+gl_polfi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long (* arg2) [ 3 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (long(*)[3]) PyMem_NEW(long , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetLongArray(args, 1, 0, 3 * arg1 , (long *) arg2))
+ return NULL;
+ polfi( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void poly2i long s long s[2*arg1] */
+
+static PyObject *
+gl_poly2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long (* arg2) [ 2 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (long(*)[2]) PyMem_NEW(long , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetLongArray(args, 1, 0, 2 * arg1 , (long *) arg2))
+ return NULL;
+ poly2i( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polyi long s long s[3*arg1] */
+
+static PyObject *
+gl_polyi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long (* arg2) [ 3 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (long(*)[3]) PyMem_NEW(long , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetLongArray(args, 1, 0, 3 * arg1 , (long *) arg2))
+ return NULL;
+ polyi( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polf2s long s short s[2*arg1] */
+
+static PyObject *
+gl_polf2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short (* arg2) [ 2 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (short(*)[2]) PyMem_NEW(short , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 1, 0, 2 * arg1 , (short *) arg2))
+ return NULL;
+ polf2s( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polfs long s short s[3*arg1] */
+
+static PyObject *
+gl_polfs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short (* arg2) [ 3 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (short(*)[3]) PyMem_NEW(short , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 1, 0, 3 * arg1 , (short *) arg2))
+ return NULL;
+ polfs( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polys long s short s[3*arg1] */
+
+static PyObject *
+gl_polys(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short (* arg2) [ 3 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (short(*)[3]) PyMem_NEW(short , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 1, 0, 3 * arg1 , (short *) arg2))
+ return NULL;
+ polys( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void poly2s long s short s[2*arg1] */
+
+static PyObject *
+gl_poly2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short (* arg2) [ 2 ] ;
+ if (!PyArg_GetLongArraySize(args, 1, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (short(*)[2]) PyMem_NEW(short , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 1, 0, 2 * arg1 , (short *) arg2))
+ return NULL;
+ poly2s( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void defcursor short s u_short s[128] */
+
+static PyObject *
+gl_defcursor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ unsigned short arg2 [ 128 ] ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShortArray(args, 2, 1, 128 , (short *) arg2))
+ return NULL;
+ defcursor( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void writepixels short s u_short s[arg1] */
+
+static PyObject *
+gl_writepixels(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ unsigned short * arg2 ;
+ if (!PyArg_GetShortArraySize(args, 1, 0, &arg1))
+ return NULL;
+ if ((arg2 = PyMem_NEW(unsigned short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 1, 0, arg1 , (short *) arg2))
+ return NULL;
+ writepixels( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void defbasis long s float s[4*4] */
+
+static PyObject *
+gl_defbasis(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float arg2 [ 4 ] [ 4 ] ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloatArray(args, 2, 1, 4 * 4 , (float *) arg2))
+ return NULL;
+ defbasis( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void gewrite short s short s[arg1] */
+
+static PyObject *
+gl_gewrite(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short * arg2 ;
+ if (!PyArg_GetShortArraySize(args, 1, 0, &arg1))
+ return NULL;
+ if ((arg2 = PyMem_NEW(short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 1, 0, arg1 , arg2))
+ return NULL;
+ gewrite( arg1 , arg2 );
+ PyMem_DEL(arg2);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rotate short s char s */
+
+static PyObject *
+gl_rotate(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ char arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetChar(args, 2, 1, &arg2))
+ return NULL;
+ rotate( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rot float s char s */
+
+static PyObject *
+gl_rot(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ char arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetChar(args, 2, 1, &arg2))
+ return NULL;
+ rot( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void circfi long s long s long s */
+
+static PyObject *
+gl_circfi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ circfi( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void circi long s long s long s */
+
+static PyObject *
+gl_circi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ circi( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cmovi long s long s long s */
+
+static PyObject *
+gl_cmovi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ cmovi( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void drawi long s long s long s */
+
+static PyObject *
+gl_drawi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ drawi( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void movei long s long s long s */
+
+static PyObject *
+gl_movei(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ movei( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pnti long s long s long s */
+
+static PyObject *
+gl_pnti(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ pnti( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void newtag long s long s long s */
+
+static PyObject *
+gl_newtag(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ newtag( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pdri long s long s long s */
+
+static PyObject *
+gl_pdri(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ pdri( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pmvi long s long s long s */
+
+static PyObject *
+gl_pmvi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ pmvi( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rdri long s long s long s */
+
+static PyObject *
+gl_rdri(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ rdri( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rmvi long s long s long s */
+
+static PyObject *
+gl_rmvi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ rmvi( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpdri long s long s long s */
+
+static PyObject *
+gl_rpdri(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ rpdri( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpmvi long s long s long s */
+
+static PyObject *
+gl_rpmvi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ rpmvi( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpti long s long s long s */
+
+static PyObject *
+gl_xfpti(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ xfpti( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void circ float s float s float s */
+
+static PyObject *
+gl_circ(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ circ( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void circf float s float s float s */
+
+static PyObject *
+gl_circf(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ circf( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cmov float s float s float s */
+
+static PyObject *
+gl_cmov(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ cmov( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void draw float s float s float s */
+
+static PyObject *
+gl_draw(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ draw( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void move float s float s float s */
+
+static PyObject *
+gl_move(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ move( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pnt float s float s float s */
+
+static PyObject *
+gl_pnt(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ pnt( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void scale float s float s float s */
+
+static PyObject *
+gl_scale(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ scale( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void translate float s float s float s */
+
+static PyObject *
+gl_translate(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ translate( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pdr float s float s float s */
+
+static PyObject *
+gl_pdr(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ pdr( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pmv float s float s float s */
+
+static PyObject *
+gl_pmv(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ pmv( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rdr float s float s float s */
+
+static PyObject *
+gl_rdr(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ rdr( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rmv float s float s float s */
+
+static PyObject *
+gl_rmv(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ rmv( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpdr float s float s float s */
+
+static PyObject *
+gl_rpdr(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ rpdr( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpmv float s float s float s */
+
+static PyObject *
+gl_rpmv(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ rpmv( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpt float s float s float s */
+
+static PyObject *
+gl_xfpt(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ if (!PyArg_GetFloat(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 3, 2, &arg3))
+ return NULL;
+ xfpt( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void RGBcolor short s short s short s */
+
+static PyObject *
+gl_RGBcolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ RGBcolor( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void RGBwritemask short s short s short s */
+
+static PyObject *
+gl_RGBwritemask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ RGBwritemask( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setcursor short s short s short s */
+
+static PyObject *
+gl_setcursor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ setcursor( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void tie short s short s short s */
+
+static PyObject *
+gl_tie(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ tie( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void circfs short s short s short s */
+
+static PyObject *
+gl_circfs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ circfs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void circs short s short s short s */
+
+static PyObject *
+gl_circs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ circs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cmovs short s short s short s */
+
+static PyObject *
+gl_cmovs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ cmovs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void draws short s short s short s */
+
+static PyObject *
+gl_draws(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ draws( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void moves short s short s short s */
+
+static PyObject *
+gl_moves(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ moves( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pdrs short s short s short s */
+
+static PyObject *
+gl_pdrs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ pdrs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pmvs short s short s short s */
+
+static PyObject *
+gl_pmvs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ pmvs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pnts short s short s short s */
+
+static PyObject *
+gl_pnts(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ pnts( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rdrs short s short s short s */
+
+static PyObject *
+gl_rdrs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ rdrs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rmvs short s short s short s */
+
+static PyObject *
+gl_rmvs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ rmvs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpdrs short s short s short s */
+
+static PyObject *
+gl_rpdrs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ rpdrs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpmvs short s short s short s */
+
+static PyObject *
+gl_rpmvs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ rpmvs( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpts short s short s short s */
+
+static PyObject *
+gl_xfpts(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ xfpts( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void curorigin short s short s short s */
+
+static PyObject *
+gl_curorigin(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ curorigin( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cyclemap short s short s short s */
+
+static PyObject *
+gl_cyclemap(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ if (!PyArg_GetShort(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ cyclemap( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void patch float s[4*4] float s[4*4] float s[4*4] */
+
+static PyObject *
+gl_patch(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] [ 4 ] ;
+ float arg2 [ 4 ] [ 4 ] ;
+ float arg3 [ 4 ] [ 4 ] ;
+ if (!PyArg_GetFloatArray(args, 3, 0, 4 * 4 , (float *) arg1))
+ return NULL;
+ if (!PyArg_GetFloatArray(args, 3, 1, 4 * 4 , (float *) arg2))
+ return NULL;
+ if (!PyArg_GetFloatArray(args, 3, 2, 4 * 4 , (float *) arg3))
+ return NULL;
+ patch( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void splf long s float s[3*arg1] u_short s[arg1] */
+
+static PyObject *
+gl_splf(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 3 ] ;
+ unsigned short * arg3 ;
+ if (!PyArg_GetLongArraySize(args, 2, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (float(*)[3]) PyMem_NEW(float , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 2, 0, 3 * arg1 , (float *) arg2))
+ return NULL;
+ if ((arg3 = PyMem_NEW(unsigned short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 1, arg1 , (short *) arg3))
+ return NULL;
+ splf( arg1 , arg2 , arg3 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg3);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void splf2 long s float s[2*arg1] u_short s[arg1] */
+
+static PyObject *
+gl_splf2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float (* arg2) [ 2 ] ;
+ unsigned short * arg3 ;
+ if (!PyArg_GetLongArraySize(args, 2, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (float(*)[2]) PyMem_NEW(float , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 2, 0, 2 * arg1 , (float *) arg2))
+ return NULL;
+ if ((arg3 = PyMem_NEW(unsigned short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 1, arg1 , (short *) arg3))
+ return NULL;
+ splf2( arg1 , arg2 , arg3 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg3);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void splfi long s long s[3*arg1] u_short s[arg1] */
+
+static PyObject *
+gl_splfi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long (* arg2) [ 3 ] ;
+ unsigned short * arg3 ;
+ if (!PyArg_GetLongArraySize(args, 2, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (long(*)[3]) PyMem_NEW(long , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetLongArray(args, 2, 0, 3 * arg1 , (long *) arg2))
+ return NULL;
+ if ((arg3 = PyMem_NEW(unsigned short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 1, arg1 , (short *) arg3))
+ return NULL;
+ splfi( arg1 , arg2 , arg3 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg3);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void splf2i long s long s[2*arg1] u_short s[arg1] */
+
+static PyObject *
+gl_splf2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long (* arg2) [ 2 ] ;
+ unsigned short * arg3 ;
+ if (!PyArg_GetLongArraySize(args, 2, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (long(*)[2]) PyMem_NEW(long , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetLongArray(args, 2, 0, 2 * arg1 , (long *) arg2))
+ return NULL;
+ if ((arg3 = PyMem_NEW(unsigned short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 1, arg1 , (short *) arg3))
+ return NULL;
+ splf2i( arg1 , arg2 , arg3 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg3);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void splfs long s short s[3*arg1] u_short s[arg1] */
+
+static PyObject *
+gl_splfs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short (* arg2) [ 3 ] ;
+ unsigned short * arg3 ;
+ if (!PyArg_GetLongArraySize(args, 2, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 3;
+ if ((arg2 = (short(*)[3]) PyMem_NEW(short , 3 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 0, 3 * arg1 , (short *) arg2))
+ return NULL;
+ if ((arg3 = PyMem_NEW(unsigned short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 1, arg1 , (short *) arg3))
+ return NULL;
+ splfs( arg1 , arg2 , arg3 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg3);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void splf2s long s short s[2*arg1] u_short s[arg1] */
+
+static PyObject *
+gl_splf2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short (* arg2) [ 2 ] ;
+ unsigned short * arg3 ;
+ if (!PyArg_GetLongArraySize(args, 2, 0, &arg1))
+ return NULL;
+ arg1 = arg1 / 2;
+ if ((arg2 = (short(*)[2]) PyMem_NEW(short , 2 * arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 0, 2 * arg1 , (short *) arg2))
+ return NULL;
+ if ((arg3 = PyMem_NEW(unsigned short , arg1 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetShortArray(args, 2, 1, arg1 , (short *) arg3))
+ return NULL;
+ splf2s( arg1 , arg2 , arg3 );
+ PyMem_DEL(arg2);
+ PyMem_DEL(arg3);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rpatch float s[4*4] float s[4*4] float s[4*4] float s[4*4] */
+
+static PyObject *
+gl_rpatch(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] [ 4 ] ;
+ float arg2 [ 4 ] [ 4 ] ;
+ float arg3 [ 4 ] [ 4 ] ;
+ float arg4 [ 4 ] [ 4 ] ;
+ if (!PyArg_GetFloatArray(args, 4, 0, 4 * 4 , (float *) arg1))
+ return NULL;
+ if (!PyArg_GetFloatArray(args, 4, 1, 4 * 4 , (float *) arg2))
+ return NULL;
+ if (!PyArg_GetFloatArray(args, 4, 2, 4 * 4 , (float *) arg3))
+ return NULL;
+ if (!PyArg_GetFloatArray(args, 4, 3, 4 * 4 , (float *) arg4))
+ return NULL;
+ rpatch( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void ortho2 float s float s float s float s */
+
+static PyObject *
+gl_ortho2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ if (!PyArg_GetFloat(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 3, &arg4))
+ return NULL;
+ ortho2( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rect float s float s float s float s */
+
+static PyObject *
+gl_rect(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ if (!PyArg_GetFloat(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 3, &arg4))
+ return NULL;
+ rect( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rectf float s float s float s float s */
+
+static PyObject *
+gl_rectf(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ if (!PyArg_GetFloat(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 3, &arg4))
+ return NULL;
+ rectf( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpt4 float s float s float s float s */
+
+static PyObject *
+gl_xfpt4(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ if (!PyArg_GetFloat(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 3, &arg4))
+ return NULL;
+ xfpt4( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void textport short s short s short s short s */
+
+static PyObject *
+gl_textport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ textport( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void mapcolor short s short s short s short s */
+
+static PyObject *
+gl_mapcolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ mapcolor( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void scrmask short s short s short s short s */
+
+static PyObject *
+gl_scrmask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ scrmask( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setvaluator short s short s short s short s */
+
+static PyObject *
+gl_setvaluator(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ setvaluator( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void viewport short s short s short s short s */
+
+static PyObject *
+gl_viewport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ viewport( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void shaderange short s short s short s short s */
+
+static PyObject *
+gl_shaderange(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ shaderange( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpt4s short s short s short s short s */
+
+static PyObject *
+gl_xfpt4s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ xfpt4s( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rectfi long s long s long s long s */
+
+static PyObject *
+gl_rectfi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetLong(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ rectfi( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void recti long s long s long s long s */
+
+static PyObject *
+gl_recti(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetLong(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ recti( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void xfpt4i long s long s long s long s */
+
+static PyObject *
+gl_xfpt4i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetLong(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ xfpt4i( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void prefposition long s long s long s long s */
+
+static PyObject *
+gl_prefposition(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetLong(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ prefposition( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void arc float s float s float s short s short s */
+
+static PyObject *
+gl_arc(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ short arg4 ;
+ short arg5 ;
+ if (!PyArg_GetFloat(args, 5, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 5, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 5, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 4, &arg5))
+ return NULL;
+ arc( arg1 , arg2 , arg3 , arg4 , arg5 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void arcf float s float s float s short s short s */
+
+static PyObject *
+gl_arcf(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ short arg4 ;
+ short arg5 ;
+ if (!PyArg_GetFloat(args, 5, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 5, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 5, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 4, &arg5))
+ return NULL;
+ arcf( arg1 , arg2 , arg3 , arg4 , arg5 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void arcfi long s long s long s short s short s */
+
+static PyObject *
+gl_arcfi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ short arg4 ;
+ short arg5 ;
+ if (!PyArg_GetLong(args, 5, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 5, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 5, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 4, &arg5))
+ return NULL;
+ arcfi( arg1 , arg2 , arg3 , arg4 , arg5 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void arci long s long s long s short s short s */
+
+static PyObject *
+gl_arci(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ short arg4 ;
+ short arg5 ;
+ if (!PyArg_GetLong(args, 5, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 5, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 5, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 4, &arg5))
+ return NULL;
+ arci( arg1 , arg2 , arg3 , arg4 , arg5 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bbox2 short s short s float s float s float s float s */
+
+static PyObject *
+gl_bbox2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ float arg3 ;
+ float arg4 ;
+ float arg5 ;
+ float arg6 ;
+ if (!PyArg_GetShort(args, 6, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 5, &arg6))
+ return NULL;
+ bbox2( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bbox2i short s short s long s long s long s long s */
+
+static PyObject *
+gl_bbox2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ long arg3 ;
+ long arg4 ;
+ long arg5 ;
+ long arg6 ;
+ if (!PyArg_GetShort(args, 6, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 6, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 6, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetLong(args, 6, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetLong(args, 6, 5, &arg6))
+ return NULL;
+ bbox2i( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bbox2s short s short s short s short s short s short s */
+
+static PyObject *
+gl_bbox2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ short arg6 ;
+ if (!PyArg_GetShort(args, 6, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 5, &arg6))
+ return NULL;
+ bbox2s( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void blink short s short s short s short s short s */
+
+static PyObject *
+gl_blink(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ if (!PyArg_GetShort(args, 5, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 4, &arg5))
+ return NULL;
+ blink( arg1 , arg2 , arg3 , arg4 , arg5 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void ortho float s float s float s float s float s float s */
+
+static PyObject *
+gl_ortho(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ float arg5 ;
+ float arg6 ;
+ if (!PyArg_GetFloat(args, 6, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 5, &arg6))
+ return NULL;
+ ortho( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void window float s float s float s float s float s float s */
+
+static PyObject *
+gl_window(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ float arg5 ;
+ float arg6 ;
+ if (!PyArg_GetFloat(args, 6, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetFloat(args, 6, 5, &arg6))
+ return NULL;
+ window( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lookat float s float s float s float s float s float s short s */
+
+static PyObject *
+gl_lookat(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ float arg5 ;
+ float arg6 ;
+ short arg7 ;
+ if (!PyArg_GetFloat(args, 7, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 7, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 7, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 7, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetFloat(args, 7, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetFloat(args, 7, 5, &arg6))
+ return NULL;
+ if (!PyArg_GetShort(args, 7, 6, &arg7))
+ return NULL;
+ lookat( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void perspective short s float s float s float s */
+
+static PyObject *
+gl_perspective(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 3, &arg4))
+ return NULL;
+ perspective( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void polarview float s short s short s short s */
+
+static PyObject *
+gl_polarview(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetFloat(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ polarview( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void arcfs short s short s short s short s short s */
+
+static PyObject *
+gl_arcfs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ if (!PyArg_GetShort(args, 5, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 4, &arg5))
+ return NULL;
+ arcfs( arg1 , arg2 , arg3 , arg4 , arg5 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void arcs short s short s short s short s short s */
+
+static PyObject *
+gl_arcs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ if (!PyArg_GetShort(args, 5, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 5, 4, &arg5))
+ return NULL;
+ arcs( arg1 , arg2 , arg3 , arg4 , arg5 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rectcopy short s short s short s short s short s short s */
+
+static PyObject *
+gl_rectcopy(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ short arg6 ;
+ if (!PyArg_GetShort(args, 6, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetShort(args, 6, 5, &arg6))
+ return NULL;
+ rectcopy( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void RGBcursor short s short s short s short s short s short s short s */
+
+static PyObject *
+gl_RGBcursor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ short arg6 ;
+ short arg7 ;
+ if (!PyArg_GetShort(args, 7, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 7, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 7, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 7, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 7, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetShort(args, 7, 5, &arg6))
+ return NULL;
+ if (!PyArg_GetShort(args, 7, 6, &arg7))
+ return NULL;
+ RGBcursor( arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long getbutton short s */
+
+static PyObject *
+gl_getbutton(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ retval = getbutton( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* long getcmmode */
+
+static PyObject *
+gl_getcmmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getcmmode( );
+ return mknewlongobject(retval);
+}
+
+/* long getlsbackup */
+
+static PyObject *
+gl_getlsbackup(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getlsbackup( );
+ return mknewlongobject(retval);
+}
+
+/* long getresetls */
+
+static PyObject *
+gl_getresetls(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getresetls( );
+ return mknewlongobject(retval);
+}
+
+/* long getdcm */
+
+static PyObject *
+gl_getdcm(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getdcm( );
+ return mknewlongobject(retval);
+}
+
+/* long getzbuffer */
+
+static PyObject *
+gl_getzbuffer(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getzbuffer( );
+ return mknewlongobject(retval);
+}
+
+/* long ismex */
+
+static PyObject *
+gl_ismex(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = ismex( );
+ return mknewlongobject(retval);
+}
+
+/* long isobj long s */
+
+static PyObject *
+gl_isobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ retval = isobj( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* long isqueued short s */
+
+static PyObject *
+gl_isqueued(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ retval = isqueued( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* long istag long s */
+
+static PyObject *
+gl_istag(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ retval = istag( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* long genobj */
+
+static PyObject *
+gl_genobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = genobj( );
+ return mknewlongobject(retval);
+}
+
+/* long gentag */
+
+static PyObject *
+gl_gentag(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = gentag( );
+ return mknewlongobject(retval);
+}
+
+/* long getbuffer */
+
+static PyObject *
+gl_getbuffer(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getbuffer( );
+ return mknewlongobject(retval);
+}
+
+/* long getcolor */
+
+static PyObject *
+gl_getcolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getcolor( );
+ return mknewlongobject(retval);
+}
+
+/* long getdisplaymode */
+
+static PyObject *
+gl_getdisplaymode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getdisplaymode( );
+ return mknewlongobject(retval);
+}
+
+/* long getfont */
+
+static PyObject *
+gl_getfont(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getfont( );
+ return mknewlongobject(retval);
+}
+
+/* long getheight */
+
+static PyObject *
+gl_getheight(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getheight( );
+ return mknewlongobject(retval);
+}
+
+/* long gethitcode */
+
+static PyObject *
+gl_gethitcode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = gethitcode( );
+ return mknewlongobject(retval);
+}
+
+/* long getlstyle */
+
+static PyObject *
+gl_getlstyle(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getlstyle( );
+ return mknewlongobject(retval);
+}
+
+/* long getlwidth */
+
+static PyObject *
+gl_getlwidth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getlwidth( );
+ return mknewlongobject(retval);
+}
+
+/* long getmap */
+
+static PyObject *
+gl_getmap(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getmap( );
+ return mknewlongobject(retval);
+}
+
+/* long getplanes */
+
+static PyObject *
+gl_getplanes(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getplanes( );
+ return mknewlongobject(retval);
+}
+
+/* long getwritemask */
+
+static PyObject *
+gl_getwritemask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getwritemask( );
+ return mknewlongobject(retval);
+}
+
+/* long qtest */
+
+static PyObject *
+gl_qtest(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = qtest( );
+ return mknewlongobject(retval);
+}
+
+/* long getlsrepeat */
+
+static PyObject *
+gl_getlsrepeat(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getlsrepeat( );
+ return mknewlongobject(retval);
+}
+
+/* long getmonitor */
+
+static PyObject *
+gl_getmonitor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getmonitor( );
+ return mknewlongobject(retval);
+}
+
+/* long getopenobj */
+
+static PyObject *
+gl_getopenobj(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getopenobj( );
+ return mknewlongobject(retval);
+}
+
+/* long getpattern */
+
+static PyObject *
+gl_getpattern(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getpattern( );
+ return mknewlongobject(retval);
+}
+
+/* long winget */
+
+static PyObject *
+gl_winget(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = winget( );
+ return mknewlongobject(retval);
+}
+
+/* long winattach */
+
+static PyObject *
+gl_winattach(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = winattach( );
+ return mknewlongobject(retval);
+}
+
+/* long getothermonitor */
+
+static PyObject *
+gl_getothermonitor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getothermonitor( );
+ return mknewlongobject(retval);
+}
+
+/* long newpup */
+
+static PyObject *
+gl_newpup(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = newpup( );
+ return mknewlongobject(retval);
+}
+
+/* long getvaluator short s */
+
+static PyObject *
+gl_getvaluator(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ short arg1 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ retval = getvaluator( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* void winset long s */
+
+static PyObject *
+gl_winset(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ winset( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long dopup long s */
+
+static PyObject *
+gl_dopup(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ retval = dopup( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* void getdepth short r short r */
+
+static PyObject *
+gl_getdepth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ getdepth( & arg1 , & arg2 );
+ { PyObject *v = PyTuple_New( 2 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg2));
+ return v;
+ }
+}
+
+/* void getcpos short r short r */
+
+static PyObject *
+gl_getcpos(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ getcpos( & arg1 , & arg2 );
+ { PyObject *v = PyTuple_New( 2 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg2));
+ return v;
+ }
+}
+
+/* void getsize long r long r */
+
+static PyObject *
+gl_getsize(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ getsize( & arg1 , & arg2 );
+ { PyObject *v = PyTuple_New( 2 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewlongobject(arg1));
+ PyTuple_SetItem(v, 1, mknewlongobject(arg2));
+ return v;
+ }
+}
+
+/* void getorigin long r long r */
+
+static PyObject *
+gl_getorigin(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ getorigin( & arg1 , & arg2 );
+ { PyObject *v = PyTuple_New( 2 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewlongobject(arg1));
+ PyTuple_SetItem(v, 1, mknewlongobject(arg2));
+ return v;
+ }
+}
+
+/* void getviewport short r short r short r short r */
+
+static PyObject *
+gl_getviewport(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ getviewport( & arg1 , & arg2 , & arg3 , & arg4 );
+ { PyObject *v = PyTuple_New( 4 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg2));
+ PyTuple_SetItem(v, 2, mknewshortobject(arg3));
+ PyTuple_SetItem(v, 3, mknewshortobject(arg4));
+ return v;
+ }
+}
+
+/* void gettp short r short r short r short r */
+
+static PyObject *
+gl_gettp(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ gettp( & arg1 , & arg2 , & arg3 , & arg4 );
+ { PyObject *v = PyTuple_New( 4 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg2));
+ PyTuple_SetItem(v, 2, mknewshortobject(arg3));
+ PyTuple_SetItem(v, 3, mknewshortobject(arg4));
+ return v;
+ }
+}
+
+/* void getgpos float r float r float r float r */
+
+static PyObject *
+gl_getgpos(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ getgpos( & arg1 , & arg2 , & arg3 , & arg4 );
+ { PyObject *v = PyTuple_New( 4 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewfloatobject(arg1));
+ PyTuple_SetItem(v, 1, mknewfloatobject(arg2));
+ PyTuple_SetItem(v, 2, mknewfloatobject(arg3));
+ PyTuple_SetItem(v, 3, mknewfloatobject(arg4));
+ return v;
+ }
+}
+
+/* void winposition long s long s long s long s */
+
+static PyObject *
+gl_winposition(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetLong(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ winposition( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void gRGBcolor short r short r short r */
+
+static PyObject *
+gl_gRGBcolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ gRGBcolor( & arg1 , & arg2 , & arg3 );
+ { PyObject *v = PyTuple_New( 3 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg2));
+ PyTuple_SetItem(v, 2, mknewshortobject(arg3));
+ return v;
+ }
+}
+
+/* void gRGBmask short r short r short r */
+
+static PyObject *
+gl_gRGBmask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ gRGBmask( & arg1 , & arg2 , & arg3 );
+ { PyObject *v = PyTuple_New( 3 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg2));
+ PyTuple_SetItem(v, 2, mknewshortobject(arg3));
+ return v;
+ }
+}
+
+/* void getscrmask short r short r short r short r */
+
+static PyObject *
+gl_getscrmask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ getscrmask( & arg1 , & arg2 , & arg3 , & arg4 );
+ { PyObject *v = PyTuple_New( 4 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg2));
+ PyTuple_SetItem(v, 2, mknewshortobject(arg3));
+ PyTuple_SetItem(v, 3, mknewshortobject(arg4));
+ return v;
+ }
+}
+
+/* void getmcolor short s short r short r short r */
+
+static PyObject *
+gl_getmcolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 1, 0, &arg1))
+ return NULL;
+ getmcolor( arg1 , & arg2 , & arg3 , & arg4 );
+ { PyObject *v = PyTuple_New( 3 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg2));
+ PyTuple_SetItem(v, 1, mknewshortobject(arg3));
+ PyTuple_SetItem(v, 2, mknewshortobject(arg4));
+ return v;
+ }
+}
+
+/* void mapw long s short s short s float r float r float r
+ float r float r float r */
+
+static PyObject *
+gl_mapw(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short arg2 ;
+ short arg3 ;
+ float arg4 ;
+ float arg5 ;
+ float arg6 ;
+ float arg7 ;
+ float arg8 ;
+ float arg9 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ mapw( arg1, arg2, arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9 );
+ { PyObject *v = PyTuple_New( 6 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewfloatobject(arg4));
+ PyTuple_SetItem(v, 1, mknewfloatobject(arg5));
+ PyTuple_SetItem(v, 2, mknewfloatobject(arg6));
+ PyTuple_SetItem(v, 3, mknewfloatobject(arg7));
+ PyTuple_SetItem(v, 4, mknewfloatobject(arg8));
+ PyTuple_SetItem(v, 5, mknewfloatobject(arg9));
+ return v;
+ }
+}
+
+/* void mapw2 long s short s short s float r float r */
+
+static PyObject *
+gl_mapw2(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ short arg2 ;
+ short arg3 ;
+ float arg4 ;
+ float arg5 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 3, 2, &arg3))
+ return NULL;
+ mapw2( arg1 , arg2 , arg3 , & arg4 , & arg5 );
+ { PyObject *v = PyTuple_New( 2 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewfloatobject(arg4));
+ PyTuple_SetItem(v, 1, mknewfloatobject(arg5));
+ return v;
+ }
+}
+
+/* void getcursor short r u_short r u_short r long r */
+
+static PyObject *
+gl_getcursor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ unsigned short arg2 ;
+ unsigned short arg3 ;
+ long arg4 ;
+ getcursor( & arg1 , & arg2 , & arg3 , & arg4 );
+ { PyObject *v = PyTuple_New( 4 );
+ if (v == NULL) return NULL;
+ PyTuple_SetItem(v, 0, mknewshortobject(arg1));
+ PyTuple_SetItem(v, 1, mknewshortobject((short) arg2));
+ PyTuple_SetItem(v, 2, mknewshortobject((short) arg3));
+ PyTuple_SetItem(v, 3, mknewlongobject(arg4));
+ return v;
+ }
+}
+
+/* void cmode */
+
+static PyObject *
+gl_cmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ cmode( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void concave long s */
+
+static PyObject *
+gl_concave(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ concave( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void curstype long s */
+
+static PyObject *
+gl_curstype(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ curstype( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void drawmode long s */
+
+static PyObject *
+gl_drawmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ drawmode( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void gammaramp short s[256] short s[256] short s[256] */
+
+static PyObject *
+gl_gammaramp(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 [ 256 ] ;
+ short arg2 [ 256 ] ;
+ short arg3 [ 256 ] ;
+ if (!PyArg_GetShortArray(args, 3, 0, 256 , arg1))
+ return NULL;
+ if (!PyArg_GetShortArray(args, 3, 1, 256 , arg2))
+ return NULL;
+ if (!PyArg_GetShortArray(args, 3, 2, 256 , arg3))
+ return NULL;
+ gammaramp( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long getbackface */
+
+static PyObject *
+gl_getbackface(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getbackface( );
+ return mknewlongobject(retval);
+}
+
+/* long getdescender */
+
+static PyObject *
+gl_getdescender(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getdescender( );
+ return mknewlongobject(retval);
+}
+
+/* long getdrawmode */
+
+static PyObject *
+gl_getdrawmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getdrawmode( );
+ return mknewlongobject(retval);
+}
+
+/* long getmmode */
+
+static PyObject *
+gl_getmmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getmmode( );
+ return mknewlongobject(retval);
+}
+
+/* long getsm */
+
+static PyObject *
+gl_getsm(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = getsm( );
+ return mknewlongobject(retval);
+}
+
+/* long getvideo long s */
+
+static PyObject *
+gl_getvideo(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ retval = getvideo( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* void imakebackground */
+
+static PyObject *
+gl_imakebackground(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ imakebackground( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lmbind short s short s */
+
+static PyObject *
+gl_lmbind(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ if (!PyArg_GetShort(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 2, 1, &arg2))
+ return NULL;
+ lmbind( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lmdef long s long s long s float s[arg3] */
+
+static PyObject *
+gl_lmdef(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ float * arg4 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLongArraySize(args, 3, 2, &arg3))
+ return NULL;
+ if ((arg4 = PyMem_NEW(float , arg3 )) == NULL)
+ return PyErr_NoMemory();
+ if (!PyArg_GetFloatArray(args, 3, 2, arg3 , arg4))
+ return NULL;
+ lmdef( arg1 , arg2 , arg3 , arg4 );
+ PyMem_DEL(arg4);
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void mmode long s */
+
+static PyObject *
+gl_mmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ mmode( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void normal float s[3] */
+
+static PyObject *
+gl_normal(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 3 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ normal( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void overlay long s */
+
+static PyObject *
+gl_overlay(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ overlay( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void RGBrange short s short s short s
+ short s short s short s short s short s */
+
+static PyObject *
+gl_RGBrange(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ short arg6 ;
+ short arg7 ;
+ short arg8 ;
+ if (!PyArg_GetShort(args, 8, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 5, &arg6))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 6, &arg7))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 7, &arg8))
+ return NULL;
+ RGBrange( arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setvideo long s long s */
+
+static PyObject *
+gl_setvideo(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ setvideo( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void shademodel long s */
+
+static PyObject *
+gl_shademodel(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ shademodel( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void underlay long s */
+
+static PyObject *
+gl_underlay(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ underlay( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bgnclosedline */
+
+static PyObject *
+gl_bgnclosedline(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ bgnclosedline( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bgnline */
+
+static PyObject *
+gl_bgnline(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ bgnline( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bgnpoint */
+
+static PyObject *
+gl_bgnpoint(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ bgnpoint( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bgnpolygon */
+
+static PyObject *
+gl_bgnpolygon(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ bgnpolygon( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bgnsurface */
+
+static PyObject *
+gl_bgnsurface(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ bgnsurface( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bgntmesh */
+
+static PyObject *
+gl_bgntmesh(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ bgntmesh( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void bgntrim */
+
+static PyObject *
+gl_bgntrim(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ bgntrim( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endclosedline */
+
+static PyObject *
+gl_endclosedline(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endclosedline( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endline */
+
+static PyObject *
+gl_endline(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endline( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endpoint */
+
+static PyObject *
+gl_endpoint(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endpoint( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endpolygon */
+
+static PyObject *
+gl_endpolygon(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endpolygon( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endsurface */
+
+static PyObject *
+gl_endsurface(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endsurface( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endtmesh */
+
+static PyObject *
+gl_endtmesh(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endtmesh( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void endtrim */
+
+static PyObject *
+gl_endtrim(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ endtrim( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void blendfunction long s long s */
+
+static PyObject *
+gl_blendfunction(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ blendfunction( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void c3f float s[3] */
+
+static PyObject *
+gl_c3f(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 3 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ c3f( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void c3i long s[3] */
+
+static PyObject *
+gl_c3i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 [ 3 ] ;
+ if (!PyArg_GetLongArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ c3i( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void c3s short s[3] */
+
+static PyObject *
+gl_c3s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 [ 3 ] ;
+ if (!PyArg_GetShortArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ c3s( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void c4f float s[4] */
+
+static PyObject *
+gl_c4f(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 4 , arg1))
+ return NULL;
+ c4f( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void c4i long s[4] */
+
+static PyObject *
+gl_c4i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 [ 4 ] ;
+ if (!PyArg_GetLongArray(args, 1, 0, 4 , arg1))
+ return NULL;
+ c4i( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void c4s short s[4] */
+
+static PyObject *
+gl_c4s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 [ 4 ] ;
+ if (!PyArg_GetShortArray(args, 1, 0, 4 , arg1))
+ return NULL;
+ c4s( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void colorf float s */
+
+static PyObject *
+gl_colorf(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ if (!PyArg_GetFloat(args, 1, 0, &arg1))
+ return NULL;
+ colorf( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void cpack long s */
+
+static PyObject *
+gl_cpack(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ cpack( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void czclear long s long s */
+
+static PyObject *
+gl_czclear(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ czclear( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void dglclose long s */
+
+static PyObject *
+gl_dglclose(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ dglclose( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long dglopen char *s long s */
+
+static PyObject *
+gl_dglopen(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ string arg1 ;
+ long arg2 ;
+ if (!PyArg_GetString(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ retval = dglopen( arg1 , arg2 );
+ return mknewlongobject(retval);
+}
+
+/* long getgdesc long s */
+
+static PyObject *
+gl_getgdesc(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ retval = getgdesc( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* void getnurbsproperty long s float r */
+
+static PyObject *
+gl_getnurbsproperty(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float arg2 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ getnurbsproperty( arg1 , & arg2 );
+ return mknewfloatobject(arg2);
+}
+
+/* void glcompat long s long s */
+
+static PyObject *
+gl_glcompat(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ glcompat( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void iconsize long s long s */
+
+static PyObject *
+gl_iconsize(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ iconsize( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void icontitle char *s */
+
+static PyObject *
+gl_icontitle(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ string arg1 ;
+ if (!PyArg_GetString(args, 1, 0, &arg1))
+ return NULL;
+ icontitle( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lRGBrange short s short s short s short s
+ short s short s long s long s */
+
+static PyObject *
+gl_lRGBrange(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ short arg5 ;
+ short arg6 ;
+ long arg7 ;
+ long arg8 ;
+ if (!PyArg_GetShort(args, 8, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 3, &arg4))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 4, &arg5))
+ return NULL;
+ if (!PyArg_GetShort(args, 8, 5, &arg6))
+ return NULL;
+ if (!PyArg_GetLong(args, 8, 6, &arg7))
+ return NULL;
+ if (!PyArg_GetLong(args, 8, 7, &arg8))
+ return NULL;
+ lRGBrange( arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void linesmooth long s */
+
+static PyObject *
+gl_linesmooth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ linesmooth( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lmcolor long s */
+
+static PyObject *
+gl_lmcolor(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ lmcolor( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void logicop long s */
+
+static PyObject *
+gl_logicop(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ logicop( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lsetdepth long s long s */
+
+static PyObject *
+gl_lsetdepth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ lsetdepth( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void lshaderange short s short s long s long s */
+
+static PyObject *
+gl_lshaderange(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ lshaderange( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void n3f float s[3] */
+
+static PyObject *
+gl_n3f(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 3 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ n3f( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void noborder */
+
+static PyObject *
+gl_noborder(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ noborder( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pntsmooth long s */
+
+static PyObject *
+gl_pntsmooth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ pntsmooth( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void readsource long s */
+
+static PyObject *
+gl_readsource(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ readsource( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void rectzoom float s float s */
+
+static PyObject *
+gl_rectzoom(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ if (!PyArg_GetFloat(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ rectzoom( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void sbox float s float s float s float s */
+
+static PyObject *
+gl_sbox(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ if (!PyArg_GetFloat(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 3, &arg4))
+ return NULL;
+ sbox( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void sboxi long s long s long s long s */
+
+static PyObject *
+gl_sboxi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetLong(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ sboxi( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void sboxs short s short s short s short s */
+
+static PyObject *
+gl_sboxs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ sboxs( arg1, arg2, arg3, arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void sboxf float s float s float s float s */
+
+static PyObject *
+gl_sboxf(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 ;
+ float arg2 ;
+ float arg3 ;
+ float arg4 ;
+ if (!PyArg_GetFloat(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetFloat(args, 4, 3, &arg4))
+ return NULL;
+ sboxf( arg1, arg2, arg3, arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void sboxfi long s long s long s long s */
+
+static PyObject *
+gl_sboxfi(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ long arg4 ;
+ if (!PyArg_GetLong(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetLong(args, 4, 3, &arg4))
+ return NULL;
+ sboxfi( arg1, arg2, arg3, arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void sboxfs short s short s short s short s */
+
+static PyObject *
+gl_sboxfs(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 ;
+ short arg2 ;
+ short arg3 ;
+ short arg4 ;
+ if (!PyArg_GetShort(args, 4, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 2, &arg3))
+ return NULL;
+ if (!PyArg_GetShort(args, 4, 3, &arg4))
+ return NULL;
+ sboxfs( arg1 , arg2 , arg3 , arg4 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setnurbsproperty long s float s */
+
+static PyObject *
+gl_setnurbsproperty(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ float arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetFloat(args, 2, 1, &arg2))
+ return NULL;
+ setnurbsproperty( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void setpup long s long s long s */
+
+static PyObject *
+gl_setpup(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ long arg3 ;
+ if (!PyArg_GetLong(args, 3, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 1, &arg2))
+ return NULL;
+ if (!PyArg_GetLong(args, 3, 2, &arg3))
+ return NULL;
+ setpup( arg1 , arg2 , arg3 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void smoothline long s */
+
+static PyObject *
+gl_smoothline(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ smoothline( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void subpixel long s */
+
+static PyObject *
+gl_subpixel(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ subpixel( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void swaptmesh */
+
+static PyObject *
+gl_swaptmesh(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ swaptmesh( );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long swinopen long s */
+
+static PyObject *
+gl_swinopen(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ retval = swinopen( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* void v2f float s[2] */
+
+static PyObject *
+gl_v2f(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 2 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 2 , arg1))
+ return NULL;
+ v2f( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v2i long s[2] */
+
+static PyObject *
+gl_v2i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 [ 2 ] ;
+ if (!PyArg_GetLongArray(args, 1, 0, 2 , arg1))
+ return NULL;
+ v2i( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v2s short s[2] */
+
+static PyObject *
+gl_v2s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 [ 2 ] ;
+ if (!PyArg_GetShortArray(args, 1, 0, 2 , arg1))
+ return NULL;
+ v2s( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v3f float s[3] */
+
+static PyObject *
+gl_v3f(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 3 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ v3f( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v3i long s[3] */
+
+static PyObject *
+gl_v3i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 [ 3 ] ;
+ if (!PyArg_GetLongArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ v3i( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v3s short s[3] */
+
+static PyObject *
+gl_v3s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 [ 3 ] ;
+ if (!PyArg_GetShortArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ v3s( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v4f float s[4] */
+
+static PyObject *
+gl_v4f(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ float arg1 [ 4 ] ;
+ if (!PyArg_GetFloatArray(args, 1, 0, 4 , arg1))
+ return NULL;
+ v4f( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v4i long s[4] */
+
+static PyObject *
+gl_v4i(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 [ 4 ] ;
+ if (!PyArg_GetLongArray(args, 1, 0, 4 , arg1))
+ return NULL;
+ v4i( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v4s short s[4] */
+
+static PyObject *
+gl_v4s(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ short arg1 [ 4 ] ;
+ if (!PyArg_GetShortArray(args, 1, 0, 4 , arg1))
+ return NULL;
+ v4s( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void videocmd long s */
+
+static PyObject *
+gl_videocmd(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ videocmd( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long windepth long s */
+
+static PyObject *
+gl_windepth(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ retval = windepth( arg1 );
+ return mknewlongobject(retval);
+}
+
+/* void wmpack long s */
+
+static PyObject *
+gl_wmpack(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ wmpack( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void zdraw long s */
+
+static PyObject *
+gl_zdraw(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ zdraw( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void zfunction long s */
+
+static PyObject *
+gl_zfunction(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ zfunction( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void zsource long s */
+
+static PyObject *
+gl_zsource(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ zsource( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void zwritemask long s */
+
+static PyObject *
+gl_zwritemask(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ zwritemask( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v2d double s[2] */
+
+static PyObject *
+gl_v2d(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ double arg1 [ 2 ] ;
+ if (!PyArg_GetDoubleArray(args, 1, 0, 2 , arg1))
+ return NULL;
+ v2d( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v3d double s[3] */
+
+static PyObject *
+gl_v3d(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ double arg1 [ 3 ] ;
+ if (!PyArg_GetDoubleArray(args, 1, 0, 3 , arg1))
+ return NULL;
+ v3d( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void v4d double s[4] */
+
+static PyObject *
+gl_v4d(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ double arg1 [ 4 ] ;
+ if (!PyArg_GetDoubleArray(args, 1, 0, 4 , arg1))
+ return NULL;
+ v4d( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* void pixmode long s long s */
+
+static PyObject *
+gl_pixmode(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ long arg2 ;
+ if (!PyArg_GetLong(args, 2, 0, &arg1))
+ return NULL;
+ if (!PyArg_GetLong(args, 2, 1, &arg2))
+ return NULL;
+ pixmode( arg1 , arg2 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+/* long qgetfd */
+
+static PyObject *
+gl_qgetfd(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long retval;
+ retval = qgetfd( );
+ return mknewlongobject(retval);
+}
+
+/* void dither long s */
+
+static PyObject *
+gl_dither(self, args)
+ PyObject *self;
+ PyObject *args;
+{
+ long arg1 ;
+ if (!PyArg_GetLong(args, 1, 0, &arg1))
+ return NULL;
+ dither( arg1 );
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+static PyMethodDef gl_methods[] = {
+ {"qread", gl_qread},
+ {"varray", gl_varray},
+ {"nvarray", gl_nvarray},
+ {"vnarray", gl_vnarray},
+ {"nurbssurface", gl_nurbssurface},
+ {"nurbscurve", gl_nurbscurve},
+ {"pwlcurve", gl_pwlcurve},
+ {"pick", gl_pick},
+ {"endpick", gl_endpick},
+ {"gselect", gl_gselect},
+ {"endselect", gl_endselect},
+ {"getmatrix", gl_getmatrix},
+ {"altgetmatrix", gl_altgetmatrix},
+ {"lrectwrite", gl_lrectwrite},
+ {"lrectread", gl_lrectread},
+ {"readdisplay", gl_readdisplay},
+ {"packrect", gl_packrect},
+ {"unpackrect", gl_unpackrect},
+ {"gversion", gl_gversion},
+ {"getshade", gl_getshade},
+ {"devport", gl_devport},
+ {"rdr2i", gl_rdr2i},
+ {"rectfs", gl_rectfs},
+ {"rects", gl_rects},
+ {"rmv2i", gl_rmv2i},
+ {"noport", gl_noport},
+ {"popviewport", gl_popviewport},
+ {"clear", gl_clear},
+ {"clearhitcode", gl_clearhitcode},
+ {"closeobj", gl_closeobj},
+ {"cursoff", gl_cursoff},
+ {"curson", gl_curson},
+ {"doublebuffer", gl_doublebuffer},
+ {"finish", gl_finish},
+ {"gconfig", gl_gconfig},
+ {"ginit", gl_ginit},
+ {"greset", gl_greset},
+ {"multimap", gl_multimap},
+ {"onemap", gl_onemap},
+ {"popattributes", gl_popattributes},
+ {"popmatrix", gl_popmatrix},
+ {"pushattributes", gl_pushattributes},
+ {"pushmatrix", gl_pushmatrix},
+ {"pushviewport", gl_pushviewport},
+ {"qreset", gl_qreset},
+ {"RGBmode", gl_RGBmode},
+ {"singlebuffer", gl_singlebuffer},
+ {"swapbuffers", gl_swapbuffers},
+ {"gsync", gl_gsync},
+ {"gflush", gl_gflush},
+ {"tpon", gl_tpon},
+ {"tpoff", gl_tpoff},
+ {"clkon", gl_clkon},
+ {"clkoff", gl_clkoff},
+ {"ringbell", gl_ringbell},
+ {"gbegin", gl_gbegin},
+ {"textinit", gl_textinit},
+ {"initnames", gl_initnames},
+ {"pclos", gl_pclos},
+ {"popname", gl_popname},
+ {"spclos", gl_spclos},
+ {"zclear", gl_zclear},
+ {"screenspace", gl_screenspace},
+ {"reshapeviewport", gl_reshapeviewport},
+ {"winpush", gl_winpush},
+ {"winpop", gl_winpop},
+ {"foreground", gl_foreground},
+ {"endfullscrn", gl_endfullscrn},
+ {"endpupmode", gl_endpupmode},
+ {"fullscrn", gl_fullscrn},
+ {"pupmode", gl_pupmode},
+ {"winconstraints", gl_winconstraints},
+ {"pagecolor", gl_pagecolor},
+ {"textcolor", gl_textcolor},
+ {"color", gl_color},
+ {"curveit", gl_curveit},
+ {"font", gl_font},
+ {"linewidth", gl_linewidth},
+ {"setlinestyle", gl_setlinestyle},
+ {"setmap", gl_setmap},
+ {"swapinterval", gl_swapinterval},
+ {"writemask", gl_writemask},
+ {"textwritemask", gl_textwritemask},
+ {"qdevice", gl_qdevice},
+ {"unqdevice", gl_unqdevice},
+ {"curvebasis", gl_curvebasis},
+ {"curveprecision", gl_curveprecision},
+ {"loadname", gl_loadname},
+ {"passthrough", gl_passthrough},
+ {"pushname", gl_pushname},
+ {"setmonitor", gl_setmonitor},
+ {"setshade", gl_setshade},
+ {"setpattern", gl_setpattern},
+ {"pagewritemask", gl_pagewritemask},
+ {"callobj", gl_callobj},
+ {"delobj", gl_delobj},
+ {"editobj", gl_editobj},
+ {"makeobj", gl_makeobj},
+ {"maketag", gl_maketag},
+ {"chunksize", gl_chunksize},
+ {"compactify", gl_compactify},
+ {"deltag", gl_deltag},
+ {"lsrepeat", gl_lsrepeat},
+ {"objinsert", gl_objinsert},
+ {"objreplace", gl_objreplace},
+ {"winclose", gl_winclose},
+ {"blanktime", gl_blanktime},
+ {"freepup", gl_freepup},
+ {"backbuffer", gl_backbuffer},
+ {"frontbuffer", gl_frontbuffer},
+ {"lsbackup", gl_lsbackup},
+ {"resetls", gl_resetls},
+ {"lampon", gl_lampon},
+ {"lampoff", gl_lampoff},
+ {"setbell", gl_setbell},
+ {"blankscreen", gl_blankscreen},
+ {"depthcue", gl_depthcue},
+ {"zbuffer", gl_zbuffer},
+ {"backface", gl_backface},
+ {"cmov2i", gl_cmov2i},
+ {"draw2i", gl_draw2i},
+ {"move2i", gl_move2i},
+ {"pnt2i", gl_pnt2i},
+ {"patchbasis", gl_patchbasis},
+ {"patchprecision", gl_patchprecision},
+ {"pdr2i", gl_pdr2i},
+ {"pmv2i", gl_pmv2i},
+ {"rpdr2i", gl_rpdr2i},
+ {"rpmv2i", gl_rpmv2i},
+ {"xfpt2i", gl_xfpt2i},
+ {"objdelete", gl_objdelete},
+ {"patchcurves", gl_patchcurves},
+ {"minsize", gl_minsize},
+ {"maxsize", gl_maxsize},
+ {"keepaspect", gl_keepaspect},
+ {"prefsize", gl_prefsize},
+ {"stepunit", gl_stepunit},
+ {"fudge", gl_fudge},
+ {"winmove", gl_winmove},
+ {"attachcursor", gl_attachcursor},
+ {"deflinestyle", gl_deflinestyle},
+ {"noise", gl_noise},
+ {"picksize", gl_picksize},
+ {"qenter", gl_qenter},
+ {"setdepth", gl_setdepth},
+ {"cmov2s", gl_cmov2s},
+ {"draw2s", gl_draw2s},
+ {"move2s", gl_move2s},
+ {"pdr2s", gl_pdr2s},
+ {"pmv2s", gl_pmv2s},
+ {"pnt2s", gl_pnt2s},
+ {"rdr2s", gl_rdr2s},
+ {"rmv2s", gl_rmv2s},
+ {"rpdr2s", gl_rpdr2s},
+ {"rpmv2s", gl_rpmv2s},
+ {"xfpt2s", gl_xfpt2s},
+ {"cmov2", gl_cmov2},
+ {"draw2", gl_draw2},
+ {"move2", gl_move2},
+ {"pnt2", gl_pnt2},
+ {"pdr2", gl_pdr2},
+ {"pmv2", gl_pmv2},
+ {"rdr2", gl_rdr2},
+ {"rmv2", gl_rmv2},
+ {"rpdr2", gl_rpdr2},
+ {"rpmv2", gl_rpmv2},
+ {"xfpt2", gl_xfpt2},
+ {"loadmatrix", gl_loadmatrix},
+ {"multmatrix", gl_multmatrix},
+ {"crv", gl_crv},
+ {"rcrv", gl_rcrv},
+ {"addtopup", gl_addtopup},
+ {"charstr", gl_charstr},
+ {"getport", gl_getport},
+ {"strwidth", gl_strwidth},
+ {"winopen", gl_winopen},
+ {"wintitle", gl_wintitle},
+ {"polf", gl_polf},
+ {"polf2", gl_polf2},
+ {"poly", gl_poly},
+ {"poly2", gl_poly2},
+ {"crvn", gl_crvn},
+ {"rcrvn", gl_rcrvn},
+ {"polf2i", gl_polf2i},
+ {"polfi", gl_polfi},
+ {"poly2i", gl_poly2i},
+ {"polyi", gl_polyi},
+ {"polf2s", gl_polf2s},
+ {"polfs", gl_polfs},
+ {"polys", gl_polys},
+ {"poly2s", gl_poly2s},
+ {"defcursor", gl_defcursor},
+ {"writepixels", gl_writepixels},
+ {"defbasis", gl_defbasis},
+ {"gewrite", gl_gewrite},
+ {"rotate", gl_rotate},
+ {"rot", gl_rot},
+ {"circfi", gl_circfi},
+ {"circi", gl_circi},
+ {"cmovi", gl_cmovi},
+ {"drawi", gl_drawi},
+ {"movei", gl_movei},
+ {"pnti", gl_pnti},
+ {"newtag", gl_newtag},
+ {"pdri", gl_pdri},
+ {"pmvi", gl_pmvi},
+ {"rdri", gl_rdri},
+ {"rmvi", gl_rmvi},
+ {"rpdri", gl_rpdri},
+ {"rpmvi", gl_rpmvi},
+ {"xfpti", gl_xfpti},
+ {"circ", gl_circ},
+ {"circf", gl_circf},
+ {"cmov", gl_cmov},
+ {"draw", gl_draw},
+ {"move", gl_move},
+ {"pnt", gl_pnt},
+ {"scale", gl_scale},
+ {"translate", gl_translate},
+ {"pdr", gl_pdr},
+ {"pmv", gl_pmv},
+ {"rdr", gl_rdr},
+ {"rmv", gl_rmv},
+ {"rpdr", gl_rpdr},
+ {"rpmv", gl_rpmv},
+ {"xfpt", gl_xfpt},
+ {"RGBcolor", gl_RGBcolor},
+ {"RGBwritemask", gl_RGBwritemask},
+ {"setcursor", gl_setcursor},
+ {"tie", gl_tie},
+ {"circfs", gl_circfs},
+ {"circs", gl_circs},
+ {"cmovs", gl_cmovs},
+ {"draws", gl_draws},
+ {"moves", gl_moves},
+ {"pdrs", gl_pdrs},
+ {"pmvs", gl_pmvs},
+ {"pnts", gl_pnts},
+ {"rdrs", gl_rdrs},
+ {"rmvs", gl_rmvs},
+ {"rpdrs", gl_rpdrs},
+ {"rpmvs", gl_rpmvs},
+ {"xfpts", gl_xfpts},
+ {"curorigin", gl_curorigin},
+ {"cyclemap", gl_cyclemap},
+ {"patch", gl_patch},
+ {"splf", gl_splf},
+ {"splf2", gl_splf2},
+ {"splfi", gl_splfi},
+ {"splf2i", gl_splf2i},
+ {"splfs", gl_splfs},
+ {"splf2s", gl_splf2s},
+ {"rpatch", gl_rpatch},
+ {"ortho2", gl_ortho2},
+ {"rect", gl_rect},
+ {"rectf", gl_rectf},
+ {"xfpt4", gl_xfpt4},
+ {"textport", gl_textport},
+ {"mapcolor", gl_mapcolor},
+ {"scrmask", gl_scrmask},
+ {"setvaluator", gl_setvaluator},
+ {"viewport", gl_viewport},
+ {"shaderange", gl_shaderange},
+ {"xfpt4s", gl_xfpt4s},
+ {"rectfi", gl_rectfi},
+ {"recti", gl_recti},
+ {"xfpt4i", gl_xfpt4i},
+ {"prefposition", gl_prefposition},
+ {"arc", gl_arc},
+ {"arcf", gl_arcf},
+ {"arcfi", gl_arcfi},
+ {"arci", gl_arci},
+ {"bbox2", gl_bbox2},
+ {"bbox2i", gl_bbox2i},
+ {"bbox2s", gl_bbox2s},
+ {"blink", gl_blink},
+ {"ortho", gl_ortho},
+ {"window", gl_window},
+ {"lookat", gl_lookat},
+ {"perspective", gl_perspective},
+ {"polarview", gl_polarview},
+ {"arcfs", gl_arcfs},
+ {"arcs", gl_arcs},
+ {"rectcopy", gl_rectcopy},
+ {"RGBcursor", gl_RGBcursor},
+ {"getbutton", gl_getbutton},
+ {"getcmmode", gl_getcmmode},
+ {"getlsbackup", gl_getlsbackup},
+ {"getresetls", gl_getresetls},
+ {"getdcm", gl_getdcm},
+ {"getzbuffer", gl_getzbuffer},
+ {"ismex", gl_ismex},
+ {"isobj", gl_isobj},
+ {"isqueued", gl_isqueued},
+ {"istag", gl_istag},
+ {"genobj", gl_genobj},
+ {"gentag", gl_gentag},
+ {"getbuffer", gl_getbuffer},
+ {"getcolor", gl_getcolor},
+ {"getdisplaymode", gl_getdisplaymode},
+ {"getfont", gl_getfont},
+ {"getheight", gl_getheight},
+ {"gethitcode", gl_gethitcode},
+ {"getlstyle", gl_getlstyle},
+ {"getlwidth", gl_getlwidth},
+ {"getmap", gl_getmap},
+ {"getplanes", gl_getplanes},
+ {"getwritemask", gl_getwritemask},
+ {"qtest", gl_qtest},
+ {"getlsrepeat", gl_getlsrepeat},
+ {"getmonitor", gl_getmonitor},
+ {"getopenobj", gl_getopenobj},
+ {"getpattern", gl_getpattern},
+ {"winget", gl_winget},
+ {"winattach", gl_winattach},
+ {"getothermonitor", gl_getothermonitor},
+ {"newpup", gl_newpup},
+ {"getvaluator", gl_getvaluator},
+ {"winset", gl_winset},
+ {"dopup", gl_dopup},
+ {"getdepth", gl_getdepth},
+ {"getcpos", gl_getcpos},
+ {"getsize", gl_getsize},
+ {"getorigin", gl_getorigin},
+ {"getviewport", gl_getviewport},
+ {"gettp", gl_gettp},
+ {"getgpos", gl_getgpos},
+ {"winposition", gl_winposition},
+ {"gRGBcolor", gl_gRGBcolor},
+ {"gRGBmask", gl_gRGBmask},
+ {"getscrmask", gl_getscrmask},
+ {"getmcolor", gl_getmcolor},
+ {"mapw", gl_mapw},
+ {"mapw2", gl_mapw2},
+ {"getcursor", gl_getcursor},
+ {"cmode", gl_cmode},
+ {"concave", gl_concave},
+ {"curstype", gl_curstype},
+ {"drawmode", gl_drawmode},
+ {"gammaramp", gl_gammaramp},
+ {"getbackface", gl_getbackface},
+ {"getdescender", gl_getdescender},
+ {"getdrawmode", gl_getdrawmode},
+ {"getmmode", gl_getmmode},
+ {"getsm", gl_getsm},
+ {"getvideo", gl_getvideo},
+ {"imakebackground", gl_imakebackground},
+ {"lmbind", gl_lmbind},
+ {"lmdef", gl_lmdef},
+ {"mmode", gl_mmode},
+ {"normal", gl_normal},
+ {"overlay", gl_overlay},
+ {"RGBrange", gl_RGBrange},
+ {"setvideo", gl_setvideo},
+ {"shademodel", gl_shademodel},
+ {"underlay", gl_underlay},
+ {"bgnclosedline", gl_bgnclosedline},
+ {"bgnline", gl_bgnline},
+ {"bgnpoint", gl_bgnpoint},
+ {"bgnpolygon", gl_bgnpolygon},
+ {"bgnsurface", gl_bgnsurface},
+ {"bgntmesh", gl_bgntmesh},
+ {"bgntrim", gl_bgntrim},
+ {"endclosedline", gl_endclosedline},
+ {"endline", gl_endline},
+ {"endpoint", gl_endpoint},
+ {"endpolygon", gl_endpolygon},
+ {"endsurface", gl_endsurface},
+ {"endtmesh", gl_endtmesh},
+ {"endtrim", gl_endtrim},
+ {"blendfunction", gl_blendfunction},
+ {"c3f", gl_c3f},
+ {"c3i", gl_c3i},
+ {"c3s", gl_c3s},
+ {"c4f", gl_c4f},
+ {"c4i", gl_c4i},
+ {"c4s", gl_c4s},
+ {"colorf", gl_colorf},
+ {"cpack", gl_cpack},
+ {"czclear", gl_czclear},
+ {"dglclose", gl_dglclose},
+ {"dglopen", gl_dglopen},
+ {"getgdesc", gl_getgdesc},
+ {"getnurbsproperty", gl_getnurbsproperty},
+ {"glcompat", gl_glcompat},
+ {"iconsize", gl_iconsize},
+ {"icontitle", gl_icontitle},
+ {"lRGBrange", gl_lRGBrange},
+ {"linesmooth", gl_linesmooth},
+ {"lmcolor", gl_lmcolor},
+ {"logicop", gl_logicop},
+ {"lsetdepth", gl_lsetdepth},
+ {"lshaderange", gl_lshaderange},
+ {"n3f", gl_n3f},
+ {"noborder", gl_noborder},
+ {"pntsmooth", gl_pntsmooth},
+ {"readsource", gl_readsource},
+ {"rectzoom", gl_rectzoom},
+ {"sbox", gl_sbox},
+ {"sboxi", gl_sboxi},
+ {"sboxs", gl_sboxs},
+ {"sboxf", gl_sboxf},
+ {"sboxfi", gl_sboxfi},
+ {"sboxfs", gl_sboxfs},
+ {"setnurbsproperty", gl_setnurbsproperty},
+ {"setpup", gl_setpup},
+ {"smoothline", gl_smoothline},
+ {"subpixel", gl_subpixel},
+ {"swaptmesh", gl_swaptmesh},
+ {"swinopen", gl_swinopen},
+ {"v2f", gl_v2f},
+ {"v2i", gl_v2i},
+ {"v2s", gl_v2s},
+ {"v3f", gl_v3f},
+ {"v3i", gl_v3i},
+ {"v3s", gl_v3s},
+ {"v4f", gl_v4f},
+ {"v4i", gl_v4i},
+ {"v4s", gl_v4s},
+ {"videocmd", gl_videocmd},
+ {"windepth", gl_windepth},
+ {"wmpack", gl_wmpack},
+ {"zdraw", gl_zdraw},
+ {"zfunction", gl_zfunction},
+ {"zsource", gl_zsource},
+ {"zwritemask", gl_zwritemask},
+ {"v2d", gl_v2d},
+ {"v3d", gl_v3d},
+ {"v4d", gl_v4d},
+ {"pixmode", gl_pixmode},
+ {"qgetfd", gl_qgetfd},
+ {"dither", gl_dither},
+ {NULL, NULL} /* Sentinel */
+};
+
+void
+initgl()
+{
+ Py_InitModule("gl", gl_methods);
+}