Make the transition to script-genereated GLX code easier.
authorIan Romanick <idr@us.ibm.com>
Wed, 1 Dec 2004 08:31:15 +0000 (08:31 +0000)
committerIan Romanick <idr@us.ibm.com>
Wed, 1 Dec 2004 08:31:15 +0000 (08:31 +0000)
Move "handcoded" ARB_window_pos / MESA_window_pos functions to their own
file.  Modify the ARB_window_pos functions to use the MESA_window_pos names.

src/glx/x11/Makefile
src/glx/x11/g_render.c
src/glx/x11/indirect.h
src/glx/x11/indirect_init.c
src/glx/x11/indirect_window_pos.c [new file with mode: 0644]

index 1447270..ee2bae1 100644 (file)
@@ -31,6 +31,7 @@ C_SOURCES = \
          glxext.c \
          glxextensions.c \
          indirect_init.c \
+         indirect_window_pos.c \
          indirect_transpose_matrix.c \
          pixel.c \
          pixelstore.c \
index 69c5419..ad37cc8 100644 (file)
@@ -748,73 +748,3 @@ void __indirect_glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, G
        __GLX_PUT_LONG(36,height);
        __GLX_END(40);
 }
-
-void __indirect_glWindowPos2dARB(GLdouble x, GLdouble y)
-{
-       __indirect_glWindowPos3fARB(x, y, 0.0);
-}
-
-void __indirect_glWindowPos2iARB(GLint x, GLint y)
-{
-       __indirect_glWindowPos3fARB(x, y, 0.0);
-}
-
-void __indirect_glWindowPos2fARB(GLfloat x, GLfloat y)
-{
-       __indirect_glWindowPos3fARB(x, y, 0.0);
-}
-
-void __indirect_glWindowPos2sARB(GLshort x, GLshort y)
-{
-       __indirect_glWindowPos3fARB(x, y, 0.0);
-}
-
-void __indirect_glWindowPos2dvARB(const GLdouble * p)
-{
-       __indirect_glWindowPos3fARB(p[0], p[1], 0.0);
-}
-
-void __indirect_glWindowPos2fvARB(const GLfloat * p)
-{
-       __indirect_glWindowPos3fARB(p[0], p[1], 0.0);
-}
-
-void __indirect_glWindowPos2ivARB(const GLint * p)
-{
-       __indirect_glWindowPos3fARB(p[0], p[1], 0.0);
-}
-
-void __indirect_glWindowPos2svARB(const GLshort * p)
-{
-       __indirect_glWindowPos3fARB(p[0], p[1], 0.0);
-}
-
-void __indirect_glWindowPos3dARB(GLdouble x, GLdouble y, GLdouble z)
-{
-       __indirect_glWindowPos3fARB(x, y, z);
-}
-
-void __indirect_glWindowPos3iARB(GLint x, GLint y, GLint z)
-{
-       __indirect_glWindowPos3fARB(x, y, z);
-}
-
-void __indirect_glWindowPos3sARB(GLshort x, GLshort y, GLshort z)
-{
-       __indirect_glWindowPos3fARB(x, y, z);
-}
-
-void __indirect_glWindowPos3dvARB(const GLdouble * p)
-{
-       __indirect_glWindowPos3fARB(p[0], p[1], p[2]);
-}
-
-void __indirect_glWindowPos3ivARB(const GLint * p)
-{
-       __indirect_glWindowPos3fARB(p[0], p[1], p[2]);
-}
-
-void __indirect_glWindowPos3svARB(const GLshort * p)
-{
-       __indirect_glWindowPos3fARB(p[0], p[1], p[2]);
-}
index e625896..442c4ab 100644 (file)
@@ -407,7 +407,7 @@ glxvendr_enum1_4(MultiTexCoord4d,  X_GLrop_MultiTexCoord4dvARB, GLdouble, ARB)
 glxvendr_enum1_V(PointParameterf, X_GLrop_PointParameterf, GLfloat, ARB)
 glxproto_enum1_V(PointParameteri, X_GLrop_PointParameteri, GLint)
 
-glxvendr_3(WindowPos3f, X_GLrop_WindowPos3fARB, GLfloat, ARB)
+glxvendr_3(WindowPos3f, X_GLrop_WindowPos3fARB, GLfloat, MESA)
 
 glxproto_1s(ActiveStencilFaceEXT, X_GLrop_ActiveStencilFaceEXT, GLenum)
 
@@ -549,20 +549,20 @@ void __indirect_glClientActiveTextureARB(GLenum texture);
 
 void __indirect_glSampleCoverageARB( GLfloat value, GLboolean invert );
 
-void __indirect_glWindowPos2dARB(GLdouble x, GLdouble y);
-void __indirect_glWindowPos2iARB(GLint x, GLint y);
-void __indirect_glWindowPos2fARB(GLfloat x, GLfloat y);
-void __indirect_glWindowPos2sARB(GLshort x, GLshort y);
-void __indirect_glWindowPos2dvARB(const GLdouble * p);
-void __indirect_glWindowPos2fvARB(const GLfloat * p);
-void __indirect_glWindowPos2ivARB(const GLint * p);
-void __indirect_glWindowPos2svARB(const GLshort * p);
-void __indirect_glWindowPos3dARB(GLdouble x, GLdouble y, GLdouble z);
-void __indirect_glWindowPos3iARB(GLint x, GLint y, GLint z);
-void __indirect_glWindowPos3sARB(GLshort x, GLshort y, GLshort z);
-void __indirect_glWindowPos3dvARB(const GLdouble * p);
-void __indirect_glWindowPos3ivARB(const GLint * p);
-void __indirect_glWindowPos3svARB(const GLshort * p);
+void __indirect_glWindowPos2dMESA(GLdouble x, GLdouble y);
+void __indirect_glWindowPos2iMESA(GLint x, GLint y);
+void __indirect_glWindowPos2fMESA(GLfloat x, GLfloat y);
+void __indirect_glWindowPos2sMESA(GLshort x, GLshort y);
+void __indirect_glWindowPos2dvMESA(const GLdouble * p);
+void __indirect_glWindowPos2fvMESA(const GLfloat * p);
+void __indirect_glWindowPos2ivMESA(const GLint * p);
+void __indirect_glWindowPos2svMESA(const GLshort * p);
+void __indirect_glWindowPos3dMESA(GLdouble x, GLdouble y, GLdouble z);
+void __indirect_glWindowPos3iMESA(GLint x, GLint y, GLint z);
+void __indirect_glWindowPos3sMESA(GLshort x, GLshort y, GLshort z);
+void __indirect_glWindowPos3dvMESA(const GLdouble * p);
+void __indirect_glWindowPos3ivMESA(const GLint * p);
+void __indirect_glWindowPos3svMESA(const GLshort * p);
 
 void __indirect_glMultiDrawArraysEXT(GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
 void __indirect_glMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid ** indices, GLsizei primcount);
index d587a87..5fcfab6 100644 (file)
@@ -507,23 +507,23 @@ __GLapi *__glXNewIndirectAPI(void)
     glAPI->PointParameterfvEXT = __indirect_glPointParameterfvARB;
 
     /* ARB 15. GL_ARB_window_pos */
-    glAPI->WindowPos2dMESA = __indirect_glWindowPos2dARB;
-    glAPI->WindowPos2iMESA = __indirect_glWindowPos2iARB;
-    glAPI->WindowPos2fMESA = __indirect_glWindowPos2fARB;
-    glAPI->WindowPos2iMESA = __indirect_glWindowPos2iARB;
-    glAPI->WindowPos2sMESA = __indirect_glWindowPos2sARB;
-    glAPI->WindowPos2dvMESA = __indirect_glWindowPos2dvARB;
-    glAPI->WindowPos2fvMESA = __indirect_glWindowPos2fvARB;
-    glAPI->WindowPos2ivMESA = __indirect_glWindowPos2ivARB;
-    glAPI->WindowPos2svMESA = __indirect_glWindowPos2svARB;
-    glAPI->WindowPos3dMESA = __indirect_glWindowPos3dARB;
-    glAPI->WindowPos3fMESA = __indirect_glWindowPos3fARB;
-    glAPI->WindowPos3iMESA = __indirect_glWindowPos3iARB;
-    glAPI->WindowPos3sMESA = __indirect_glWindowPos3sARB;
-    glAPI->WindowPos3dvMESA = __indirect_glWindowPos3dvARB;
-    glAPI->WindowPos3fvMESA = __indirect_glWindowPos3fvARB;
-    glAPI->WindowPos3ivMESA = __indirect_glWindowPos3ivARB;
-    glAPI->WindowPos3svMESA = __indirect_glWindowPos3svARB;
+    glAPI->WindowPos2dMESA = __indirect_glWindowPos2dMESA;
+    glAPI->WindowPos2iMESA = __indirect_glWindowPos2iMESA;
+    glAPI->WindowPos2fMESA = __indirect_glWindowPos2fMESA;
+    glAPI->WindowPos2iMESA = __indirect_glWindowPos2iMESA;
+    glAPI->WindowPos2sMESA = __indirect_glWindowPos2sMESA;
+    glAPI->WindowPos2dvMESA = __indirect_glWindowPos2dvMESA;
+    glAPI->WindowPos2fvMESA = __indirect_glWindowPos2fvMESA;
+    glAPI->WindowPos2ivMESA = __indirect_glWindowPos2ivMESA;
+    glAPI->WindowPos2svMESA = __indirect_glWindowPos2svMESA;
+    glAPI->WindowPos3dMESA = __indirect_glWindowPos3dMESA;
+    glAPI->WindowPos3fMESA = __indirect_glWindowPos3fMESA;
+    glAPI->WindowPos3iMESA = __indirect_glWindowPos3iMESA;
+    glAPI->WindowPos3sMESA = __indirect_glWindowPos3sMESA;
+    glAPI->WindowPos3dvMESA = __indirect_glWindowPos3dvMESA;
+    glAPI->WindowPos3fvMESA = __indirect_glWindowPos3fvMESA;
+    glAPI->WindowPos3ivMESA = __indirect_glWindowPos3ivMESA;
+    glAPI->WindowPos3svMESA = __indirect_glWindowPos3svMESA;
 
     /* 25. GL_SGIS_multisample */
     glAPI->SampleMaskSGIS = __indirect_glSampleMaskSGIS;
diff --git a/src/glx/x11/indirect_window_pos.c b/src/glx/x11/indirect_window_pos.c
new file mode 100644 (file)
index 0000000..533f8ef
--- /dev/null
@@ -0,0 +1,98 @@
+/*
+ * Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
+ * (C) Copyright IBM Corporation 2004
+ * All Rights Reserved.
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sub license,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+ * PRECISION INSIGHT, IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include <GL/gl.h>
+#include "indirect.h"
+
+void __indirect_glWindowPos2dMESA(GLdouble x, GLdouble y)
+{
+       __indirect_glWindowPos3fMESA(x, y, 0.0);
+}
+
+void __indirect_glWindowPos2iMESA(GLint x, GLint y)
+{
+       __indirect_glWindowPos3fMESA(x, y, 0.0);
+}
+
+void __indirect_glWindowPos2fMESA(GLfloat x, GLfloat y)
+{
+       __indirect_glWindowPos3fMESA(x, y, 0.0);
+}
+
+void __indirect_glWindowPos2sMESA(GLshort x, GLshort y)
+{
+       __indirect_glWindowPos3fMESA(x, y, 0.0);
+}
+
+void __indirect_glWindowPos2dvMESA(const GLdouble * p)
+{
+       __indirect_glWindowPos3fMESA(p[0], p[1], 0.0);
+}
+
+void __indirect_glWindowPos2fvMESA(const GLfloat * p)
+{
+       __indirect_glWindowPos3fMESA(p[0], p[1], 0.0);
+}
+
+void __indirect_glWindowPos2ivMESA(const GLint * p)
+{
+       __indirect_glWindowPos3fMESA(p[0], p[1], 0.0);
+}
+
+void __indirect_glWindowPos2svMESA(const GLshort * p)
+{
+       __indirect_glWindowPos3fMESA(p[0], p[1], 0.0);
+}
+
+void __indirect_glWindowPos3dMESA(GLdouble x, GLdouble y, GLdouble z)
+{
+       __indirect_glWindowPos3fMESA(x, y, z);
+}
+
+void __indirect_glWindowPos3iMESA(GLint x, GLint y, GLint z)
+{
+       __indirect_glWindowPos3fMESA(x, y, z);
+}
+
+void __indirect_glWindowPos3sMESA(GLshort x, GLshort y, GLshort z)
+{
+       __indirect_glWindowPos3fMESA(x, y, z);
+}
+
+void __indirect_glWindowPos3dvMESA(const GLdouble * p)
+{
+       __indirect_glWindowPos3fMESA(p[0], p[1], p[2]);
+}
+
+void __indirect_glWindowPos3ivMESA(const GLint * p)
+{
+       __indirect_glWindowPos3fMESA(p[0], p[1], p[2]);
+}
+
+void __indirect_glWindowPos3svMESA(const GLshort * p)
+{
+       __indirect_glWindowPos3fMESA(p[0], p[1], p[2]);
+}