arbeit
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

glewinfo.c

Go to the documentation of this file.
00001 /*
00002 ** License Applicability. Except to the extent portions of this file are
00003 ** made subject to an alternative license as permitted in the SGI Free
00004 ** Software License B, Version 1.1 (the "License"), the contents of this
00005 ** file are subject only to the provisions of the License. You may not use
00006 ** this file except in compliance with the License. You may obtain a copy
00007 ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
00008 ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
00009 ** 
00010 ** http://oss.sgi.com/projects/FreeB
00011 ** 
00012 ** Note that, as provided in the License, the Software is distributed on an
00013 ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
00014 ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
00015 ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
00016 ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
00017 ** 
00018 ** Original Code. The Original Code is: OpenGL Sample Implementation,
00019 ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
00020 ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
00021 ** Copyright in any portions created by third parties is as indicated
00022 ** elsewhere herein. All Rights Reserved.
00023 ** 
00024 ** Additional Notice Provisions: This software was created using the
00025 ** OpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has
00026 ** not been independently verified as being compliant with the OpenGL(R)
00027 ** version 1.2.1 Specification.
00028 */
00029 
00030 /*
00031 ** The contents of this file are subject to the GLX Public License Version 1.0
00032 ** (the "License"). You may not use this file except in compliance with the
00033 ** License. You may obtain a copy of the License at Silicon Graphics, Inc.,
00034 ** attn: Legal Services, 2011 N. Shoreline Blvd., Mountain View, CA 94043
00035 ** or at http://www.sgi.com/software/opensource/glx/license.html.
00036 **
00037 ** Software distributed under the License is distributed on an "AS IS"
00038 ** basis. ALL WARRANTIES ARE DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY
00039 ** IMPLIED WARRANTIES OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR
00040 ** PURPOSE OR OF NON- INFRINGEMENT. See the License for the specific
00041 ** language governing rights and limitations under the License.
00042 **
00043 ** The Original Software is GLX version 1.2 source code, released February,
00044 ** 1999. The developer of the Original Software is Silicon Graphics, Inc.
00045 ** Those portions of the Subject Software created by Silicon Graphics, Inc.
00046 ** are Copyright (c) 1991-9 Silicon Graphics, Inc. All Rights Reserved.
00047 */
00048 
00049 /*
00050 ** Copyright (C) 2002, Lev Povalahev
00051 ** All rights reserved.
00052 ** 
00053 ** Redistribution and use in source and binary forms, with or without 
00054 ** modification, are permitted provided that the following conditions are met:
00055 ** 
00056 ** * Redistributions of source code must retain the above copyright notice, 
00057 **   this list of conditions and the following disclaimer.
00058 ** * Redistributions in binary form must reproduce the above copyright notice, 
00059 **   this list of conditions and the following disclaimer in the documentation 
00060 **   and/or other materials provided with the distribution.
00061 ** * The name of the author may be used to endorse or promote products 
00062 **   derived from this software without specific prior written permission.
00063 **
00064 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
00065 ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
00066 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00067 ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
00068 ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
00069 ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
00070 ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00071 ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00072 ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00073 ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
00074 ** THE POSSIBILITY OF SUCH DAMAGE.
00075 */
00076 
00077 /*
00078 ** The OpenGL Extension Wrangler Library
00079 ** Copyright (C) 2002 Milan Ikits
00080 **
00081 ** This library is free software; you can redistribute it and/or
00082 ** modify it under the terms of the GNU Lesser General Public
00083 ** License as published by the Free Software Foundation; either
00084 ** version 2.1 of the License, or (at your option) any later version.
00085 **
00086 ** This library is distributed in the hope that it will be useful,
00087 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
00088 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00089 ** Lesser General Public License for more details.
00090 **
00091 ** You should have received a copy of the GNU Lesser General Public
00092 ** License along with this library; if not, write to the Free Software
00093 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00094 */
00095 
00096 #include <stdio.h>
00097 #include <GL/glew.h>
00098 #include <GL/glut.h>
00099 #include <GL/wglew.h>
00100 #include <GL/glxew.h>
00101 
00102 static FILE* f;
00103 
00104 static void glewPrintExt (const char* name, int defined)
00105 {
00106   unsigned int i;
00107   fprintf(f, "\n%s:", name);
00108   for (i=0; i<42-strlen(name); i++) fprintf(f, " ");
00109   fprintf(f, "%s\n", defined ? "OK" : "MISSING");
00110   for (i=0; i<strlen(name)+1; i++) fprintf(f, "-");
00111   fprintf(f, "\n");
00112   fflush(f);
00113 }
00114 
00115 static void glewInfoFunc (int undefined, const char* name)
00116 {
00117   unsigned int i;
00118   fprintf(f, "  %s:", name);
00119   for (i=0; i<40-strlen(name); i++) fprintf(f, " ");
00120   fprintf(f, "%s\n", undefined ? "MISSING" : "OK");
00121   fflush(f);
00122 }
00123 
00124 /* ------------------------------ OpenGL 1.2 ------------------------------ */
00125 
00126 #ifdef GL_VERSION_1_2
00127 static void glewInfo_12 ()
00128 {
00129   char me[] = "GL_12"; glewPrintExt(me, glew.GL_12);
00130   glewInfoFunc(glCopyTexSubImage3D == NULL, "glCopyTexSubImage3D");
00131   glewInfoFunc(glDrawRangeElements == NULL, "glDrawRangeElements");
00132   glewInfoFunc(glTexImage3D == NULL, "glTexImage3D");
00133   glewInfoFunc(glTexSubImage3D == NULL, "glTexSubImage3D");
00134 }
00135 #endif /* GL_VERSION_1_2 */
00136 
00137 /* ------------------------------ OpenGL 1.3 ------------------------------ */
00138 
00139 #ifdef GL_VERSION_1_3
00140 static void glewInfo_13 ()
00141 {
00142   char me[] = "GL_13"; glewPrintExt(me, glew.GL_13);
00143   glewInfoFunc(glActiveTexture == NULL, "glActiveTexture");
00144   glewInfoFunc(glClientActiveTexture == NULL, "glClientActiveTexture");
00145   glewInfoFunc(glMultiTexCoord1d == NULL, "glMultiTexCoord1d");
00146   glewInfoFunc(glMultiTexCoord1dv == NULL, "glMultiTexCoord1dv");
00147   glewInfoFunc(glMultiTexCoord1f == NULL, "glMultiTexCoord1f");
00148   glewInfoFunc(glMultiTexCoord1fv == NULL, "glMultiTexCoord1fv");
00149   glewInfoFunc(glMultiTexCoord1i == NULL, "glMultiTexCoord1i");
00150   glewInfoFunc(glMultiTexCoord1iv == NULL, "glMultiTexCoord1iv");
00151   glewInfoFunc(glMultiTexCoord1s == NULL, "glMultiTexCoord1s");
00152   glewInfoFunc(glMultiTexCoord1sv == NULL, "glMultiTexCoord1sv");
00153   glewInfoFunc(glMultiTexCoord2d == NULL, "glMultiTexCoord2d");
00154   glewInfoFunc(glMultiTexCoord2dv == NULL, "glMultiTexCoord2dv");
00155   glewInfoFunc(glMultiTexCoord2f == NULL, "glMultiTexCoord2f");
00156   glewInfoFunc(glMultiTexCoord2fv == NULL, "glMultiTexCoord2fv");
00157   glewInfoFunc(glMultiTexCoord2i == NULL, "glMultiTexCoord2i");
00158   glewInfoFunc(glMultiTexCoord2iv == NULL, "glMultiTexCoord2iv");
00159   glewInfoFunc(glMultiTexCoord2s == NULL, "glMultiTexCoord2s");
00160   glewInfoFunc(glMultiTexCoord2sv == NULL, "glMultiTexCoord2sv");
00161   glewInfoFunc(glMultiTexCoord3d == NULL, "glMultiTexCoord3d");
00162   glewInfoFunc(glMultiTexCoord3dv == NULL, "glMultiTexCoord3dv");
00163   glewInfoFunc(glMultiTexCoord3f == NULL, "glMultiTexCoord3f");
00164   glewInfoFunc(glMultiTexCoord3fv == NULL, "glMultiTexCoord3fv");
00165   glewInfoFunc(glMultiTexCoord3i == NULL, "glMultiTexCoord3i");
00166   glewInfoFunc(glMultiTexCoord3iv == NULL, "glMultiTexCoord3iv");
00167   glewInfoFunc(glMultiTexCoord3s == NULL, "glMultiTexCoord3s");
00168   glewInfoFunc(glMultiTexCoord3sv == NULL, "glMultiTexCoord3sv");
00169   glewInfoFunc(glMultiTexCoord4d == NULL, "glMultiTexCoord4d");
00170   glewInfoFunc(glMultiTexCoord4dv == NULL, "glMultiTexCoord4dv");
00171   glewInfoFunc(glMultiTexCoord4f == NULL, "glMultiTexCoord4f");
00172   glewInfoFunc(glMultiTexCoord4fv == NULL, "glMultiTexCoord4fv");
00173   glewInfoFunc(glMultiTexCoord4i == NULL, "glMultiTexCoord4i");
00174   glewInfoFunc(glMultiTexCoord4iv == NULL, "glMultiTexCoord4iv");
00175   glewInfoFunc(glMultiTexCoord4s == NULL, "glMultiTexCoord4s");
00176   glewInfoFunc(glMultiTexCoord4sv == NULL, "glMultiTexCoord4sv");
00177   glewInfoFunc(glLoadTransposeMatrixf == NULL, "glLoadTransposeMatrixf");
00178   glewInfoFunc(glLoadTransposeMatrixd == NULL, "glLoadTransposeMatrixd");
00179   glewInfoFunc(glMultTransposeMatrixf == NULL, "glMultTransposeMatrixf");
00180   glewInfoFunc(glMultTransposeMatrixd == NULL, "glMultTransposeMatrixd");
00181   glewInfoFunc(glCompressedTexImage3D == NULL, "glCompressedTexImage3D");
00182   glewInfoFunc(glCompressedTexImage2D == NULL, "glCompressedTexImage2D");
00183   glewInfoFunc(glCompressedTexImage1D == NULL, "glCompressedTexImage1D");
00184   glewInfoFunc(glCompressedTexSubImage3D == NULL, "glCompressedTexSubImage3D");
00185   glewInfoFunc(glCompressedTexSubImage2D == NULL, "glCompressedTexSubImage2D");
00186   glewInfoFunc(glCompressedTexSubImage1D == NULL, "glCompressedTexSubImage1D");
00187   glewInfoFunc(glGetCompressedTexImage == NULL, "glGetCompressedTexImage");
00188   glewInfoFunc(glSampleCoverage == NULL, "glSampleCoverage");
00189 }
00190 #endif /* GL_VERSION_1_3 */
00191 
00192 /* ------------------------------ OpenGL 1.4 ------------------------------ */
00193 
00194 #ifdef GL_VERSION_1_4
00195 static void glewInfo_14 ()
00196 {
00197   char me[] = "GL_14"; glewPrintExt(me, glew.GL_14);
00198   glewInfoFunc(glBlendColor == NULL, "glBlendColor");
00199   glewInfoFunc(glBlendEquation == NULL, "glBlendEquation");
00200   glewInfoFunc(glFogCoordf == NULL, "glFogCoordf");
00201   glewInfoFunc(glFogCoordfv == NULL, "glFogCoordfv");
00202   glewInfoFunc(glFogCoordd == NULL, "glFogCoordd");
00203   glewInfoFunc(glFogCoorddv == NULL, "glFogCoorddv");
00204   glewInfoFunc(glFogCoordPointer == NULL, "glFogCoordPointer");
00205   glewInfoFunc(glMultiDrawArrays == NULL, "glMultiDrawArrays");
00206   glewInfoFunc(glMultiDrawElements == NULL, "glMultiDrawElements");
00207   glewInfoFunc(glPointParameterf == NULL, "glPointParameterf");
00208   glewInfoFunc(glPointParameterfv == NULL, "glPointParameterfv");
00209   glewInfoFunc(glSecondaryColor3b == NULL, "glSecondaryColor3b");
00210   glewInfoFunc(glSecondaryColor3bv == NULL, "glSecondaryColor3bv");
00211   glewInfoFunc(glSecondaryColor3d == NULL, "glSecondaryColor3d");
00212   glewInfoFunc(glSecondaryColor3dv == NULL, "glSecondaryColor3dv");
00213   glewInfoFunc(glSecondaryColor3f == NULL, "glSecondaryColor3f");
00214   glewInfoFunc(glSecondaryColor3fv == NULL, "glSecondaryColor3fv");
00215   glewInfoFunc(glSecondaryColor3i == NULL, "glSecondaryColor3i");
00216   glewInfoFunc(glSecondaryColor3iv == NULL, "glSecondaryColor3iv");
00217   glewInfoFunc(glSecondaryColor3s == NULL, "glSecondaryColor3s");
00218   glewInfoFunc(glSecondaryColor3sv == NULL, "glSecondaryColor3sv");
00219   glewInfoFunc(glSecondaryColor3ub == NULL, "glSecondaryColor3ub");
00220   glewInfoFunc(glSecondaryColor3ubv == NULL, "glSecondaryColor3ubv");
00221   glewInfoFunc(glSecondaryColor3ui == NULL, "glSecondaryColor3ui");
00222   glewInfoFunc(glSecondaryColor3uiv == NULL, "glSecondaryColor3uiv");
00223   glewInfoFunc(glSecondaryColor3us == NULL, "glSecondaryColor3us");
00224   glewInfoFunc(glSecondaryColor3usv == NULL, "glSecondaryColor3usv");
00225   glewInfoFunc(glSecondaryColorPointer == NULL, "glSecondaryColorPointer");
00226   glewInfoFunc(glBlendFuncSeparate == NULL, "glBlendFuncSeparate");
00227   glewInfoFunc(glWindowPos2d == NULL, "glWindowPos2d");
00228   glewInfoFunc(glWindowPos2f == NULL, "glWindowPos2f");
00229   glewInfoFunc(glWindowPos2i == NULL, "glWindowPos2i");
00230   glewInfoFunc(glWindowPos2s == NULL, "glWindowPos2s");
00231   glewInfoFunc(glWindowPos2dv == NULL, "glWindowPos2dv");
00232   glewInfoFunc(glWindowPos2fv == NULL, "glWindowPos2fv");
00233   glewInfoFunc(glWindowPos2iv == NULL, "glWindowPos2iv");
00234   glewInfoFunc(glWindowPos2sv == NULL, "glWindowPos2sv");
00235   glewInfoFunc(glWindowPos3d == NULL, "glWindowPos3d");
00236   glewInfoFunc(glWindowPos3f == NULL, "glWindowPos3f");
00237   glewInfoFunc(glWindowPos3i == NULL, "glWindowPos3i");
00238   glewInfoFunc(glWindowPos3s == NULL, "glWindowPos3s");
00239   glewInfoFunc(glWindowPos3dv == NULL, "glWindowPos3dv");
00240   glewInfoFunc(glWindowPos3fv == NULL, "glWindowPos3fv");
00241   glewInfoFunc(glWindowPos3iv == NULL, "glWindowPos3iv");
00242   glewInfoFunc(glWindowPos3sv == NULL, "glWindowPos3sv");
00243 }
00244 #endif /* GL_VERSION_1_4 */
00245 
00246 /* ------------------------------ ARB_imaging ----------------------------- */
00247 
00248 #ifdef GL_ARB_imaging
00249 static void glewInfo_ARB_imaging ()
00250 {
00251     //#ifdef _WIN32
00252   char me[] = "GL_ARB_imaging"; glewPrintExt(me, glew.ARB_imaging);
00253   glewInfoFunc(glBlendColor == NULL, "glBlendColor");
00254   glewInfoFunc(glBlendEquation == NULL, "glBlendEquation");
00255   glewInfoFunc(glColorTable == NULL, "glColorTable");
00256   glewInfoFunc(glColorTableParameterfv == NULL, "glColorTableParameterfv");
00257   glewInfoFunc(glColorTableParameteriv == NULL, "glColorTableParameteriv");
00258   glewInfoFunc(glCopyColorTable == NULL, "glCopyColorTable");
00259   glewInfoFunc(glGetColorTable == NULL, "glGetColorTable");
00260   glewInfoFunc(glGetColorTableParameterfv == NULL, "glGetColorTableParameterfv");
00261   glewInfoFunc(glGetColorTableParameteriv == NULL, "glGetColorTableParameteriv");
00262   glewInfoFunc(glColorSubTable == NULL, "glColorSubTable");
00263   glewInfoFunc(glCopyColorSubTable == NULL, "glCopyColorSubTable");
00264   glewInfoFunc(glConvolutionFilter1D == NULL, "glConvolutionFilter1D");
00265   glewInfoFunc(glConvolutionFilter2D == NULL, "glConvolutionFilter2D");
00266   glewInfoFunc(glConvolutionParameterf == NULL, "glConvolutionParameterf");
00267   glewInfoFunc(glConvolutionParameterfv == NULL, "glConvolutionParameterfv");
00268   glewInfoFunc(glConvolutionParameteri == NULL, "glConvolutionParameteri");
00269   glewInfoFunc(glConvolutionParameteriv == NULL, "glConvolutionParameteriv");
00270   glewInfoFunc(glCopyConvolutionFilter1D == NULL, "glCopyConvolutionFilter1D");
00271   glewInfoFunc(glCopyConvolutionFilter2D == NULL, "glCopyConvolutionFilter2D");
00272   glewInfoFunc(glGetConvolutionFilter == NULL, "glGetConvolutionFilter");
00273   glewInfoFunc(glGetConvolutionParameterfv == NULL, "glGetConvolutionParameterfv");
00274   glewInfoFunc(glGetConvolutionParameteriv == NULL, "glGetConvolutionParameteriv");
00275   glewInfoFunc(glGetSeparableFilter == NULL, "glGetSeparableFilter");
00276   glewInfoFunc(glSeparableFilter2D == NULL, "glSeparableFilter2D");
00277   glewInfoFunc(glGetHistogram == NULL, "glGetHistogram");
00278   glewInfoFunc(glGetHistogramParameterfv == NULL, "glGetHistogramParameterfv");
00279   glewInfoFunc(glGetHistogramParameteriv == NULL, "glGetHistogramParameteriv");
00280   glewInfoFunc(glGetMinmax == NULL, "glGetMinmax");
00281   glewInfoFunc(glGetMinmaxParameterfv == NULL, "glGetMinmaxParameterfv");
00282   glewInfoFunc(glGetMinmaxParameteriv == NULL, "glGetMinmaxParameteriv");
00283   glewInfoFunc(glHistogram == NULL, "glHistogram");
00284   glewInfoFunc(glMinmax == NULL, "glMinmax");
00285   glewInfoFunc(glResetHistogram == NULL, "glResetHistogram");
00286   glewInfoFunc(glResetMinmax == NULL, "glResetMinmax");
00287   //#endif /* _WIN32 */
00288 }
00289 #endif /* GL_ARB_imaging */
00290 
00291 /* -------------------------- ARB_matrix_palette -------------------------- */
00292 
00293 #ifdef GL_ARB_matrix_palette
00294 static void glewInfo_ARB_matrix_palette ()
00295 {
00296   char me[] = "GL_ARB_matrix_palette"; glewPrintExt(me, glew.ARB_matrix_palette);
00297   glewInfoFunc(glCurrentPaletteMatrixARB == NULL, "glCurrentPaletteMatrixARB");
00298   glewInfoFunc(glMatrixIndexubvARB == NULL, "glMatrixIndexubvARB");
00299   glewInfoFunc(glMatrixIndexusvARB == NULL, "glMatrixIndexusvARB");
00300   glewInfoFunc(glMatrixIndexuivARB == NULL, "glMatrixIndexuivARB");
00301   glewInfoFunc(glMatrixIndexPointerARB == NULL, "glMatrixIndexPointerARB");
00302 }
00303 #endif /* GL_ARB_matrix_palette */
00304 
00305 /* ---------------------------- ARB_multisample --------------------------- */
00306 
00307 #ifdef GL_ARB_multisample
00308 static void glewInfo_ARB_multisample ()
00309 {
00310   char me[] = "GL_ARB_multisample"; glewPrintExt(me, glew.ARB_multisample);
00311   glewInfoFunc(glSampleCoverageARB == NULL, "glSampleCoverageARB");
00312 }
00313 #endif /* GL_ARB_multisample */
00314 
00315 /* --------------------------- ARB_multitexture --------------------------- */
00316 
00317 #ifdef GL_ARB_multitexture
00318 static void glewInfo_ARB_multitexture ()
00319 {
00320   char me[] = "GL_ARB_multitexture"; glewPrintExt(me, glew.ARB_multitexture);
00321   glewInfoFunc(glActiveTextureARB == NULL, "glActiveTextureARB");
00322   glewInfoFunc(glClientActiveTextureARB == NULL, "glClientActiveTextureARB");
00323   glewInfoFunc(glMultiTexCoord1dARB == NULL, "glMultiTexCoord1dARB");
00324   glewInfoFunc(glMultiTexCoord1dvARB == NULL, "glMultiTexCoord1dvARB");
00325   glewInfoFunc(glMultiTexCoord1fARB == NULL, "glMultiTexCoord1fARB");
00326   glewInfoFunc(glMultiTexCoord1fvARB == NULL, "glMultiTexCoord1fvARB");
00327   glewInfoFunc(glMultiTexCoord1iARB == NULL, "glMultiTexCoord1iARB");
00328   glewInfoFunc(glMultiTexCoord1ivARB == NULL, "glMultiTexCoord1ivARB");
00329   glewInfoFunc(glMultiTexCoord1sARB == NULL, "glMultiTexCoord1sARB");
00330   glewInfoFunc(glMultiTexCoord1svARB == NULL, "glMultiTexCoord1svARB");
00331   glewInfoFunc(glMultiTexCoord2dARB == NULL, "glMultiTexCoord2dARB");
00332   glewInfoFunc(glMultiTexCoord2dvARB == NULL, "glMultiTexCoord2dvARB");
00333   glewInfoFunc(glMultiTexCoord2fARB == NULL, "glMultiTexCoord2fARB");
00334   glewInfoFunc(glMultiTexCoord2fvARB == NULL, "glMultiTexCoord2fvARB");
00335   glewInfoFunc(glMultiTexCoord2iARB == NULL, "glMultiTexCoord2iARB");
00336   glewInfoFunc(glMultiTexCoord2ivARB == NULL, "glMultiTexCoord2ivARB");
00337   glewInfoFunc(glMultiTexCoord2sARB == NULL, "glMultiTexCoord2sARB");
00338   glewInfoFunc(glMultiTexCoord2svARB == NULL, "glMultiTexCoord2svARB");
00339   glewInfoFunc(glMultiTexCoord3dARB == NULL, "glMultiTexCoord3dARB");
00340   glewInfoFunc(glMultiTexCoord3dvARB == NULL, "glMultiTexCoord3dvARB");
00341   glewInfoFunc(glMultiTexCoord3fARB == NULL, "glMultiTexCoord3fARB");
00342   glewInfoFunc(glMultiTexCoord3fvARB == NULL, "glMultiTexCoord3fvARB");
00343   glewInfoFunc(glMultiTexCoord3iARB == NULL, "glMultiTexCoord3iARB");
00344   glewInfoFunc(glMultiTexCoord3ivARB == NULL, "glMultiTexCoord3ivARB");
00345   glewInfoFunc(glMultiTexCoord3sARB == NULL, "glMultiTexCoord3sARB");
00346   glewInfoFunc(glMultiTexCoord3svARB == NULL, "glMultiTexCoord3svARB");
00347   glewInfoFunc(glMultiTexCoord4dARB == NULL, "glMultiTexCoord4dARB");
00348   glewInfoFunc(glMultiTexCoord4dvARB == NULL, "glMultiTexCoord4dvARB");
00349   glewInfoFunc(glMultiTexCoord4fARB == NULL, "glMultiTexCoord4fARB");
00350   glewInfoFunc(glMultiTexCoord4fvARB == NULL, "glMultiTexCoord4fvARB");
00351   glewInfoFunc(glMultiTexCoord4iARB == NULL, "glMultiTexCoord4iARB");
00352   glewInfoFunc(glMultiTexCoord4ivARB == NULL, "glMultiTexCoord4ivARB");
00353   glewInfoFunc(glMultiTexCoord4sARB == NULL, "glMultiTexCoord4sARB");
00354   glewInfoFunc(glMultiTexCoord4svARB == NULL, "glMultiTexCoord4svARB");
00355 }
00356 #endif /* GL_ARB_multitexture */
00357 
00358 /* ------------------------- ARB_point_parameters ------------------------- */
00359 
00360 #ifdef GL_ARB_point_parameters
00361 static void glewInfo_ARB_point_parameters ()
00362 {
00363   char me[] = "GL_ARB_point_parameters"; glewPrintExt(me, glew.ARB_point_parameters);
00364   glewInfoFunc(glPointParameterfARB == NULL, "glPointParameterfARB");
00365   glewInfoFunc(glPointParameterfvARB == NULL, "glPointParameterfvARB");
00366 }
00367 #endif /* GL_ARB_point_parameters */
00368 
00369 /* ------------------------ ARB_texture_compression ----------------------- */
00370 
00371 #ifdef GL_ARB_texture_compression
00372 static void glewInfo_ARB_texture_compression ()
00373 {
00374   char me[] = "GL_ARB_texture_compression"; glewPrintExt(me, glew.ARB_texture_compression);
00375   glewInfoFunc(glCompressedTexImage3DARB == NULL, "glCompressedTexImage3DARB");
00376   glewInfoFunc(glCompressedTexImage2DARB == NULL, "glCompressedTexImage2DARB");
00377   glewInfoFunc(glCompressedTexImage1DARB == NULL, "glCompressedTexImage1DARB");
00378   glewInfoFunc(glCompressedTexSubImage3DARB == NULL, "glCompressedTexSubImage3DARB");
00379   glewInfoFunc(glCompressedTexSubImage2DARB == NULL, "glCompressedTexSubImage2DARB");
00380   glewInfoFunc(glCompressedTexSubImage1DARB == NULL, "glCompressedTexSubImage1DARB");
00381   glewInfoFunc(glGetCompressedTexImageARB == NULL, "glGetCompressedTexImageARB");
00382 }
00383 #endif /* GL_ARB_texture_compression */
00384 
00385 /* ------------------------- ARB_transpose_matrix ------------------------- */
00386 
00387 #ifdef GL_ARB_transpose_matrix
00388 static void glewInfo_ARB_transpose_matrix ()
00389 {
00390   char me[] = "GL_ARB_transpose_matrix"; glewPrintExt(me, glew.ARB_transpose_matrix);
00391   glewInfoFunc(glLoadTransposeMatrixfARB == NULL, "glLoadTransposeMatrixfARB");
00392   glewInfoFunc(glLoadTransposeMatrixdARB == NULL, "glLoadTransposeMatrixdARB");
00393   glewInfoFunc(glMultTransposeMatrixfARB == NULL, "glMultTransposeMatrixfARB");
00394   glewInfoFunc(glMultTransposeMatrixdARB == NULL, "glMultTransposeMatrixdARB");
00395 }
00396 #endif /* GL_ARB_transpose_matrix */
00397 
00398 /* --------------------------- ARB_vertex_blend --------------------------- */
00399 
00400 #ifdef GL_ARB_vertex_blend
00401 static void glewInfo_ARB_vertex_blend ()
00402 {
00403   char me[] = "GL_ARB_vertex_blend"; glewPrintExt(me, glew.ARB_vertex_blend);
00404   glewInfoFunc(glWeightbvARB == NULL, "glWeightbvARB");
00405   glewInfoFunc(glWeightsvARB == NULL, "glWeightsvARB");
00406   glewInfoFunc(glWeightivARB == NULL, "glWeightivARB");
00407   glewInfoFunc(glWeightfvARB == NULL, "glWeightfvARB");
00408   glewInfoFunc(glWeightdvARB == NULL, "glWeightdvARB");
00409   glewInfoFunc(glWeightubvARB == NULL, "glWeightubvARB");
00410   glewInfoFunc(glWeightusvARB == NULL, "glWeightusvARB");
00411   glewInfoFunc(glWeightuivARB == NULL, "glWeightuivARB");
00412   glewInfoFunc(glWeightPointerARB == NULL, "glWeightPointerARB");
00413   glewInfoFunc(glVertexBlendARB == NULL, "glVertexBlendARB");
00414 }
00415 #endif /* GL_ARB_vertex_blend */
00416 
00417 /* -------------------------- ARB_vertex_program -------------------------- */
00418 
00419 #ifdef GL_ARB_vertex_program
00420 static void glewInfo_ARB_vertex_program ()
00421 {
00422   char me[] = "GL_ARB_vertex_program"; glewPrintExt(me, glew.ARB_vertex_program);
00423   glewInfoFunc(glVertexAttrib1sARB == NULL, "glVertexAttrib1sARB");
00424   glewInfoFunc(glVertexAttrib1fARB == NULL, "glVertexAttrib1fARB");
00425   glewInfoFunc(glVertexAttrib1dARB == NULL, "glVertexAttrib1dARB");
00426   glewInfoFunc(glVertexAttrib2sARB == NULL, "glVertexAttrib2sARB");
00427   glewInfoFunc(glVertexAttrib2fARB == NULL, "glVertexAttrib2fARB");
00428   glewInfoFunc(glVertexAttrib2dARB == NULL, "glVertexAttrib2dARB");
00429   glewInfoFunc(glVertexAttrib3sARB == NULL, "glVertexAttrib3sARB");
00430   glewInfoFunc(glVertexAttrib3fARB == NULL, "glVertexAttrib3fARB");
00431   glewInfoFunc(glVertexAttrib3dARB == NULL, "glVertexAttrib3dARB");
00432   glewInfoFunc(glVertexAttrib4sARB == NULL, "glVertexAttrib4sARB");
00433   glewInfoFunc(glVertexAttrib4fARB == NULL, "glVertexAttrib4fARB");
00434   glewInfoFunc(glVertexAttrib4dARB == NULL, "glVertexAttrib4dARB");
00435   glewInfoFunc(glVertexAttrib4NubARB == NULL, "glVertexAttrib4NubARB");
00436   glewInfoFunc(glVertexAttrib1svARB == NULL, "glVertexAttrib1svARB");
00437   glewInfoFunc(glVertexAttrib1fvARB == NULL, "glVertexAttrib1fvARB");
00438   glewInfoFunc(glVertexAttrib1dvARB == NULL, "glVertexAttrib1dvARB");
00439   glewInfoFunc(glVertexAttrib2svARB == NULL, "glVertexAttrib2svARB");
00440   glewInfoFunc(glVertexAttrib2fvARB == NULL, "glVertexAttrib2fvARB");
00441   glewInfoFunc(glVertexAttrib2dvARB == NULL, "glVertexAttrib2dvARB");
00442   glewInfoFunc(glVertexAttrib3svARB == NULL, "glVertexAttrib3svARB");
00443   glewInfoFunc(glVertexAttrib3fvARB == NULL, "glVertexAttrib3fvARB");
00444   glewInfoFunc(glVertexAttrib3dvARB == NULL, "glVertexAttrib3dvARB");
00445   glewInfoFunc(glVertexAttrib4bvARB == NULL, "glVertexAttrib4bvARB");
00446   glewInfoFunc(glVertexAttrib4svARB == NULL, "glVertexAttrib4svARB");
00447   glewInfoFunc(glVertexAttrib4ivARB == NULL, "glVertexAttrib4ivARB");
00448   glewInfoFunc(glVertexAttrib4ubvARB == NULL, "glVertexAttrib4ubvARB");
00449   glewInfoFunc(glVertexAttrib4usvARB == NULL, "glVertexAttrib4usvARB");
00450   glewInfoFunc(glVertexAttrib4uivARB == NULL, "glVertexAttrib4uivARB");
00451   glewInfoFunc(glVertexAttrib4fvARB == NULL, "glVertexAttrib4fvARB");
00452   glewInfoFunc(glVertexAttrib4dvARB == NULL, "glVertexAttrib4dvARB");
00453   glewInfoFunc(glVertexAttrib4NbvARB == NULL, "glVertexAttrib4NbvARB");
00454   glewInfoFunc(glVertexAttrib4NsvARB == NULL, "glVertexAttrib4NsvARB");
00455   glewInfoFunc(glVertexAttrib4NivARB == NULL, "glVertexAttrib4NivARB");
00456   glewInfoFunc(glVertexAttrib4NubvARB == NULL, "glVertexAttrib4NubvARB");
00457   glewInfoFunc(glVertexAttrib4NusvARB == NULL, "glVertexAttrib4NusvARB");
00458   glewInfoFunc(glVertexAttrib4NuivARB == NULL, "glVertexAttrib4NuivARB");
00459   glewInfoFunc(glVertexAttribPointerARB == NULL, "glVertexAttribPointerARB");
00460   glewInfoFunc(glEnableVertexAttribArrayARB == NULL, "glEnableVertexAttribArrayARB");
00461   glewInfoFunc(glDisableVertexAttribArrayARB == NULL, "glDisableVertexAttribArrayARB");
00462   glewInfoFunc(glProgramStringARB == NULL, "glProgramStringARB");
00463   glewInfoFunc(glBindProgramARB == NULL, "glBindProgramARB");
00464   glewInfoFunc(glDeleteProgramsARB == NULL, "glDeleteProgramsARB");
00465   glewInfoFunc(glGenProgramsARB == NULL, "glGenProgramsARB");
00466   glewInfoFunc(glProgramEnvParameter4dARB == NULL, "glProgramEnvParameter4dARB");
00467   glewInfoFunc(glProgramEnvParameter4dvARB == NULL, "glProgramEnvParameter4dvARB");
00468   glewInfoFunc(glProgramEnvParameter4fARB == NULL, "glProgramEnvParameter4fARB");
00469   glewInfoFunc(glProgramEnvParameter4fvARB == NULL, "glProgramEnvParameter4fvARB");
00470   glewInfoFunc(glProgramLocalParameter4dARB == NULL, "glProgramLocalParameter4dARB");
00471   glewInfoFunc(glProgramLocalParameter4dvARB == NULL, "glProgramLocalParameter4dvARB");
00472   glewInfoFunc(glProgramLocalParameter4fARB == NULL, "glProgramLocalParameter4fARB");
00473   glewInfoFunc(glProgramLocalParameter4fvARB == NULL, "glProgramLocalParameter4fvARB");
00474   glewInfoFunc(glGetProgramEnvParameterdvARB == NULL, "glGetProgramEnvParameterdvARB");
00475   glewInfoFunc(glGetProgramEnvParameterfvARB == NULL, "glGetProgramEnvParameterfvARB");
00476   glewInfoFunc(glGetProgramLocalParameterdvARB == NULL, "glGetProgramLocalParameterdvARB");
00477   glewInfoFunc(glGetProgramLocalParameterfvARB == NULL, "glGetProgramLocalParameterfvARB");
00478   glewInfoFunc(glGetProgramivARB == NULL, "glGetProgramivARB");
00479   glewInfoFunc(glGetProgramStringARB == NULL, "glGetProgramStringARB");
00480   glewInfoFunc(glGetVertexAttribdvARB == NULL, "glGetVertexAttribdvARB");
00481   glewInfoFunc(glGetVertexAttribfvARB == NULL, "glGetVertexAttribfvARB");
00482   glewInfoFunc(glGetVertexAttribivARB == NULL, "glGetVertexAttribivARB");
00483   glewInfoFunc(glGetVertexAttribPointervARB == NULL, "glGetVertexAttribPointervARB");
00484   glewInfoFunc(glIsProgramARB == NULL, "glIsProgramARB");
00485 }
00486 #endif /* GL_ARB_vertex_program */
00487 
00488 /* ---------------------------- ARB_window_pos ---------------------------- */
00489 
00490 #ifdef GL_ARB_window_pos
00491 static void glewInfo_ARB_window_pos ()
00492 {
00493   char me[] = "GL_ARB_window_pos"; glewPrintExt(me, glew.ARB_window_pos);
00494   glewInfoFunc(glWindowPos2dARB == NULL, "glWindowPos2dARB");
00495   glewInfoFunc(glWindowPos2fARB == NULL, "glWindowPos2fARB");
00496   glewInfoFunc(glWindowPos2iARB == NULL, "glWindowPos2iARB");
00497   glewInfoFunc(glWindowPos2sARB == NULL, "glWindowPos2sARB");
00498   glewInfoFunc(glWindowPos2dvARB == NULL, "glWindowPos2dvARB");
00499   glewInfoFunc(glWindowPos2fvARB == NULL, "glWindowPos2fvARB");
00500   glewInfoFunc(glWindowPos2ivARB == NULL, "glWindowPos2ivARB");
00501   glewInfoFunc(glWindowPos2svARB == NULL, "glWindowPos2svARB");
00502   glewInfoFunc(glWindowPos3dARB == NULL, "glWindowPos3dARB");
00503   glewInfoFunc(glWindowPos3fARB == NULL, "glWindowPos3fARB");
00504   glewInfoFunc(glWindowPos3iARB == NULL, "glWindowPos3iARB");
00505   glewInfoFunc(glWindowPos3sARB == NULL, "glWindowPos3sARB");
00506   glewInfoFunc(glWindowPos3dvARB == NULL, "glWindowPos3dvARB");
00507   glewInfoFunc(glWindowPos3fvARB == NULL, "glWindowPos3fvARB");
00508   glewInfoFunc(glWindowPos3ivARB == NULL, "glWindowPos3ivARB");
00509   glewInfoFunc(glWindowPos3svARB == NULL, "glWindowPos3svARB");
00510 }
00511 #endif /* GL_ARB_window_pos */
00512 
00513 /* ----------------------------- EXT_blend_color -------------------------- */
00514 
00515 #ifdef GL_EXT_blend_color
00516 static void glewInfo_EXT_blend_color ()
00517 {
00518   char me[] = "GL_EXT_blend_color"; glewPrintExt(me, glew.EXT_blend_color);
00519   glewInfoFunc(glBlendColorEXT == NULL, "glBlendColorEXT");
00520 }
00521 #endif /* GL_EXT_blend_color */
00522 
00523 /* ------------------------ EXT_blend_func_separate ----------------------- */
00524 
00525 #ifdef GL_EXT_blend_func_separate
00526 static void glewInfo_EXT_blend_func_separate ()
00527 {
00528   char me[] = "GL_EXT_blend_func_separate"; glewPrintExt(me, glew.EXT_blend_func_separate);
00529   glewInfoFunc(glBlendFuncSeparateEXT == NULL, "glBlendFuncSeparateEXT");
00530 }
00531 #endif /* GL_EXT_blend_func_separate */
00532 
00533 /* ---------------------------- EXT_blend_minmax -------------------------- */
00534 
00535 #ifdef GL_EXT_blend_minmax
00536 static void glewInfo_EXT_blend_minmax ()
00537 {
00538   char me[] = "GL_EXT_blend_minmax"; glewPrintExt(me, glew.EXT_blend_minmax);
00539   glewInfoFunc(glBlendEquationEXT == NULL, "glBlendEquationEXT");
00540 }
00541 #endif /* GL_EXT_blend_minmax */
00542 
00543 /* ----------------------- EXT_compiled_vertex_array ---------------------- */
00544 
00545 #ifdef GL_EXT_compiled_vertex_array
00546 static void glewInfo_EXT_compiled_vertex_array ()
00547 {
00548   char me[] = "GL_EXT_compiled_vertex_array"; glewPrintExt(me, glew.EXT_compiled_vertex_array);
00549   glewInfoFunc(glLockArraysEXT == NULL, "glLockArraysEXT");
00550   glewInfoFunc(glUnlockArraysEXT == NULL, "glUnlockArraysEXT");
00551 }
00552 #endif /* GL_EXT_compiled_vertex_array */
00553 
00554 /* ---------------------------- EXT_cull_vertex --------------------------- */
00555 
00556 #ifdef GL_EXT_cull_vertex
00557 static void glewInfo_EXT_cull_vertex ()
00558 {
00559   char me[] = "GL_EXT_cull_vertex"; glewPrintExt(me, glew.EXT_cull_vertex);
00560   glewInfoFunc(glCullParameterfvEXT == NULL, "glCullParameterfvEXT");
00561   glewInfoFunc(glCullParameterdvEXT == NULL, "glCullParameterdvEXT");
00562 }
00563 #endif /* GL_EXT_cull_vertex */
00564 
00565 /* ------------------------ EXT_draw_range_elements ----------------------- */
00566 
00567 #ifdef GL_EXT_draw_range_elements
00568 static void glewInfo_EXT_draw_range_elements ()
00569 {
00570   char me[] = "GL_EXT_draw_range_elements"; glewPrintExt(me, glew.EXT_draw_range_elements);
00571   glewInfoFunc(glDrawRangeElementsEXT == NULL, "glDrawRangeElementsEXT");
00572 }
00573 #endif /* GL_EXT_draw_range_elements */
00574 
00575 /* ----------------------------- EXT_fog_coord ---------------------------- */
00576 
00577 #ifdef GL_EXT_fog_coord
00578 static void glewInfo_EXT_fog_coord ()
00579 {
00580   char me[] = "GL_EXT_fog_coord"; glewPrintExt(me, glew.EXT_fog_coord);
00581   glewInfoFunc(glFogCoordfEXT == NULL, "glFogCoordfEXT");
00582   glewInfoFunc(glFogCoordfvEXT == NULL, "glFogCoordfvEXT");
00583   glewInfoFunc(glFogCoorddEXT == NULL, "glFogCoorddEXT");
00584   glewInfoFunc(glFogCoorddvEXT == NULL, "glFogCoorddvEXT");
00585   glewInfoFunc(glFogCoordPointerEXT == NULL, "glFogCoordPointerEXT");
00586 }
00587 #endif /* GL_EXT_fog_coord */
00588 
00589 /* ------------------------- EXT_multi_draw_arrays ------------------------ */
00590 
00591 #ifdef GL_EXT_multi_draw_arrays
00592 static void glewInfo_EXT_multi_draw_arrays ()
00593 {
00594   char me[] = "GL_EXT_multi_draw_arrays"; glewPrintExt(me, glew.EXT_multi_draw_arrays);
00595   glewInfoFunc(glMultiDrawArraysEXT == NULL, "glMultiDrawArraysEXT");
00596   glewInfoFunc(glMultiDrawElementsEXT == NULL, "glMultiDrawElementsEXT");
00597 }
00598 #endif /* GL_EXT_multi_draw_arrays */
00599 
00600 /* ------------------------- EXT_point_parameters ------------------------- */
00601 
00602 #ifdef GL_EXT_point_parameters
00603 static void glewInfo_EXT_point_parameters ()
00604 {
00605   char me[] = "GL_EXT_point_parameters"; glewPrintExt(me, glew.EXT_point_parameters);
00606   glewInfoFunc(glPointParameterfEXT == NULL, "glPointParameterfEXT");
00607   glewInfoFunc(glPointParameterfvEXT == NULL, "glPointParameterfvEXT");
00608 }
00609 #endif /* GL_EXT_point_parameters */
00610 
00611 /* -------------------------- EXT_secondary_color ------------------------- */
00612 
00613 #ifdef GL_EXT_secondary_color
00614 static void glewInfo_EXT_secondary_color ()
00615 {
00616   char me[] = "GL_EXT_secondary_color"; glewPrintExt(me, glew.EXT_secondary_color);
00617   glewInfoFunc(glSecondaryColor3bEXT == NULL, "glSecondaryColor3bEXT");
00618   glewInfoFunc(glSecondaryColor3bvEXT == NULL, "glSecondaryColor3bvEXT");
00619   glewInfoFunc(glSecondaryColor3dEXT == NULL, "glSecondaryColor3dEXT");
00620   glewInfoFunc(glSecondaryColor3dvEXT == NULL, "glSecondaryColor3dvEXT");
00621   glewInfoFunc(glSecondaryColor3fEXT == NULL, "glSecondaryColor3fEXT");
00622   glewInfoFunc(glSecondaryColor3fvEXT == NULL, "glSecondaryColor3fvEXT");
00623   glewInfoFunc(glSecondaryColor3iEXT == NULL, "glSecondaryColor3iEXT");
00624   glewInfoFunc(glSecondaryColor3ivEXT == NULL, "glSecondaryColor3ivEXT");
00625   glewInfoFunc(glSecondaryColor3sEXT == NULL, "glSecondaryColor3sEXT");
00626   glewInfoFunc(glSecondaryColor3svEXT == NULL, "glSecondaryColor3svEXT");
00627   glewInfoFunc(glSecondaryColor3ubEXT == NULL, "glSecondaryColor3ubEXT");
00628   glewInfoFunc(glSecondaryColor3ubvEXT == NULL, "glSecondaryColor3ubvEXT");
00629   glewInfoFunc(glSecondaryColor3uiEXT == NULL, "glSecondaryColor3uiEXT");
00630   glewInfoFunc(glSecondaryColor3uivEXT == NULL, "glSecondaryColor3uivEXT");
00631   glewInfoFunc(glSecondaryColor3usEXT == NULL, "glSecondaryColor3usEXT");
00632   glewInfoFunc(glSecondaryColor3usvEXT == NULL, "glSecondaryColor3usvEXT");
00633   glewInfoFunc(glSecondaryColorPointerEXT == NULL, "glSecondaryColorPointerEXT");
00634 }
00635 #endif /* GL_EXT_secondary_color */
00636 
00637 /* ------------------------- EXT_stencil_two_side ------------------------- */
00638 
00639 #ifdef GL_EXT_stencil_two_side
00640 static void glewInfo_EXT_stencil_two_side ()
00641 {
00642   char me[] = "GL_EXT_stencil_two_side"; glewPrintExt(me, glew.EXT_stencil_two_side);
00643   glewInfoFunc(glActiveStencilFaceEXT == NULL, "glActiveStencilFaceEXT");
00644 }
00645 #endif /* GL_EXT_stencil_two_side */
00646 
00647 /* ----------------------------- EXT_texture3D ---------------------------- */
00648 
00649 #ifdef GL_EXT_texture3D
00650 static void glewInfo_EXT_texture3D ()
00651 {
00652   char me[] = "GL_EXT_texture3D"; glewPrintExt(me, glew.EXT_texture3D);
00653   glewInfoFunc(glTexImage3DEXT == NULL, "glTexImage3DEXT");
00654   glewInfoFunc(glTexSubImage3DEXT == NULL, "glTexSubImage3DEXT");
00655 }
00656 #endif /* GL_EXT_texture3D */
00657 
00658 /* --------------------------- EXT_vertex_shader -------------------------- */
00659 
00660 #ifdef GL_EXT_vertex_shader
00661 static void glewInfo_EXT_vertex_shader ()
00662 {
00663   char me[] = "GL_EXT_vertex_shader"; glewPrintExt(me, glew.EXT_vertex_shader);
00664   glewInfoFunc(glBeginVertexShaderEXT == NULL, "glBeginVertexShaderEXT");
00665   glewInfoFunc(glEndVertexShaderEXT == NULL, "glEndVertexShaderEXT");
00666   glewInfoFunc(glBindVertexShaderEXT == NULL, "glBindVertexShaderEXT");
00667   glewInfoFunc(glGenVertexShadersEXT == NULL, "glGenVertexShadersEXT");
00668   glewInfoFunc(glDeleteVertexShaderEXT == NULL, "glDeleteVertexShaderEXT");
00669   glewInfoFunc(glShaderOp1EXT == NULL, "glShaderOp1EXT");
00670   glewInfoFunc(glShaderOp2EXT == NULL, "glShaderOp2EXT");
00671   glewInfoFunc(glShaderOp3EXT == NULL, "glShaderOp3EXT");
00672   glewInfoFunc(glSwizzleEXT == NULL, "glSwizzleEXT");
00673   glewInfoFunc(glWriteMaskEXT == NULL, "glWriteMaskEXT");
00674   glewInfoFunc(glInsertComponentEXT == NULL, "glInsertComponentEXT");
00675   glewInfoFunc(glExtractComponentEXT == NULL, "glExtractComponentEXT");
00676   glewInfoFunc(glGenSymbolsEXT == NULL, "glGenSymbolsEXT");
00677   glewInfoFunc(glSetInvariantEXT == NULL, "glSetInvariantEXT");
00678   glewInfoFunc(glSetLocalConstantEXT == NULL, "glSetLocalConstantEXT");
00679   glewInfoFunc(glVariantbvEXT == NULL, "glVariantbvEXT");
00680   glewInfoFunc(glVariantsvEXT == NULL, "glVariantsvEXT");
00681   glewInfoFunc(glVariantivEXT == NULL, "glVariantivEXT");
00682   glewInfoFunc(glVariantfvEXT == NULL, "glVariantfvEXT");
00683   glewInfoFunc(glVariantdvEXT == NULL, "glVariantdvEXT");
00684   glewInfoFunc(glVariantubvEXT == NULL, "glVariantubvEXT");
00685   glewInfoFunc(glVariantusvEXT == NULL, "glVariantusvEXT");
00686   glewInfoFunc(glVariantuivEXT == NULL, "glVariantuivEXT");
00687   glewInfoFunc(glVariantPointerEXT == NULL, "glVariantPointerEXT");
00688   glewInfoFunc(glEnableVariantClientStateEXT == NULL, "glEnableVariantClientStateEXT");
00689   glewInfoFunc(glDisableVariantClientStateEXT == NULL, "glDisableVariantClientStateEXT");
00690   glewInfoFunc(glBindLightParameterEXT == NULL, "glBindLightParameterEXT");
00691   glewInfoFunc(glBindMaterialParameterEXT == NULL, "glBindMaterialParameterEXT");
00692   glewInfoFunc(glBindTexGenParameterEXT == NULL, "glBindTexGenParameterEXT");
00693   glewInfoFunc(glBindTextureUnitParameterEXT == NULL, "glBindTextureUnitParameterEXT");
00694   glewInfoFunc(glBindParameterEXT == NULL, "glBindParameterEXT");
00695   glewInfoFunc(glIsVariantEnabledEXT == NULL, "glIsVariantEnabledEXT");
00696   glewInfoFunc(glGetVariantBooleanvEXT == NULL, "glGetVariantBooleanvEXT");
00697   glewInfoFunc(glGetVariantIntegervEXT == NULL, "glGetVariantIntegervEXT");
00698   glewInfoFunc(glGetVariantFloatvEXT == NULL, "glGetVariantFloatvEXT");
00699   glewInfoFunc(glGetVariantPointervEXT == NULL, "glGetVariantPointervEXT");
00700   glewInfoFunc(glGetInvariantBooleanvEXT == NULL, "glGetInvariantBooleanvEXT");
00701   glewInfoFunc(glGetInvariantIntegervEXT == NULL, "glGetInvariantIntegervEXT");
00702   glewInfoFunc(glGetInvariantFloatvEXT == NULL, "glGetInvariantFloatvEXT");
00703   glewInfoFunc(glGetLocalConstantBooleanvEXT == NULL, "glGetLocalConstantBooleanvEXT");
00704   glewInfoFunc(glGetLocalConstantIntegervEXT == NULL, "glGetLocalConstantIntegervEXT");
00705   glewInfoFunc(glGetLocalConstantFloatvEXT == NULL, "glGetLocalConstantFloatvEXT");
00706 }
00707 #endif /* GL_EXT_vertex_shader */
00708 
00709 /* ------------------------- EXT_vertex_weighting ------------------------- */
00710 
00711 #ifdef GL_EXT_vertex_weighting
00712 static void glewInfo_EXT_vertex_weighting ()
00713 {
00714   char me[] = "GL_EXT_vertex_weighting"; glewPrintExt(me, glew.EXT_vertex_weighting);
00715   glewInfoFunc(glVertexWeightfEXT == NULL, "glVertexWeightfEXT");
00716   glewInfoFunc(glVertexWeightfvEXT == NULL, "glVertexWeightfvEXT");
00717   glewInfoFunc(glVertexWeightPointerEXT == NULL, "glVertexWeightPointerEXT");
00718 }
00719 #endif /* GL_EXT_vertex_weighting */
00720 
00721 /* ------------------------------ WIN_swap_hint --------------------------- */
00722 
00723 #ifdef GL_WIN_swap_hint
00724 static void glewInfo_WIN_swap_hint ()
00725 {
00726   char me[] = "GL_WIN_swap_hint"; glewPrintExt(me, glew.WIN_swap_hint);
00727   glewInfoFunc(glAddSwapHintRectWin == NULL, "glAddSwapHintRectWin");
00728 }
00729 #endif /* GL_WIN_swap_hint */
00730 
00731 /* ---------------------------- ATI_draw_buffers -------------------------- */
00732 
00733 #ifdef GL_ATI_draw_buffers
00734 static void glewInfo_ATI_draw_buffers ()
00735 {
00736   char me[] = "GL_ATI_draw_buffers"; glewPrintExt(me, glew.ATI_draw_buffers);
00737   glewInfoFunc(glDrawBuffersATI == NULL, "glDrawBuffersATI");
00738 }
00739 #endif /* GL_ATI_draw_buffers */
00740 
00741 /* --------------------------- ATI_element_array -------------------------- */
00742 
00743 #ifdef GL_ATI_element_array
00744 static void glewInfo_ATI_element_array ()
00745 {
00746   char me[] = "GL_ATI_element_array"; glewPrintExt(me, glew.ATI_element_array);
00747   glewInfoFunc(glElementPointerATI == NULL, "glElementPointerATI");
00748   glewInfoFunc(glDrawElementArrayATI == NULL, "glDrawElementArrayATI");
00749   glewInfoFunc(glDrawRangeElementArrayATI == NULL, "glDrawRangeElementArrayATI");
00750 }
00751 #endif /* GL_ATI_element_array */
00752 
00753 /* -------------------------- ATI_envmap_bumpmap -------------------------- */
00754 
00755 #ifdef GL_ATI_envmap_bumpmap
00756 static void glewInfo_ATI_envmap_bumpmap ()
00757 {
00758   char me[] = "GL_ATI_envmap_bumpmap"; glewPrintExt(me, glew.ATI_envmap_bumpmap);
00759   glewInfoFunc(glTexBumpParameterivATI == NULL, "glTexBumpParameterivATI");
00760   glewInfoFunc(glTexBumpParameterfvATI == NULL, "glTexBumpParameterfvATI");
00761   glewInfoFunc(glGetTexBumpParameterivATI == NULL, "glGetTexBumpParameterivATI");
00762   glewInfoFunc(glGetTexBumpParameterfvATI == NULL, "glGetTexBumpParameterfvATI");
00763 }
00764 #endif /* GL_ATI_envmap_bumpmap */
00765 
00766 /* ------------------------- ATI_fragment_shader ------------------------- */
00767 
00768 #ifdef GL_ATI_fragment_shader
00769 static void glewInfo_ATI_fragment_shader ()
00770 {
00771   char me[] = "GL_ATI_fragment_shader"; glewPrintExt(me, glew.ATI_fragment_shader);
00772   glewInfoFunc(glGenFragmentShadersATI == NULL, "glGenFragmentShadersATI");
00773   glewInfoFunc(glBindFragmentShaderATI == NULL, "glBindFragmentShaderATI");
00774   glewInfoFunc(glDeleteFragmentShaderATI == NULL, "glDeleteFragmentShaderATI");
00775   glewInfoFunc(glBeginFragmentShaderATI == NULL, "glBeginFragmentShaderATI");
00776   glewInfoFunc(glEndFragmentShaderATI == NULL, "glEndFragmentShaderATI");
00777   glewInfoFunc(glPassTexCoordATI == NULL, "glPassTexCoordATI");
00778   glewInfoFunc(glSampleMapATI == NULL, "glSampleMapATI");
00779   glewInfoFunc(glColorFragmentOp1ATI == NULL, "glColorFragmentOp1ATI");
00780   glewInfoFunc(glColorFragmentOp2ATI == NULL, "glColorFragmentOp2ATI");
00781   glewInfoFunc(glColorFragmentOp3ATI == NULL, "glColorFragmentOp3ATI");
00782   glewInfoFunc(glAlphaFragmentOp1ATI == NULL, "glAlphaFragmentOp1ATI");
00783   glewInfoFunc(glAlphaFragmentOp2ATI == NULL, "glAlphaFragmentOp2ATI");
00784   glewInfoFunc(glAlphaFragmentOp3ATI == NULL, "glAlphaFragmentOp3ATI");
00785   glewInfoFunc(glSetFragmentShaderConstantATI == NULL, "glSetFragmentShaderConstantATI");
00786 }
00787 #endif /* GL_ATI_fragment_shader */
00788 
00789 /* ------------------------- ATI_map_object_buffer ------------------------ */
00790 
00791 #ifdef GL_ATI_map_object_buffer
00792 static void glewInfo_ATI_map_object_buffer ()
00793 {
00794   char me[] = "GL_ATI_map_object_buffer"; glewPrintExt(me, glew.ATI_map_object_buffer);
00795   glewInfoFunc(glMapObjectBufferATI == NULL, "glMapObjectBufferATI");
00796   glewInfoFunc(glUnmapObjectBufferATI == NULL, "glUnmapObjectBufferATI");
00797 }
00798 #endif /* GL_ATI_map_object_buffer */
00799 
00800 /* --------------------------- ATI_pn_triangles --------------------------- */
00801 
00802 #ifdef GL_ATI_pn_triangles
00803 static void glewInfo_ATI_pn_triangles ()
00804 {
00805   char me[] = "GL_ATI_pn_triangles"; glewPrintExt(me, glew.ATI_pn_triangles);
00806   glewInfoFunc(glPNTrianglesiATI == NULL, "glPNTrianglesiATI");
00807   glewInfoFunc(glPNTrianglesfATI == NULL, "glPNTrianglesfATI");
00808 }
00809 #endif /* GL_ATI_pn_triangles */
00810 
00811 /* -------------------------- ATI_separate_stencil ------------------------ */
00812 
00813 #ifdef GL_ATI_separate_stencil
00814 static void glewInfo_ATI_separate_stencil ()
00815 {
00816   char me[] = "GL_ATI_separate_stencil"; glewPrintExt(me, glew.ATI_separate_stencil);
00817   glewInfoFunc(glStencilOpSeparateATI == NULL, "glStencilOpSeparateATI");
00818   glewInfoFunc(glStencilFuncSeparateATI == NULL, "glStencilFuncSeparateATI");
00819 }
00820 #endif /* GL_ATI_separate_stencil */
00821 
00822 /* ------------------------ ATI_vertex_array_object ----------------------- */
00823 
00824 #ifdef GL_ATI_vertex_array_object
00825 static void glewInfo_ATI_vertex_array_object ()
00826 {
00827   char me[] = "GL_ATI_vertex_array_object"; glewPrintExt(me, glew.ATI_vertex_array_object);
00828   glewInfoFunc(glNewObjectBufferATI == NULL, "glNewObjectBufferATI");
00829   glewInfoFunc(glIsObjectBufferATI == NULL, "glIsObjectBufferATI");
00830   glewInfoFunc(glUpdateObjectBufferATI == NULL, "glUpdateObjectBufferATI");
00831   glewInfoFunc(glGetObjectBufferfvATI == NULL, "glGetObjectBufferfvATI");
00832   glewInfoFunc(glGetObjectBufferivATI == NULL, "glGetObjectBufferivATI");
00833   glewInfoFunc(glFreeObjectBufferATI == NULL, "glFreeObjectBufferATI");
00834   glewInfoFunc(glArrayObjectATI == NULL, "glArrayObjectATI");
00835   glewInfoFunc(glGetArrayObjectfvATI == NULL, "glGetArrayObjectfvATI");
00836   glewInfoFunc(glGetArrayObjectivATI == NULL, "glGetArrayObjectivATI");
00837   glewInfoFunc(glVariantArrayObjectATI == NULL, "glVariantArrayObjectATI");
00838   glewInfoFunc(glGetVariantArrayObjectfvATI == NULL, "glGetVariantArrayObjectfvATI");
00839   glewInfoFunc(glGetVariantArrayObjectivATI == NULL, "glGetVariantArrayObjectivATI");
00840 }
00841 #endif /* GL_ATI_vertex_array_object */
00842 
00843 /* -------------------- ATI_vertex_attrib_array_object -------------------- */
00844 
00845 #ifdef GL_ATI_vertex_attrib_array_object
00846 static void glewInfo_ATI_vertex_attrib_array_object ()
00847 {
00848   char me[] = "GL_ATI_vertex_attrib_array_object"; glewPrintExt(me, glew.ATI_vertex_attrib_array_object);
00849   glewInfoFunc(glVertexAttribArrayObjectATI == NULL, "glVertexAttribArrayObjectATI");
00850   glewInfoFunc(glGetVertexAttribArrayObjectfvATI == NULL, "glGetVertexAttribArrayObjectfvATI");
00851   glewInfoFunc(glGetVertexAttribArrayObjectivATI == NULL, "glGetVertexAttribArrayObjectivATI");
00852 }
00853 #endif /* GL_ATI_vertex_attrib_array_object */
00854 
00855 /* -------------------------- ATI_vertex_streams -------------------------- */
00856 
00857 #ifdef GL_ATI_vertex_streams 
00858 static void glewInfo_ATI_vertex_streams ()
00859 {
00860   char me[] = "GL_ATI_vertex_streams"; glewPrintExt(me, glew.ATI_vertex_streams);
00861   glewInfoFunc(glClientActiveVertexStreamATI == NULL, "glClientActiveVertexStreamATI");
00862   glewInfoFunc(glVertexBlendEnviATI == NULL, "glVertexBlendEnviATI");
00863   glewInfoFunc(glVertexBlendEnvfATI == NULL, "glVertexBlendEnvfATI");
00864   glewInfoFunc(glVertexStream2sATI == NULL, "glVertexStream2sATI");
00865   glewInfoFunc(glVertexStream2svATI == NULL, "glVertexStream2svATI");
00866   glewInfoFunc(glVertexStream2iATI == NULL, "glVertexStream2iATI");
00867   glewInfoFunc(glVertexStream2ivATI == NULL, "glVertexStream2ivATI");
00868   glewInfoFunc(glVertexStream2fATI == NULL, "glVertexStream2fATI");
00869   glewInfoFunc(glVertexStream2fvATI == NULL, "glVertexStream2fvATI");
00870   glewInfoFunc(glVertexStream2dATI == NULL, "glVertexStream2dATI");
00871   glewInfoFunc(glVertexStream2dvATI == NULL, "glVertexStream2dvATI");
00872   glewInfoFunc(glVertexStream3sATI == NULL, "glVertexStream3sATI");
00873   glewInfoFunc(glVertexStream3svATI == NULL, "glVertexStream3svATI");
00874   glewInfoFunc(glVertexStream3iATI == NULL, "glVertexStream3iATI");
00875   glewInfoFunc(glVertexStream3ivATI == NULL, "glVertexStream3ivATI");
00876   glewInfoFunc(glVertexStream3fATI == NULL, "glVertexStream3fATI");
00877   glewInfoFunc(glVertexStream3fvATI == NULL, "glVertexStream3fvATI");
00878   glewInfoFunc(glVertexStream3dATI == NULL, "glVertexStream3dATI");
00879   glewInfoFunc(glVertexStream3dvATI == NULL, "glVertexStream3dvATI");
00880   glewInfoFunc(glVertexStream4sATI == NULL, "glVertexStream4sATI");
00881   glewInfoFunc(glVertexStream4svATI == NULL, "glVertexStream4svATI");
00882   glewInfoFunc(glVertexStream4iATI == NULL, "glVertexStream4iATI");
00883   glewInfoFunc(glVertexStream4ivATI == NULL, "glVertexStream4ivATI");
00884   glewInfoFunc(glVertexStream4fATI == NULL, "glVertexStream4fATI");
00885   glewInfoFunc(glVertexStream4fvATI == NULL, "glVertexStream4fvATI");
00886   glewInfoFunc(glVertexStream4dATI == NULL, "glVertexStream4dATI");
00887   glewInfoFunc(glVertexStream4dvATI == NULL, "glVertexStream4dvATI");
00888   glewInfoFunc(glNormalStream3bATI == NULL, "glNormalStream3bATI");
00889   glewInfoFunc(glNormalStream3bvATI == NULL, "glNormalStream3bvATI");
00890   glewInfoFunc(glNormalStream3sATI == NULL, "glNormalStream3sATI");
00891   glewInfoFunc(glNormalStream3svATI == NULL, "glNormalStream3svATI");
00892   glewInfoFunc(glNormalStream3iATI == NULL, "glNormalStream3iATI");
00893   glewInfoFunc(glNormalStream3ivATI == NULL, "glNormalStream3ivATI");
00894   glewInfoFunc(glNormalStream3fATI == NULL, "glNormalStream3fATI");
00895   glewInfoFunc(glNormalStream3fvATI == NULL, "glNormalStream3fvATI");
00896   glewInfoFunc(glNormalStream3dATI == NULL, "glNormalStream3dATI");
00897   glewInfoFunc(glNormalStream3dvATI == NULL, "glNormalStream3dvATI");
00898 }
00899 #endif /* GL_ATI_vertex_streams */
00900 
00901 /* --------------------------- NV_element_array --------------------------- */
00902 
00903 #ifdef GL_NV_element_array
00904 static void glewInfo_NV_element_array ()
00905 {
00906   char me[] = "GL_NV_element_array"; glewPrintExt(me, glew.NV_element_array);
00907   glewInfoFunc(glElementPointerNV == NULL, "glElementPointerNV");
00908   glewInfoFunc(glDrawElementArrayNV == NULL, "glDrawElementArrayNV");
00909   glewInfoFunc(glDrawRangeElementArrayNV == NULL, "glDrawRangeElementArrayNV");
00910   glewInfoFunc(glMultiDrawElementArrayNV == NULL, "glMultiDrawElementArrayNV");
00911   glewInfoFunc(glMultiDrawRangeElementArrayNV == NULL, "glMultiDrawRangeElementArrayNV");
00912 }
00913 #endif /* GL_NV_element_array */
00914 
00915 /* ----------------------------- NV_evaluators ---------------------------- */
00916 
00917 #ifdef GL_NV_evaluators
00918 static void glewInfo_NV_evaluators ()
00919 {
00920   char me[] = "GL_NV_evaluators"; glewPrintExt(me, glew.NV_evaluators);
00921   glewInfoFunc(glMapControlPointsNV == NULL, "glMapControlPointsNV");
00922   glewInfoFunc(glMapParameterivNV == NULL, "glMapParameterivNV");
00923   glewInfoFunc(glMapParameterfvNV == NULL, "glMapParameterfvNV");
00924   glewInfoFunc(glGetMapControlPointsNV == NULL, "glGetMapControlPointsNV");
00925   glewInfoFunc(glGetMapParameterivNV == NULL, "glGetMapParameterivNV");
00926   glewInfoFunc(glGetMapParameterfvNV == NULL, "glGetMapParameterfvNV");
00927   glewInfoFunc(glGetMapAttribParameterivNV == NULL, "glGetMapAttribParameterivNV");
00928   glewInfoFunc(glGetMapAttribParameterfvNV == NULL, "glGetMapAttribParameterfvNV");
00929   glewInfoFunc(glEvalMapsNV == NULL, "glEvalMapsNV");
00930 }
00931 #endif /* GL_NV_evaluators */
00932 
00933 /* -------------------------- NV_fragment_program ------------------------- */
00934 
00935 #ifdef GL_NV_fragment_program
00936 static void glewInfo_NV_fragment_program ()
00937 {
00938   char me[] = "GL_NV_fragment_program"; glewPrintExt(me, glew.NV_fragment_program);
00939   glewInfoFunc(glProgramNamedParameter4fNV == NULL, "glProgramNamedParameter4fNV");
00940   glewInfoFunc(glProgramNamedParameter4dNV == NULL, "glProgramNamedParameter4dNV");
00941   glewInfoFunc(glProgramNamedParameter4fvNV == NULL, "glProgramNamedParameter4fvNV");
00942   glewInfoFunc(glProgramNamedParameter4dvNV == NULL, "glProgramNamedParameter4dvNV");
00943   glewInfoFunc(glGetProgramNamedParameterfvNV == NULL, "glGetProgramNamedParameterfvNV");
00944   glewInfoFunc(glGetProgramNamedParameterdvNV == NULL, "glGetProgramNamedParameterdvNV");
00945 #ifndef GL_ARB_vertex_program
00946   glewInfoFunc(glProgramLocalParameter4dARB == NULL, "glProgramLocalParameter4dARB");
00947   glewInfoFunc(glProgramLocalParameter4dvARB == NULL, "glProgramLocalParameter4dvARB");
00948   glewInfoFunc(glProgramLocalParameter4fARB == NULL, "glProgramLocalParameter4fARB");
00949   glewInfoFunc(glProgramLocalParameter4fvARB == NULL, "glProgramLocalParameter4fvARB");
00950   glewInfoFunc(glGetProgramLocalParameterdvARB == NULL, "glGetProgramLocalParameterdvARB");
00951   glewInfoFunc(glGetProgramLocalParameterfvARB == NULL, "glGetProgramLocalParameterfvARB");
00952 #endif /* GL_ARB_vertex_program */
00953 }
00954 
00955 #endif /* GL_NV_fragment_program */
00956 
00957 /* ------------------------------- NV_fence ------------------------------- */
00958 
00959 #ifdef GL_NV_fence
00960 static void glewInfo_NV_fence ()
00961 {
00962   char me[] = "GL_NV_fence"; glewPrintExt(me, glew.NV_fence);
00963   glewInfoFunc(glGenFencesNV == NULL, "glGenFencesNV");
00964   glewInfoFunc(glDeleteFencesNV == NULL, "glDeleteFencesNV");
00965   glewInfoFunc(glSetFenceNV == NULL, "glSetFenceNV");
00966   glewInfoFunc(glTestFenceNV == NULL, "glTestFenceNV");
00967   glewInfoFunc(glFinishFenceNV == NULL, "glFinishFenceNV");
00968   glewInfoFunc(glIsFenceNV == NULL, "glIsFenceNV");
00969   glewInfoFunc(glGetFenceivNV == NULL, "glGetFenceivNV");
00970 }
00971 #endif /* GL_NV_fence */
00972 
00973 /* -------------------------- NV_occlusion_query -------------------------- */
00974 
00975 #ifdef GL_NV_occlusion_query
00976 static void glewInfo_NV_occlusion_query ()
00977 {
00978   char me[] = "GL_NV_occlusion_query"; glewPrintExt(me, glew.NV_occlusion_query);
00979   glewInfoFunc(glGenOcclusionQueriesNV == NULL, "glGenOcclusionQueriesNV");
00980   glewInfoFunc(glDeleteOcclusionQueriesNV == NULL, "glDeleteOcclusionQueriesNV");
00981   glewInfoFunc(glIsOcclusionQueryNV == NULL, "glIsOcclusionQueryNV");
00982   glewInfoFunc(glBeginOcclusionQueryNV == NULL, "glBeginOcclusionQueryNV");
00983   glewInfoFunc(glEndOcclusionQueryNV == NULL, "glEndOcclusionQueryNV");
00984   glewInfoFunc(glGetOcclusionQueryivNV == NULL, "glGetOcclusionQueryivNV");
00985   glewInfoFunc(glGetOcclusionQueryuivNV == NULL, "glGetOcclusionQueryuivNV");
00986 }
00987 #endif /* GL_NV_occlusion_query */
00988 
00989 /* -------------------------- NV_pixel_data_range ------------------------- */
00990 
00991 #ifdef GL_NV_pixel_data_range
00992 static void glewInfo_NV_pixel_data_range ()
00993 {
00994   char me[] = "GL_NV_pixel_data_range"; glewPrintExt(me, glew.NV_pixel_data_range);
00995   glewInfoFunc(glPixelDataRangeNV == NULL, "glPixelDataRangeNV");
00996   glewInfoFunc(glFlushPixelDataRangeNV == NULL, "glFlushPixelDataRangeNV");
00997 }
00998 #endif /* GL_NV_pixel_data_range */
00999 
01000 /* ---------------------------- NV_point_sprite --------------------------- */
01001 
01002 #ifdef GL_NV_point_sprite
01003 static void glewInfo_NV_point_sprite ()
01004 {
01005   char me[] = "GL_NV_point_sprite"; glewPrintExt(me, glew.NV_point_sprite);
01006   glewInfoFunc(glPointParameteriNV == NULL, "glPointParameteriNV");
01007   glewInfoFunc(glPointParameterivNV == NULL, "glPointParameterivNV");
01008 }
01009 #endif /* GL_NV_point_sprite */
01010 
01011 /* ------------------------- NV_primitive_restart ------------------------- */
01012 
01013 #ifdef GL_NV_primitive_restart
01014 static void glewInfo_NV_primitive_restart ()
01015 {
01016   char me[] = "GL_NV_primitive_restart"; glewPrintExt(me, glew.NV_primitive_restart);
01017   glewInfoFunc(glPrimitiveRestartNV == NULL, "glPrimitiveRestartNV");
01018   glewInfoFunc(glPrimitiveRestartIndexNV == NULL, "glPrimitiveRestartIndexNV");
01019 }
01020 #endif /* GL_NV_primitive_restart */
01021 
01022 /* ------------------------- NV_register_combiners ------------------------ */
01023 
01024 #ifdef GL_NV_register_combiners
01025 static void glewInfo_NV_register_combiners ()
01026 {
01027   char me[] = "GL_NV_register_combiners"; glewPrintExt(me, glew.NV_register_combiners);
01028   glewInfoFunc(glCombinerParameterfvNV == NULL, "glCombinerParameterfvNV");
01029   glewInfoFunc(glCombinerParameterfNV == NULL, "glCombinerParameterfNV");
01030   glewInfoFunc(glCombinerParameterivNV == NULL, "glCombinerParameterivNV");
01031   glewInfoFunc(glCombinerParameteriNV == NULL, "glCombinerParameteriNV");
01032   glewInfoFunc(glCombinerInputNV == NULL, "glCombinerInputNV");
01033   glewInfoFunc(glCombinerOutputNV == NULL, "glCombinerOutputNV");
01034   glewInfoFunc(glFinalCombinerInputNV == NULL, "glFinalCombinerInputNV");
01035   glewInfoFunc(glGetCombinerInputParameterfvNV == NULL, "glGetCombinerInputParameterfvNV");
01036   glewInfoFunc(glGetCombinerInputParameterivNV == NULL, "glGetCombinerInputParameterivNV");
01037   glewInfoFunc(glGetCombinerOutputParameterfvNV == NULL, "glGetCombinerOutputParameterfvNV");
01038   glewInfoFunc(glGetCombinerOutputParameterivNV == NULL, "glGetCombinerOutputParameterivNV");
01039   glewInfoFunc(glGetFinalCombinerInputParameterfvNV == NULL, "glGetFinalCombinerInputParameterfvNV");
01040   glewInfoFunc(glGetFinalCombinerInputParameterivNV == NULL, "glGetFinalCombinerInputParameterivNV");
01041 }
01042 #endif /* GL_NV_register_combiners */
01043 
01044 /* ------------------------ NV_register_combiners2 ------------------------ */
01045 
01046 #ifdef GL_NV_register_combiners2
01047 static void glewInfo_NV_register_combiners2 ()
01048 {
01049   char me[] = "GL_NV_register_combiners2"; glewPrintExt(me, glew.NV_register_combiners2);
01050   glewInfoFunc(glCombinerStageParameterfvNV == NULL, "glCombinerStageParameterfvNV");
01051   glewInfoFunc(glGetCombinerStageParameterfvNV == NULL, "glGetCombinerStageParameterfvNV");
01052 }
01053 #endif /* GL_NV_register_combiners2 */
01054 
01055 /* ------------------------- NV_vertex_array_range ------------------------ */
01056 
01057 #ifdef GL_NV_vertex_array_range
01058 static void glewInfo_NV_vertex_array_range ()
01059 {
01060   char me[] = "GL_NV_vertex_array_range"; glewPrintExt(me, glew.NV_vertex_array_range);
01061   glewInfoFunc(glFlushVertexArrayRangeNV == NULL, "glFlushVertexArrayRangeNV");
01062   glewInfoFunc(glVertexArrayRangeNV == NULL, "glVertexArrayRangeNV");
01063 }
01064 #endif /* GL_NV_vertex_array_range */
01065 
01066 /* --------------------------- NV_vertex_program -------------------------- */
01067 
01068 #ifdef GL_NV_vertex_program
01069 static void glewInfo_NV_vertex_program ()
01070 {
01071   char me[] = "GL_NV_vertex_program"; glewPrintExt(me, glew.NV_vertex_program);
01072   glewInfoFunc(glBindProgramNV == NULL, "glBindProgramNV");
01073   glewInfoFunc(glDeleteProgramsNV == NULL, "glDeleteProgramsNV");
01074   glewInfoFunc(glExecuteProgramNV == NULL, "glExecuteProgramNV");
01075   glewInfoFunc(glGenProgramsNV == NULL, "glGenProgramsNV");
01076   glewInfoFunc(glAreProgramsResidentNV == NULL, "glAreProgramsResidentNV");
01077   glewInfoFunc(glRequestResidentProgramsNV == NULL, "glRequestResidentProgramsNV");
01078   glewInfoFunc(glGetProgramParameterfvNV == NULL, "glGetProgramParameterfvNV");
01079   glewInfoFunc(glGetProgramParameterdvNV == NULL, "glGetProgramParameterdvNV");
01080   glewInfoFunc(glGetProgramivNV == NULL, "glGetProgramivNV");
01081   glewInfoFunc(glGetProgramStringNV == NULL, "glGetProgramStringNV");
01082   glewInfoFunc(glGetTrackMatrixivNV == NULL, "glGetTrackMatrixivNV");
01083   glewInfoFunc(glGetVertexAttribdvNV == NULL, "glGetVertexAttribdvNV");
01084   glewInfoFunc(glGetVertexAttribfvNV == NULL, "glGetVertexAttribfvNV");
01085   glewInfoFunc(glGetVertexAttribivNV == NULL, "glGetVertexAttribivNV");
01086   glewInfoFunc(glGetVertexAttribPointervNV == NULL, "glGetVertexAttribPointervNV");
01087   glewInfoFunc(glIsProgramNV == NULL, "glIsProgramNV");
01088   glewInfoFunc(glLoadProgramNV == NULL, "glLoadProgramNV");
01089   glewInfoFunc(glProgramParameter4fNV == NULL, "glProgramParameter4fNV");
01090   glewInfoFunc(glProgramParameter4dNV == NULL, "glProgramParameter4dNV");
01091   glewInfoFunc(glProgramParameter4dvNV == NULL, "glProgramParameter4dvNV");
01092   glewInfoFunc(glProgramParameter4fvNV == NULL, "glProgramParameter4fvNV");
01093   glewInfoFunc(glProgramParameters4dvNV == NULL, "glProgramParameters4dvNV");
01094   glewInfoFunc(glProgramParameters4fvNV == NULL, "glProgramParameters4fvNV");
01095   glewInfoFunc(glTrackMatrixNV == NULL, "glTrackMatrixNV");
01096   glewInfoFunc(glVertexAttribPointerNV == NULL, "glVertexAttribPointerNV");
01097   glewInfoFunc(glVertexAttrib1sNV == NULL, "glVertexAttrib1sNV");
01098   glewInfoFunc(glVertexAttrib1fNV == NULL, "glVertexAttrib1fNV");
01099   glewInfoFunc(glVertexAttrib1dNV == NULL, "glVertexAttrib1dNV");
01100   glewInfoFunc(glVertexAttrib2sNV == NULL, "glVertexAttrib2sNV");
01101   glewInfoFunc(glVertexAttrib2fNV == NULL, "glVertexAttrib2fNV");
01102   glewInfoFunc(glVertexAttrib2dNV == NULL, "glVertexAttrib2dNV");
01103   glewInfoFunc(glVertexAttrib3sNV == NULL, "glVertexAttrib3sNV");
01104   glewInfoFunc(glVertexAttrib3fNV == NULL, "glVertexAttrib3fNV");
01105   glewInfoFunc(glVertexAttrib3dNV == NULL, "glVertexAttrib3dNV");
01106   glewInfoFunc(glVertexAttrib4sNV == NULL, "glVertexAttrib4sNV");
01107   glewInfoFunc(glVertexAttrib4fNV == NULL, "glVertexAttrib4fNV");
01108   glewInfoFunc(glVertexAttrib4dNV == NULL, "glVertexAttrib4dNV");
01109   glewInfoFunc(glVertexAttrib4ubNV == NULL, "glVertexAttrib4ubNV");
01110   glewInfoFunc(glVertexAttrib1svNV == NULL, "glVertexAttrib1svNV");
01111   glewInfoFunc(glVertexAttrib1fvNV == NULL, "glVertexAttrib1fvNV");
01112   glewInfoFunc(glVertexAttrib1dvNV == NULL, "glVertexAttrib1dvNV");
01113   glewInfoFunc(glVertexAttrib2svNV == NULL, "glVertexAttrib2svNV");
01114   glewInfoFunc(glVertexAttrib2fvNV == NULL, "glVertexAttrib2fvNV");
01115   glewInfoFunc(glVertexAttrib2dvNV == NULL, "glVertexAttrib2dvNV");
01116   glewInfoFunc(glVertexAttrib3svNV == NULL, "glVertexAttrib3svNV");
01117   glewInfoFunc(glVertexAttrib3fvNV == NULL, "glVertexAttrib3fvNV");
01118   glewInfoFunc(glVertexAttrib3dvNV == NULL, "glVertexAttrib3dvNV");
01119   glewInfoFunc(glVertexAttrib4svNV == NULL, "glVertexAttrib4svNV");
01120   glewInfoFunc(glVertexAttrib4fvNV == NULL, "glVertexAttrib4fvNV");
01121   glewInfoFunc(glVertexAttrib4dvNV == NULL, "glVertexAttrib4dvNV");
01122   glewInfoFunc(glVertexAttrib4ubvNV == NULL, "glVertexAttrib4ubvNV");
01123   glewInfoFunc(glVertexAttribs1svNV == NULL, "glVertexAttribs1svNV");
01124   glewInfoFunc(glVertexAttribs1fvNV == NULL, "glVertexAttribs1fvNV");
01125   glewInfoFunc(glVertexAttribs1dvNV == NULL, "glVertexAttribs1dvNV");
01126   glewInfoFunc(glVertexAttribs2svNV == NULL, "glVertexAttribs2svNV");
01127   glewInfoFunc(glVertexAttribs2fvNV == NULL, "glVertexAttribs2fvNV");
01128   glewInfoFunc(glVertexAttribs2dvNV == NULL, "glVertexAttribs2dvNV");
01129   glewInfoFunc(glVertexAttribs3svNV == NULL, "glVertexAttribs3svNV");
01130   glewInfoFunc(glVertexAttribs3fvNV == NULL, "glVertexAttribs3fvNV");
01131   glewInfoFunc(glVertexAttribs3dvNV == NULL, "glVertexAttribs3dvNV");
01132   glewInfoFunc(glVertexAttribs4svNV == NULL, "glVertexAttribs4svNV");
01133   glewInfoFunc(glVertexAttribs4fvNV == NULL, "glVertexAttribs4fvNV");
01134   glewInfoFunc(glVertexAttribs4dvNV == NULL, "glVertexAttribs4dvNV");
01135   glewInfoFunc(glVertexAttribs4ubvNV == NULL, "glVertexAttribs4ubvNV");
01136 }
01137 #endif /* GL_NV_vertex_program */
01138 
01139 #ifdef _WIN32
01140 
01141 /* ---------------------------- ARB_buffer_region ------------------------- */
01142 
01143 #ifdef WGL_ARB_buffer_region
01144 static void wglewInfo_ARB_buffer_region ()
01145 {
01146   char me[] = "WGL_ARB_buffer_region"; glewPrintExt(me, wglew.ARB_buffer_region);
01147   glewInfoFunc(wglCreateBufferRegionARB == NULL, "wglCreateBufferRegionARB");
01148   glewInfoFunc(wglDeleteBufferRegionARB == NULL, "wglDeleteBufferRegionARB");
01149   glewInfoFunc(wglSaveBufferRegionARB == NULL, "wglSaveBufferRegionARB");
01150   glewInfoFunc(wglRestoreBufferRegionARB == NULL, "wglRestoreBufferRegionARB");
01151 }
01152 #endif /* WGL_ARB_buffer_region */
01153 
01154 /* -------------------------- ARB_extensions_string ----------------------- */
01155 
01156 #ifdef WGL_ARB_extensions_string
01157 static void wglewInfo_ARB_extensions_string ()
01158 {
01159   char me[] = "WGL_ARB_extensions_string"; glewPrintExt(me, wglew.ARB_extensions_string);
01160   glewInfoFunc(wglGetExtensionsStringARB == NULL, "wglGetExtensionsStringARB");
01161 }
01162 #endif /* WGL_ARB_extensions_string */
01163 
01164 /* -------------------------- ARB_make_current_read ----------------------- */
01165 
01166 #ifdef WGL_ARB_make_current_read
01167 static void wglewInfo_ARB_make_current_read ()
01168 {
01169   char me[] = "WGL_ARB_make_current_read"; glewPrintExt(me, wglew.ARB_make_current_read);
01170   glewInfoFunc(wglMakeContextCurrentARB == NULL, "wglMakeContextCurrentARB");
01171   glewInfoFunc(wglGetCurrentReadDCARB == NULL, "wglGetCurrentReadDCARB");
01172 }
01173 #endif /* WGL_ARB_make_current_read */
01174 
01175 /* ------------------------------ ARB_pbuffer ----------------------------- */
01176 
01177 #ifdef WGL_ARB_pbuffer
01178 static void wglewInfo_ARB_pbuffer ()
01179 {
01180   char me[] = "WGL_ARB_pbuffer"; glewPrintExt(me, wglew.ARB_pbuffer);
01181   glewInfoFunc(wglCreatePbufferARB == NULL, "wglCreatePbufferARB");
01182   glewInfoFunc(wglGetPbufferDCARB == NULL, "wglGetPbufferDCARB");
01183   glewInfoFunc(wglReleasePbufferDCARB == NULL, "wglReleasePbufferDCARB");
01184   glewInfoFunc(wglDestroyPbufferARB == NULL, "wglDestroyPbufferARB");
01185   glewInfoFunc(wglQueryPbufferARB == NULL, "wglQueryPbufferARB");
01186 }
01187 #endif /* WGL_ARB_pbuffer */
01188 
01189 /* --------------------------- ARB_pixel_format --------------------------- */
01190 
01191 #ifdef WGL_ARB_pixel_format
01192 static void wglewInfo_ARB_pixel_format ()
01193 {
01194   char me[] = "WGL_ARB_pixel_format"; glewPrintExt(me, wglew.ARB_pixel_format);
01195   glewInfoFunc(wglGetPixelFormatAttribivARB == NULL, "wglGetPixelFormatAttribivARB");
01196   glewInfoFunc(wglGetPixelFormatAttribfvARB == NULL, "wglGetPixelFormatAttribfvARB");
01197   glewInfoFunc(wglChoosePixelFormatARB == NULL, "wglChoosePixelFormatARB");
01198 }
01199 #endif /* WGL_ARB_pixel_format */
01200 
01201 /* -------------------------- ARB_render_texture -------------------------- */
01202 
01203 #ifdef WGL_ARB_render_texture
01204 static void wglewInfo_ARB_render_texture ()
01205 {
01206   char me[] = "WGL_ARB_render_texture"; glewPrintExt(me, wglew.ARB_render_texture);
01207   glewInfoFunc(wglBindTexImageARB == NULL, "wglBindTexImageARB");
01208   glewInfoFunc(wglReleaseTexImageARB == NULL, "wglReleaseTexImageARB");
01209   glewInfoFunc(wglSetPbufferAttribARB == NULL, "wglSetPbufferAttribARB");
01210 }
01211 #endif /* WGL_ARB_render_texture */
01212 
01213 /* ------------------------- EXT_display_color_table ---------------------- */
01214 
01215 #ifdef WGL_EXT_display_color_table
01216 static void wglewInfo_EXT_display_color_table ()
01217 {
01218   char me[] = "WGL_EXT_display_color_table"; glewPrintExt(me, wglew.EXT_display_color_table);
01219   glewInfoFunc(wglCreateDisplayColorTableEXT == NULL, "wglCreateDisplayColorTableEXT");
01220   glewInfoFunc(wglLoadDisplayColorTableEXT == NULL, "wglLoadDisplayColorTableEXT");
01221   glewInfoFunc(wglBindDisplayColorTableEXT == NULL, "wglBindDisplayColorTableEXT");
01222   glewInfoFunc(wglDestroyDisplayColorTableEXT == NULL, "wglDestroyDisplayColorTableEXT");
01223 }
01224 #endif /* WGL_EXT_display_color_table */
01225 
01226 /* -------------------------- EXT_make_current_read ----------------------- */
01227 
01228 #ifdef WGL_EXT_make_current_read
01229 static void wglewInfo_EXT_make_current_read ()
01230 {
01231   char me[] = "WGL_EXT_make_current_read"; glewPrintExt(me, wglew.EXT_make_current_read);
01232   glewInfoFunc(wglMakeContextCurrentEXT == NULL, "wglMakeContextCurrentEXT");
01233   glewInfoFunc(wglGetCurrentReadDCEXT == NULL, "wglGetCurrentReadDCEXT");
01234 }
01235 #endif /* WGL_EXT_make_current_read */
01236 
01237 /* ------------------------- EXT_extensions_string ------------------------ */
01238 
01239 #ifdef WGL_EXT_extensions_string
01240 static void wglewInfo_EXT_extensions_string ()
01241 {
01242   char me[] = "WGL_EXT_extensions_string"; glewPrintExt(me, wglew.EXT_extensions_string);
01243   glewInfoFunc(wglGetExtensionsStringEXT == NULL, "wglGetExtensionsStringEXT");
01244 }
01245 #endif /* WGL_EXT_extensions_string */
01246 
01247 /* ----------------------------- EXT_pixel_format ------------------------- */
01248 
01249 #ifdef WGL_EXT_pixel_format
01250 static void wglewInfo_EXT_pixel_format ()
01251 {
01252   char me[] = "WGL_EXT_pixel_format"; glewPrintExt(me, wglew.EXT_pixel_format);
01253   glewInfoFunc(wglGetPixelFormatAttribivEXT == NULL, "wglGetPixelFormatAttribivEXT");
01254   glewInfoFunc(wglGetPixelFormatAttribfvEXT == NULL, "wglGetPixelFormatAttribfvEXT");
01255   glewInfoFunc(wglChoosePixelFormatEXT == NULL, "wglChoosePixelFormatEXT");
01256 }
01257 
01258 #endif /* WGL_EXT_pixel_format */
01259 
01260 /* ------------------------------- EXT_pbuffer ---------------------------- */
01261 
01262 #ifdef WGL_EXT_pbuffer
01263 static void wglewInfo_EXT_pbuffer ()
01264 {
01265   char me[] = "WGL_EXT_pbuffer"; glewPrintExt(me, wglew.EXT_pbuffer);
01266   glewInfoFunc(wglCreatePbufferEXT == NULL, "wglCreatePbufferEXT");
01267   glewInfoFunc(wglGetPbufferDCEXT == NULL, "wglGetPbufferDCEXT");
01268   glewInfoFunc(wglReleasePbufferDCEXT == NULL, "wglReleasePbufferDCEXT");
01269   glewInfoFunc(wglDestroyPbufferEXT == NULL, "wglDestroyPbufferEXT");
01270   glewInfoFunc(wglQueryPbufferEXT == NULL, "wglQueryPbufferEXT");
01271 }
01272 
01273 #endif /* WGL_EXT_pbuffer */
01274 
01275 /* --------------------------- EXT_swap_control --------------------------- */
01276 
01277 #ifdef WGL_EXT_swap_control
01278 static void wglewInfo_EXT_swap_control ()
01279 {
01280   char me[] = "WGL_EXT_swap_control"; glewPrintExt(me, wglew.EXT_swap_control);
01281   glewInfoFunc(wglSwapIntervalEXT == NULL, "wglSwapIntervalEXT");
01282   glewInfoFunc(wglGetSwapIntervalEXT == NULL, "wglGetSwapIntervalEXT");
01283 }
01284 #endif /* WGL_EXT_swap_control */
01285 
01286 /* ------------------------ I3D_digital_video_control --------------------- */
01287 
01288 #ifdef WGL_I3D_digital_video_control
01289 static void wglewInfo_I3D_digital_video_control ()
01290 {
01291   char me[] = "WGL_I3D_digital_video_control"; glewPrintExt(me, wglew.I3D_digital_video_control);
01292   glewInfoFunc(wglGetDigitalVideoParametersI3D == NULL, "wglGetDigitalVideoParametersI3D");
01293   glewInfoFunc(wglSetDigitalVideoParametersI3D == NULL, "wglSetDigitalVideoParametersI3D");
01294 }
01295 #endif /* WGL_I3D_digital_video_control */
01296 
01297 /* -------------------------------- I3D_gamma ----------------------------- */
01298 
01299 #ifdef WGL_I3D_gamma
01300 static void wglewInfo_I3D_gamma ()
01301 {
01302   char me[] = "WGL_I3D_gamma"; glewPrintExt(me, wglew.I3D_gamma);
01303   glewInfoFunc(wglGetGammaTableParametersI3D == NULL, "wglGetGammaTableParametersI3D");
01304   glewInfoFunc(wglSetGammaTableParametersI3D == NULL, "wglSetGammaTableParametersI3D");
01305   glewInfoFunc(wglGetGammaTableI3D == NULL, "wglGetGammaTableI3D");
01306   glewInfoFunc(wglSetGammaTableI3D == NULL, "wglSetGammaTableI3D");
01307 }
01308 #endif /* WGL_I3D_gamma */
01309 
01310 /* ------------------------------- I3D_genlock ---------------------------- */
01311 
01312 #ifdef WGL_I3D_genlock
01313 static void wglewInfo_I3D_genlock ()
01314 {
01315   char me[] = "WGL_I3D_genlock"; glewPrintExt(me, wglew.I3D_genlock);
01316   glewInfoFunc(wglEnableGenlockI3D == NULL, "wglEnableGenlockI3D");
01317   glewInfoFunc(wglDisableGenlockI3D == NULL, "wglDisableGenlockI3D");
01318   glewInfoFunc(wglIsEnabledGenlockI3D == NULL, "wglIsEnabledGenlockI3D");
01319   glewInfoFunc(wglGenlockSourceI3D == NULL, "wglGenlockSourceI3D");
01320   glewInfoFunc(wglGetGenlockSourceI3D == NULL, "wglGetGenlockSourceI3D");
01321   glewInfoFunc(wglGenlockSourceEdgeI3D == NULL, "wglGenlockSourceEdgeI3D");
01322   glewInfoFunc(wglGetGenlockSourceEdgeI3D == NULL, "wglGetGenlockSourceEdgeI3D");
01323   glewInfoFunc(wglGenlockSampleRateI3D == NULL, "wglGenlockSampleRateI3D");
01324   glewInfoFunc(wglGetGenlockSampleRateI3D == NULL, "wglGetGenlockSampleRateI3D");
01325   glewInfoFunc(wglGenlockSourceDelayI3D == NULL, "wglGenlockSourceDelayI3D");
01326   glewInfoFunc(wglGetGenlockSourceDelayI3D == NULL, "wglGetGenlockSourceDelayI3D");
01327   glewInfoFunc(wglQueryGenlockMaxSourceDelayI3D == NULL, "wglQueryGenlockMaxSourceDelayI3D");
01328 }
01329 #endif /* WGL_I3D_genlock */
01330 
01331 /* ---------------------------- I3D_image_buffer -------------------------- */
01332 
01333 #ifdef WGL_I3D_image_buffer
01334 static void wglewInfo_I3D_image_buffer ()
01335 {
01336   char me[] = "WGL_I3D_image_buffer"; glewPrintExt(me, wglew.I3D_image_buffer);
01337   glewInfoFunc(wglCreateImageBufferI3D == NULL, "wglCreateImageBufferI3D");
01338   glewInfoFunc(wglDestroyImageBufferI3D == NULL, "wglDestroyImageBufferI3D");
01339   glewInfoFunc(wglAssociateImageBufferEventsI3D == NULL, "wglAssociateImageBufferEventsI3D");
01340   glewInfoFunc(wglReleaseImageBufferEventsI3D == NULL, "wglReleaseImageBufferEventsI3D");
01341 }
01342 #endif /* WGL_I3D_image_buffer */
01343 
01344 /* --------------------------- I3DI3D_swap_frame_usage_swap_frame_lock ------------------------ */
01345 
01346 #ifdef WGL_I3D_swap_frame_lock
01347 static void wglewInfo_I3D_swap_frame_lock ()
01348 {
01349   char me[] = "WGL_I3D_swap_frame_lock"; glewPrintExt(me, wglew.I3D_swap_frame_lock);
01350   glewInfoFunc(wglEnableFrameLockI3D == NULL, "wglEnableFrameLockI3D");
01351   glewInfoFunc(wglDisableFrameLockI3D == NULL, "wglDisableFrameLockI3D");
01352   glewInfoFunc(wglIsEnabledFrameLockI3D == NULL, "wglIsEnabledFrameLockI3D");
01353   glewInfoFunc(wglQueryFrameLockMasterI3D == NULL, "wglQueryFrameLockMasterI3D");
01354 }
01355 #endif /* WGL_I3D_swap_frame_lock */
01356 
01357 /* -------------------------- I3D_swap_frame_usage ------------------------ */
01358 
01359 #ifdef WGL_I3D_swap_frame_usage
01360 static void wglewInfo_I3D_swap_frame_usage ()
01361 {
01362   char me[] = "WGL_I3D_swap_frame_usage"; glewPrintExt(me, wglew.I3D_swap_frame_usage);
01363   glewInfoFunc(wglGetFrameUsageI3D == NULL, "wglGetFrameUsageI3D");
01364   glewInfoFunc(wglBeginFrameTrackingI3D == NULL, "wglBeginFrameTrackingI3D");
01365   glewInfoFunc(wglEndFrameTrackingI3D == NULL, "wglEndFrameTrackingI3D");
01366   glewInfoFunc(wglQueryFrameTrackingI3D == NULL, "wglQueryFrameTrackingI3D");
01367 }
01368 #endif /* WGL_I3D_swap_frame_usage */
01369 
01370 /* ---------------------------- OML_sync_control -------------------------- */
01371 
01372 #ifdef WGL_OML_sync_control
01373 static void wglewInfo_OML_sync_control ()
01374 {
01375   char me[] = "WGL_OML_sync_control"; glewPrintExt(me, wglew.OML_sync_control);
01376   glewInfoFunc(wglGetSyncValuesOML == NULL, "wglGetSyncValuesOML");
01377   glewInfoFunc(wglGetMscRateOML == NULL, "wglGetMscRateOML");
01378   glewInfoFunc(wglSwapBuffersMscOML == NULL, "wglSwapBuffersMscOML");
01379   glewInfoFunc(wglSwapLayerBuffersMscOML == NULL, "wglSwapLayerBuffersMscOML");
01380   glewInfoFunc(wglWaitForMscOML == NULL, "wglWaitForMscOML");
01381   glewInfoFunc(wglWaitForSbcOML == NULL, "wglWaitForSbcOML");
01382 }
01383 #endif /* WGL_OML_sync_control */
01384 
01385 /* ------------------------- NV_vertex_array_range ------------------------ */
01386 
01387 #ifdef WGL_NV_vertex_array_range
01388 static void wglewInfo_NV_vertex_array_range ()
01389 {
01390   char me[] = "WGL_NV_vertex_array_range"; glewPrintExt(me, wglew.NV_vertex_array_range);
01391   glewInfoFunc(wglAllocateMemoryNV == NULL, "wglAllocateMemoryNV");
01392   glewInfoFunc(wglFreeMemoryNV == NULL, "wglFreeMemoryNV");
01393 }
01394 #endif /* WGL_NV_vertex_array_range */
01395 
01396 #else /* _UNIX */
01397 
01398 /* -------------------------------- GLX 1.0 ------------------------------- */
01399 
01400 #ifdef GLX_VERSION_1_0
01401 static void glxewInfo_10 ()
01402 {
01403   char me[] = "GLX_10"; glewPrintExt(me, glxew.GLX_10);
01404 #ifdef GLEW_PROTOTYPES
01405   glewInfoFunc(glXQueryExtension == NULL, "glXQueryExtension");
01406   glewInfoFunc(glXQueryVersion == NULL, "glXQueryVersion");
01407   glewInfoFunc(glXGetConfig == NULL, "glXGetConfig");
01408   glewInfoFunc(glXChooseVisual == NULL, "glXChooseVisual");
01409   glewInfoFunc(glXCreateGLXPixmap == NULL, "glXCreateGLXPixmap");
01410   glewInfoFunc(glXDestroyGLXPixmap == NULL, "glXDestroyGLXPixmap");
01411   glewInfoFunc(glXCreateContext == NULL, "glXCreateContext");
01412   glewInfoFunc(glXDestroyContext == NULL, "glXDestroyContext");
01413   glewInfoFunc(glXIsDirect == NULL, "glXIsDirect");
01414   glewInfoFunc(glXCopyContext == NULL, "glXCopyContext");
01415   glewInfoFunc(glXMakeCurrent == NULL, "glXMakeCurrent");
01416   glewInfoFunc(glXGetCurrentContext == NULL, "glXGetCurrentContext");
01417   glewInfoFunc(glXGetCurrentDrawable == NULL, "glXGetCurrentDrawable");
01418   glewInfoFunc(glXWaitGL == NULL, "glXWaitGL");
01419   glewInfoFunc(glXWaitX == NULL, "glXWaitX");
01420   glewInfoFunc(glXSwapBuffers == NULL, "glXSwapBuffers");
01421   glewInfoFunc(glXUseXFont == NULL, "glXUseXFont");
01422 #endif
01423 }
01424 #endif /* GLX_VERSION_1_0 */
01425 
01426 /* -------------------------------- GLX 1.1 ------------------------------- */
01427 
01428 #ifdef GLX_VERSION_1_1
01429 static void glxewInfo_11 ()
01430 {
01431   char me[] = "GLX_11"; glewPrintExt(me, glxew.GLX_11);
01432 #ifdef GLEW_PROTOTYPES
01433   glewInfoFunc(glXQueryExtensionsString == NULL, "glXQueryExtensionsString");
01434   glewInfoFunc(glXGetClientString == NULL, "glXGetClientString");
01435   glewInfoFunc(glXQueryServerString == NULL, "glXQueryServerString");
01436 #endif
01437 }
01438 #endif /* GLX_VERSION_1_1 */
01439 
01440 /* -------------------------------- GLX 1.2 ------------------------------- */
01441 
01442 #ifdef GLX_VERSION_1_2
01443 static void glxewInfo_12 ()
01444 {
01445   char me[] = "GLX_12"; glewPrintExt(me, glxew.GLX_12);
01446   glewInfoFunc(glXGetCurrentDisplay == NULL, "glXGetCurrentDisplay");  
01447 }
01448 #endif /* GLX_VERSION_1_2 */
01449 
01450 /* -------------------------------- GLX 1.3 ------------------------------- */
01451 
01452 #ifdef GLX_VERSION_1_3
01453 static void glxewInfo_13 ()
01454 {
01455   char me[] = "GLX_13"; glewPrintExt(me, glxew.GLX_13);
01456   glewInfoFunc(glXChooseFBConfig == NULL, "glXChooseFBConfig");
01457   glewInfoFunc(glXGetFBConfigs == NULL, "glXGetFBConfigs");
01458   glewInfoFunc(glXGetVisualFromFBConfig == NULL, "glXGetVisualFromFBConfig");
01459   glewInfoFunc(glXGetFBConfigAttrib == NULL, "glXGetFBConfigAttrib");
01460   glewInfoFunc(glXCreateWindow == NULL, "glXCreateWindow");
01461   glewInfoFunc(glXDestroyWindow == NULL, "glXDestroyWindow");
01462   glewInfoFunc(glXCreatePixmap == NULL, "glXCreatePixmap");
01463   glewInfoFunc(glXDestroyPixmap == NULL, "glXDestroyPixmap");
01464   glewInfoFunc(glXCreatePbuffer == NULL, "glXCreatePbuffer");
01465   glewInfoFunc(glXDestroyPbuffer == NULL, "glXDestroyPbuffer");
01466   glewInfoFunc(glXQueryDrawable == NULL, "glXQueryDrawable");
01467   glewInfoFunc(glXCreateNewContext == NULL, "glXCreateNewContext");
01468   glewInfoFunc(glXMakeContextCurrent == NULL, "glXMakeContextCurrent");
01469   glewInfoFunc(glXGetCurrentReadDrawable == NULL, "glXGetCurrentReadDrawable");
01470   glewInfoFunc(glXQueryContext == NULL, "glXQueryContext");
01471   glewInfoFunc(glXSelectEvent == NULL, "glXSelectEvent");
01472   glewInfoFunc(glXGetSelectedEvent == NULL, "glXGetSelectedEvent");
01473 }
01474 #endif /* GLX_VERSION_1_3 */
01475 
01476 /* -------------------------- EXT_import_context -------------------------- */
01477 
01478 #ifdef GLX_EXT_import_context
01479 static void glxewInfo_EXT_import_context ()
01480 {
01481   char me[] = "GLX_EXT_import_context"; glewPrintExt(me, glxew.EXT_import_context);
01482   glewInfoFunc(glXGetCurrentDisplayEXT == NULL, "glXGetCurrentDisplayEXT");
01483   glewInfoFunc(glXQueryContextInfoEXT == NULL, "glXQueryContextInfoEXT");
01484   glewInfoFunc(glXGetContextIDEXT == NULL, "glXGetContextIDEXT");
01485   glewInfoFunc(glXImportContextEXT == NULL, "glXImportContextEXT");
01486   glewInfoFunc(glXFreeContextEXT == NULL, "glXFreeContextEXT");
01487 }
01488 #endif /* GLX_EXT_import_context */
01489 
01490 /* -------------------------- MESA_copy_sub_buffer ------------------------ */
01491 
01492 #ifdef GLX_MESA_copy_sub_buffer
01493 static void glxewInfo_MESA_copy_sub_buffer ()
01494 {
01495   char me[] = "GLX_MESA_copy_sub_buffer"; glewPrintExt(me, glxew.MESA_copy_sub_buffer);
01496   glewInfoFunc(glXCopySubBufferMESA == NULL, "glXCopySubBufferMESA");
01497 }
01498 #endif /* GLX_MESA_copy_sub_buffer */
01499 
01500 /* -------------------------- MESA_pixmap_colormap ------------------------ */
01501 
01502 #ifdef GLX_MESA_pixmap_colormap
01503 static void glxewInfo_MESA_pixmap_colormap ()
01504 {
01505   char me[] = "GLX_MESA_pixmap_colormap"; glewPrintExt(me, glxew.MESA_pixmap_colormap);
01506   glewInfoFunc(glXCreateGLXPixmapMESA == NULL, "glXCreateGLXPixmapMESA");
01507 }
01508 #endif /* GLX_MESA_pixmap_colormap */
01509 
01510 /* -------------------------- MESA_release_buffers ------------------------ */
01511 
01512 #ifdef GLX_MESA_release_buffers
01513 static void glxewInfo_MESA_release_buffers ()
01514 {
01515   char me[] = "GLX_MESA_release_buffers"; glewPrintExt(me, glxew.MESA_release_buffers);
01516   glewInfoFunc(glXReleaseBuffersMESA == NULL, "glXReleaseBuffersMESA");
01517 }
01518 #endif /* GLX_MESA_release_buffers */
01519 
01520 /* --------------------------- MESA_set_3dfx_mode ------------------------- */
01521 
01522 #ifdef GLX_MESA_set_3dfx_mode
01523 static void glxewInfo_MESA_set_3dfx_mode ()
01524 {
01525   char me[] = "GLX_MESA_set_3dfx_mode"; glewPrintExt(me, glxew.MESA_set_3dfx_mode);
01526   glewInfoFunc(glXSet3DfxModeMESA == NULL, "glXSet3DfxModeMESA");
01527 }
01528 #endif /* GLX_MESA_set_3dfx_mode */
01529 
01530 /* ------------------------- NV_vertex_array_range ------------------------ */
01531 
01532 #ifdef GLX_NV_vertex_array_range
01533 static void glxewInfo_NV_vertex_array_range ()
01534 {
01535   char me[] = "GLX_NV_vertex_array_range"; glewPrintExt(me, glxew.NV_vertex_array_range);
01536   glewInfoFunc(glXAllocateMemoryNV == NULL, "glXAllocateMemoryNV");
01537   glewInfoFunc(glXFreeMemoryNV == NULL, "glXFreeMemoryNV");
01538 }
01539 #endif /* GLX_NV_vertex_array_range */
01540 
01541 /* ---------------------------- OML_sync_control -------------------------- */
01542 
01543 #ifdef GLX_OML_sync_control
01544 #if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
01545 static void glxewInfo_OML_sync_control ()
01546 {
01547   char me[] = "GLX_OML_sync_control"; glewPrintExt(me, glxew.OML_sync_control);
01548   glewInfoFunc(glXGetSyncValuesOML == NULL, "glXGetSyncValuesOML");
01549   glewInfoFunc(glXGetMscRateOML == NULL, "glXGetMscRateOML");
01550   glewInfoFunc(glXSwapBuffersMscOML == NULL, "glXSwapBuffersMscOML");
01551   glewInfoFunc(glXWaitForMscOML == NULL, "glXWaitForMscOML");
01552   glewInfoFunc(glXWaitForSbcOML == NULL, "glXWaitForSbcOML");
01553 }
01554 #endif /* __STDC_VERSION__ */
01555 #endif /* GLX_OML_sync_control */
01556 
01557 /* ------------------------------- SGI_cushion ---------------------------- */
01558 
01559 #ifdef GLX_SGI_cushion
01560 static void glxewInfo_SGI_cushion ()
01561 {
01562   char me[] = "GLX_SGI_cushion"; glewPrintExt(me, glxew.SGI_cushion);
01563   glewInfoFunc(glXCushionSGI == NULL, "glXCushionSGI");
01564 }
01565 #endif /* GLX_SGI_cushion */
01566 
01567 /* -------------------------- SGI_make_current_read ----------------------- */
01568 
01569 #ifdef GLX_SGI_make_current_read
01570 static void glxewInfo_SGI_make_current_read ()
01571 {
01572   char me[] = "GLX_SGI_make_current_read"; glewPrintExt(me, glxew.SGI_make_current_read);
01573   glewInfoFunc(glXMakeCurrentReadSGI == NULL, "glXMakeCurrentReadSGI");
01574   glewInfoFunc(glXGetCurrentReadDrawableSGI == NULL, "glXGetCurrentReadDrawableSGI");
01575 }
01576 #endif /* GLX_SGI_make_current_read */
01577 
01578 /* ---------------------------- SGI_swap_control -------------------------- */
01579 
01580 #ifdef GLX_SGI_swap_control
01581 static void glxewInfo_SGI_swap_control ()
01582 {
01583   char me[] = "GLX_SGI_swap_control"; glewPrintExt(me, glxew.SGI_swap_control);
01584   glewInfoFunc(glXSwapIntervalSGI == NULL, "glXSwapIntervalSGI");
01585 }
01586 #endif /* GLX_SGI_swap_control */
01587 
01588 /* ----------------------------- SGI_video_sync --------------------------- */
01589 
01590 #ifdef GLX_SGI_video_sync
01591 static void glxewInfo_SGI_video_sync ()
01592 {
01593   char me[] = "GLX_SGI_video_sync"; glewPrintExt(me, glxew.SGI_video_sync);
01594   glewInfoFunc(glXGetVideoSyncSGI == NULL, "glXGetVideoSyncSGI");
01595   glewInfoFunc(glXWaitVideoSyncSGI == NULL, "glXWaitVideoSyncSGI");
01596   glewInfoFunc(glXGetRefreshRateSGI == NULL, "glXGetRefreshRateSGI");
01597 }
01598 #endif /* GLX_SGI_video_sync */
01599 
01600 /* ------------------------------ SGIX_fbconfig --------------------------- */
01601 
01602 #ifdef GLX_SGIX_fbconfig
01603 static void glxewInfo_SGIX_fbconfig ()
01604 {
01605   char me[] = "GLX_SGIX_fbconfig"; glewPrintExt(me, glxew.SGIX_fbconfig);
01606   glewInfoFunc(glXGetFBConfigAttribSGIX == NULL, "glXGetFBConfigAttribSGIX");
01607   glewInfoFunc(glXChooseFBConfigSGIX == NULL, "glXChooseFBConfigSGIX");
01608   glewInfoFunc(glXCreateGLXPixmapWithConfigSGIX == NULL, "glXCreateGLXPixmapWithConfigSGIX");
01609   glewInfoFunc(glXCreateContextWithConfigSGIX == NULL, "glXCreateContextWithConfigSGIX");
01610   glewInfoFunc(glXGetVisualFromFBConfigSGIX == NULL, "glXGetVisualFromFBConfigSGIX");
01611   glewInfoFunc(glXGetFBConfigFromVisualSGIX == NULL, "glXGetFBConfigFromVisualSGIX");
01612 }
01613 #endif /* GLX_SGIX_fbconfig */
01614 
01615 /* ------------------------------- SGIX_pbuffer --------------------------- */
01616 
01617 #ifdef GLX_SGIX_pbuffer
01618 static void glxewInfo_SGIX_pbuffer ()
01619 {
01620   char me[] = "GLX_SGIX_pbuffer"; glewPrintExt(me, glxew.SGIX_pbuffer);
01621   glewInfoFunc(glXCreateGLXPbufferSGIX == NULL, "glXCreateGLXPbufferSGIX");
01622   glewInfoFunc(glXDestroyGLXPbufferSGIX == NULL, "glXDestroyGLXPbufferSGIX");
01623   glewInfoFunc(glXQueryGLXPbufferSGIX == NULL, "glXQueryGLXPbufferSGIX");
01624   glewInfoFunc(glXSelectEventSGIX == NULL, "glXSelectEventSGIX");
01625   glewInfoFunc(glXGetSelectedEventSGIX == NULL, "glXGetSelectedEventSGIX");
01626 }
01627 #endif /* GLX_SGIX_pbuffer */
01628 
01629 /* ---------------------------- SGIX_swap_barrier ------------------------- */
01630 
01631 #ifdef GLX_SGIX_swap_barrier
01632 static void glxewInfo_SGIX_swap_barrier ()
01633 {
01634   char me[] = "GLX_SGIX_swap_barrier"; glewPrintExt(me, glxew.SGIX_swap_barrier);
01635   glewInfoFunc(glXBindSwapBarrierSGIX == NULL, "glXBindSwapBarrierSGIX");
01636   glewInfoFunc(glXQueryMaxSwapBarriersSGIX == NULL, "glXQueryMaxSwapBarriersSGIX");
01637 }
01638 #endif /* GLX_SGIX_swap_barrier */
01639 
01640 /* ----------------------------- SGIX_swap_group -------------------------- */
01641 
01642 #ifdef GLX_SGIX_swap_group
01643 static void glxewInfo_SGIX_swap_group ()
01644 {
01645   char me[] = "GLX_SGIX_swap_group"; glewPrintExt(me, glxew.SGIX_swap_group);
01646   glewInfoFunc(glXJoinSwapGroupSGIX == NULL, "glXJoinSwapGroupSGIX");
01647 }
01648 #endif /* GLX_SGIX_swap_group */
01649 
01650 /* ------------------------ SUN_get_transparent_index --------------------- */
01651 
01652 #ifdef GLX_SUN_get_transparent_index
01653 static void glxewInfo_SUN_get_transparent_index ()
01654 {
01655   char me[] = "GLX_SUN_get_transparent_index"; glewPrintExt(me, glxew.SUN_get_transparent_index);
01656   glewInfoFunc(glXGetTransparentIndexSUN == NULL, "glXGetTransparentIndexSUN");
01657 }
01658 #endif /* GLX_SUN_get_transparent_index */
01659 
01660 #endif /* _WIN32 */
01661 
01662 /* ------------------------------------------------------------------------ */
01663 
01664 static void glewInfo ()
01665 {
01666   /* test core opengl */
01667 #ifdef GL_VERSION_1_1
01668   glewPrintExt("GL_11", glew.GL_11);
01669 #endif
01670 #ifdef GL_VERSION_1_2
01671   glewInfo_12();
01672 #endif
01673 #ifdef GL_VERSION_1_3
01674   glewInfo_13();
01675 #endif
01676 #ifdef GL_VERSION_1_4
01677   glewInfo_14();
01678 #endif
01679   /* test extensions */
01680 #ifdef GL_ARB_depth_texture
01681   glewPrintExt("GL_ARB_depth_texture", glew.ARB_depth_texture);
01682 #endif
01683 #ifdef GL_ARB_fragment_program
01684   glewPrintExt("GL_ARB_fragment_program", glew.ARB_fragment_program);
01685 #endif
01686 #ifdef GL_ARB_imaging
01687   glewInfo_ARB_imaging();
01688 #endif
01689 #ifdef GL_ARB_matrix_palette
01690   glewInfo_ARB_matrix_palette();
01691 #endif
01692 #ifdef GL_ARB_multisample
01693   glewInfo_ARB_multisample();
01694 #endif
01695 #ifdef GL_ARB_multitexture
01696   glewInfo_ARB_multitexture();
01697 #endif
01698 #ifdef GL_ARB_point_parameters
01699   glewInfo_ARB_point_parameters();
01700 #endif
01701 #ifdef GL_ARB_shadow
01702   glewPrintExt("GL_ARB_shadow", glew.ARB_shadow);
01703 #endif
01704 #ifdef GL_ARB_shadow_ambient
01705   glewPrintExt("GL_ARB_shadow_ambient", glew.ARB_shadow_ambient);
01706 #endif
01707 #ifdef GL_ARB_texture_border_clamp
01708   glewPrintExt("GL_ARB_texture_border_clamp", glew.ARB_texture_border_clamp);
01709 #endif
01710 #ifdef GL_ARB_texture_compression
01711   glewInfo_ARB_texture_compression();
01712 #endif
01713 #ifdef GL_ARB_transpose_matrix
01714   glewInfo_ARB_transpose_matrix();
01715 #endif
01716 #ifdef GL_ARB_texture_cube_map
01717   glewPrintExt("GL_ARB_texture_cube_map", glew.ARB_texture_cube_map);
01718 #endif
01719 #ifdef GL_ARB_texture_env_add
01720   glewPrintExt("GL_ARB_texture_env_add", glew.ARB_texture_env_add);
01721 #endif
01722 #ifdef GL_ARB_texture_env_combine
01723   glewPrintExt("GL_ARB_texture_env_combine", glew.ARB_texture_env_combine);
01724 #endif
01725 #ifdef GL_ARB_texture_env_crossbar
01726   glewPrintExt("GL_ARB_texture_env_crossbar", glew.ARB_texture_env_crossbar);
01727 #endif
01728 #ifdef GL_ARB_texture_env_dot3
01729   glewPrintExt("GL_ARB_texture_env_dot3", glew.ARB_texture_env_dot3);
01730 #endif
01731 #ifdef GL_ARB_texture_mirrored_repeat
01732   glewPrintExt("GL_ARB_texture_mirrored_repeat", glew.ARB_texture_mirrored_repeat);
01733 #endif
01734 #ifdef GL_ARB_vertex_blend
01735   glewInfo_ARB_vertex_blend();
01736 #endif
01737 #ifdef GL_ARB_vertex_program
01738   glewInfo_ARB_vertex_program();
01739 #endif
01740 #ifdef GL_ARB_window_pos
01741   glewInfo_ARB_window_pos();
01742 #endif
01743 
01744 #ifdef GL_EXT_abgr
01745   glewPrintExt("GL_EXT_abgr", glew.EXT_abgr);
01746 #endif
01747 #ifdef GL_EXT_bgra
01748   glewPrintExt("GL_EXT_bgra", glew.EXT_bgra);
01749 #endif
01750 #ifdef GL_EXT_blend_color
01751   glewInfo_EXT_blend_color();
01752 #endif
01753 #ifdef GL_EXT_blend_func_separate
01754   glewInfo_EXT_blend_func_separate();
01755 #endif
01756 #ifdef GL_EXT_blend_minmax
01757   glewInfo_EXT_blend_minmax();
01758 #endif
01759 #ifdef GL_EXT_blend_subtract
01760   glewPrintExt("GL_EXT_blend_subtract", glew.EXT_blend_subtract);
01761 #endif
01762 #ifdef GL_EXT_clip_volume_hint
01763   glewPrintExt("GL_EXT_clip_volume_hint", glew.EXT_clip_volume_hint);
01764 #endif
01765 #ifdef GL_EXT_compiled_vertex_array
01766   glewInfo_EXT_compiled_vertex_array();
01767 #endif
01768 #ifdef GL_EXT_cull_vertex
01769   glewInfo_EXT_cull_vertex();
01770 #endif
01771 #ifdef GL_EXT_draw_range_elements
01772   glewInfo_EXT_draw_range_elements();
01773 #endif
01774 #ifdef GL_EXT_fog_coord
01775   glewInfo_EXT_fog_coord();
01776 #endif
01777 #ifdef GL_EXT_multi_draw_arrays
01778   glewInfo_EXT_multi_draw_arrays();
01779 #endif
01780 #ifdef GL_EXT_packed_pixels
01781   glewPrintExt("GL_EXT_packed_pixels", glew.EXT_packed_pixels);
01782 #endif
01783 #ifdef GL_EXT_point_parameters
01784   glewInfo_EXT_point_parameters();
01785 #endif
01786 #ifdef GL_EXT_secondary_color
01787   glewInfo_EXT_secondary_color();
01788 #endif
01789 #ifdef GL_EXT_separate_specular_color
01790   glewPrintExt("GL_EXT_separate_specular_color", glew.EXT_separate_specular_color);
01791 #endif
01792 #ifdef GL_EXT_shadow_funcs
01793   glewPrintExt("GL_EXT_shadow_funcs", glew.EXT_shadow_funcs);
01794 #endif
01795 #ifdef GL_EXT_stencil_two_side
01796   glewInfo_EXT_stencil_two_side();
01797 #endif
01798 #ifdef GL_EXT_stencil_wrap
01799   glewPrintExt("GL_EXT_stencil_two_side", glew.EXT_stencil_wrap);
01800 #endif
01801 #ifdef GL_EXT_texture_compression_s3tc
01802   glewPrintExt("GL_EXT_texture_compression_s3tc", glew.EXT_texture_compression_s3tc);
01803 #endif
01804 #ifdef GL_EXT_texture_env_combine
01805   glewPrintExt("GL_EXT_texture_env_combine", glew.EXT_texture_env_combine);
01806 #endif
01807 #ifdef GL_EXT_texture_filter_anisotropic
01808   glewPrintExt("GL_EXT_texture_filter_anisotropic", glew.EXT_texture_filter_anisotropic);
01809 #endif
01810 #ifdef GL_EXT_texture_lod_bias
01811   glewPrintExt("GL_EXT_texture_lod_bias", glew.EXT_texture_lod_bias);
01812 #endif
01813 #ifdef GL_EXT_texture_rectangle
01814   glewPrintExt("GL_EXT_texture_rectangle", glew.EXT_texture_rectangle);
01815 #endif
01816 #ifdef GL_EXT_texture3D
01817   glewInfo_EXT_texture3D();
01818 #endif
01819 #ifdef GL_EXT_vertex_shader
01820   glewInfo_EXT_vertex_shader();
01821 #endif
01822 #ifdef GL_EXT_vertex_weighting
01823   glewInfo_EXT_vertex_weighting();
01824 #endif
01825 
01826 #ifdef GL_SGIS_generate_mipmap
01827   glewPrintExt("GL_SGIS_generate_mipmap", glew.SGIS_generate_mipmap);
01828 #endif
01829 #ifdef GL_SGIS_texture_lod
01830   glewPrintExt("GL_SGIS_texture_lod", glew.SGIS_texture_lod);
01831 #endif
01832 #ifdef GL_SGIX_depth_texture
01833   glewPrintExt("GL_SGIX_depth_texture", glew.SGIX_depth_texture);
01834 #endif
01835 #ifdef GL_SGIX_shadow
01836   glewPrintExt("GL_SGIX_shadow", glew.SGIX_shadow);
01837 #endif
01838 
01839 #ifdef GL_HP_occlusion_test
01840   glewPrintExt("GL_HP_occlusion_test", glew.HP_occlusion_test);
01841 #endif
01842 #ifdef GL_S3_s3tc
01843   glewPrintExt("GL_S3_s3tc", glew.S3_s3tc);
01844 #endif
01845 #ifdef GL_WIN_swap_hint
01846   glewInfo_WIN_swap_hint();
01847 #endif
01848 
01849 #ifdef GL_ATI_draw_buffers
01850   glewInfo_ATI_draw_buffers();
01851 #endif
01852 #ifdef GL_ATI_element_array
01853   glewInfo_ATI_element_array();
01854 #endif
01855 #ifdef GL_ATI_envmap_bumpmap
01856   glewInfo_ATI_envmap_bumpmap();
01857 #endif
01858 #ifdef GL_ATI_fragment_shader
01859   glewInfo_ATI_fragment_shader();
01860 #endif
01861 #ifdef GL_ATI_map_object_buffer
01862   glewInfo_ATI_map_object_buffer();
01863 #endif
01864 #ifdef GL_ATI_mapped_texture
01865   glewInfo_ATI_mapped_texture();
01866 #endif
01867 #ifdef GL_ATI_pn_triangles
01868   glewInfo_ATI_pn_triangles();
01869 #endif
01870 #ifdef GL_ATI_separate_stencil
01871   glewInfo_ATI_separate_stencil();
01872 #endif
01873 #ifdef GL_ATI_text_fragment_shader
01874   glewPrintExt("GL_ATI_text_fragment_shader", glew.ATI_text_fragment_shader);
01875 #endif
01876 #ifdef GL_ATI_texture_env_combine3
01877   glewPrintExt("GL_ATI_texture_env_combine3", glew.ATI_texture_env_combine3);
01878 #endif
01879 #ifdef GL_ATI_texture_float
01880   glewPrintExt("GL_ATI_texture_float", glew.ATI_texture_float);
01881 #endif
01882 #ifdef GL_ATI_texture_mirror_once
01883   glewPrintExt("GL_ATI_texture_mirror_once", glew.ATI_texture_mirror_once);
01884 #endif
01885 #ifdef GL_ATI_vertex_array_object
01886   glewInfo_ATI_vertex_array_object();
01887 #endif
01888 #ifdef GL_ATI_vertex_attrib_array_object
01889   glewInfo_ATI_vertex_attrib_array_object();
01890 #endif
01891 #ifdef GL_ATI_vertex_streams
01892   glewInfo_ATI_vertex_streams();
01893 #endif
01894 #ifdef GL_ATIX_point_sprites
01895   glewPrintExt("GL_ATIX_point_sprites", glew.ATIX_point_sprites);
01896 #endif
01897 #ifdef GL_ATIX_texture_env_combine3
01898   glewPrintExt("GL_ATIX_texture_env_combine3", glew.ATIX_texture_env_combine3);
01899 #endif
01900 #ifdef GL_ATIX_texture_env_route
01901   glewPrintExt("GL_ATIX_texture_env_route", glew.ATIX_texture_env_route);
01902 #endif
01903 #ifdef GL_ATIX_vertex_shader_output_point_size
01904   glewPrintExt("GL_ATIX_vertex_shader_output_point_size", glew.ATIX_vertex_shader_output_point_size);
01905 #endif
01906 
01907 #ifdef GL_NV_blend_square
01908   glewPrintExt("GL_NV_blend_square", glew.NV_blend_square);
01909 #endif
01910 #ifdef GL_NV_copy_depth_to_color
01911   glewPrintExt("GL_NV_copy_depth_to_color", glew.NV_copy_depth_to_color);
01912 #endif
01913 #ifdef GL_NV_depth_clamp
01914   glewPrintExt("GL_NV_depth_clamp", glew.NV_depth_clamp);
01915 #endif
01916 #ifdef GL_NV_element_array
01917   glewInfo_NV_element_array();
01918 #endif
01919 #ifdef GL_NV_evaluators
01920   glewInfo_NV_evaluators();
01921 #endif
01922 #ifdef GL_NV_fence
01923   glewInfo_NV_fence();
01924 #endif
01925 #ifdef GL_NV_float_buffer
01926   glewPrintExt("GL_NV_float_buffer", glew.NV_float_buffer);
01927 #endif
01928 #ifdef GL_NV_fog_distance
01929   glewPrintExt("GL_NV_fog_distance", glew.NV_fog_distance);
01930 #endif
01931 #ifdef GL_NV_fragment_program
01932   glewInfo_NV_fragment_program();
01933 #endif
01934 #ifdef GL_NV_half_float
01935   glewPrintExt("GL_NV_half_float", glew.NV_half_float);
01936 #endif
01937 #ifdef GL_NV_light_max_exponent
01938   glewPrintExt("GL_NV_light_max_exponent", glew.NV_light_max_exponent);
01939 #endif
01940 #ifdef GL_NV_multisample_filter_hint
01941   glewPrintExt("GL_NV_multisample_filter_hint", glew.NV_multisample_filter_hint);
01942 #endif
01943 #ifdef GL_NV_occlusion_query
01944   glewInfo_NV_occlusion_query();
01945 #endif
01946 #ifdef GL_NV_packed_depth_stencil
01947   glewPrintExt("GL_NV_packed_depth_stencil", glew.NV_packed_depth_stencil);
01948 #endif
01949 #ifdef GL_NV_pixel_data_range
01950   glewInfo_NV_pixel_data_range();
01951 #endif
01952 #ifdef GL_NV_point_sprite
01953   glewInfo_NV_point_sprite();
01954 #endif
01955 #ifdef GL_NV_primitive_restart
01956   glewInfo_NV_primitive_restart();
01957 #endif
01958 #ifdef GL_NV_register_combiners
01959   glewInfo_NV_register_combiners();
01960 #endif
01961 #ifdef GL_NV_register_combiners2
01962   glewInfo_NV_register_combiners2();
01963 #endif
01964 #ifdef GL_NV_texgen_emboss
01965   glewPrintExt("GL_NV_texgen_emboss", glew.NV_texgen_emboss);
01966 #endif
01967 #ifdef GL_NV_texgen_reflection
01968   glewPrintExt("GL_NV_texgen_reflection", glew.NV_texgen_reflection);
01969 #endif
01970 #ifdef GL_NV_texture_compression_vtc
01971   glewPrintExt("GL_NV_texture_compression_vtc", glew.NV_texture_compression_vtc);
01972 #endif
01973 #ifdef GL_NV_texture_env_combine4
01974   glewPrintExt("GL_NV_texture_env_combine4", glew.NV_texture_env_combine4);
01975 #endif
01976 #ifdef GL_NV_texture_expand_normal
01977   glewPrintExt("GL_NV_texture_expand_normal", glew.NV_texture_expand_normal);
01978 #endif
01979 #ifdef GL_NV_texture_rectangle
01980   glewPrintExt("GL_NV_texture_rectangle", glew.NV_texture_rectangle);
01981 #endif
01982 #ifdef GL_NV_texture_shader
01983   glewPrintExt("GL_NV_texture_shader", glew.NV_texture_shader);
01984 #endif
01985 #ifdef GL_NV_texture_shader2
01986   glewPrintExt("GL_NV_texture_shader2", glew.NV_texture_shader2);
01987 #endif
01988 #ifdef GL_NV_texture_shader3
01989   glewPrintExt("GL_NV_texture_shader3", glew.NV_texture_shader3);
01990 #endif
01991 #ifdef GL_NV_vertex_array_range
01992   glewInfo_NV_vertex_array_range();
01993 #endif
01994 #ifdef GL_NV_vertex_array_range2
01995   glewPrintExt("GL_NV_vertex_array_range2", glew.NV_vertex_array_range2);
01996 #endif
01997 #ifdef GL_NV_vertex_program
01998   glewInfo_NV_vertex_program();
01999 #endif
02000 #ifdef GL_NV_vertex_program1_1
02001   glewPrintExt("GL_NV_vertex_program1_1", glew.NV_vertex_program1_1);
02002 #endif
02003 #ifdef GL_NV_vertex_program2
02004   glewPrintExt("GL_NV_vertex_program2", glew.NV_vertex_program2);
02005 #endif
02006 }
02007 
02008 /* ------------------------------------------------------------------------ */
02009 
02010 #ifdef _WIN32
02011 
02012 static void wglewInfo ()
02013 {
02014 #ifdef WGL_ARB_buffer_region
02015   wglewInfo_ARB_buffer_region();
02016 #endif
02017 #ifdef WGL_ARB_make_current_read
02018   wglewInfo_ARB_make_current_read();
02019 #endif
02020 #ifdef WGL_ARB_multisample
02021   glewPrintExt("WGL_ARB_multisample", wglew.ARB_multisample);
02022 #endif   
02023 #ifdef WGL_ARB_pbuffer
02024   wglewInfo_ARB_pbuffer();
02025 #endif
02026 #ifdef WGL_ARB_pixel_format
02027   wglewInfo_ARB_pixel_format();
02028 #endif
02029 #ifdef WGL_ARB_render_texture
02030   wglewInfo_ARB_render_texture();
02031 #endif
02032 
02033 #ifdef WGL_EXT_depth_float
02034   glewPrintExt("WGL_EXT_depth_float", wglew.EXT_depth_float);
02035 #endif
02036 #ifdef WGL_EXT_display_color_table
02037   wglewInfo_EXT_display_color_table();
02038 #endif
02039 #ifdef WGL_EXT_make_current_read
02040   wglewInfo_EXT_make_current_read();
02041 #endif
02042 #ifdef WGL_EXT_multisample
02043   glewPrintExt("WGL_EXT_multisample", wglew.EXT_multisample);
02044 #endif
02045 #ifdef WGL_EXT_pixel_format
02046   wglewInfo_EXT_pixel_format();
02047 #endif
02048 #ifdef WGL_EXT_pbuffer
02049   wglewInfo_EXT_pbuffer();
02050 #endif
02051 #ifdef WGL_EXT_swap_control
02052   wglewInfo_EXT_swap_control();
02053 #endif
02054 
02055 #ifdef WGL_I3D_digital_video_control
02056   wglewInfo_I3D_digital_video_control();
02057 #endif
02058 #ifdef WGL_I3D_gamma
02059   wglewInfo_I3D_gamma();
02060 #endif
02061 #ifdef WGL_I3D_genlock
02062   wglewInfo_I3D_genlock();
02063 #endif
02064 #ifdef WGL_I3D_image_buffer
02065   wglewInfo_I3D_image_buffer();
02066 #endif
02067 #ifdef WGL_I3D_swap_frame_lock
02068   wglewInfo_I3D_swap_frame_lock();
02069 #endif
02070 #ifdef WGL_I3D_swap_frame_usage
02071   wglewInfo_I3D_swap_frame_usage();
02072 #endif
02073 
02074 #ifdef WGL_OML_sync_control
02075   wglewInfo_OML_sync_control();
02076 #endif
02077 
02078 #ifdef WGL_ATI_pixel_format_float
02079   glewPrintExt("WGL_ATI_pixel_format_float", wglew.ATI_pixel_format_float);
02080 #endif
02081 
02082 #ifdef WGL_NV_float_buffer
02083   glewPrintExt("WGL_NV_float_buffer", wglew.NV_float_buffer);
02084 #endif
02085 #ifdef WGL_NV_render_depth_texture
02086   glewPrintExt("WGL_NV_render_depth_texture", wglew.NV_render_depth_texture);
02087 #endif
02088 #ifdef WGL_NV_render_texture_rectangle
02089   glewPrintExt("WGL_NV_render_texture_rectangle", wglew.NV_render_texture_rectangle);
02090 #endif
02091 #ifdef WGL_NV_vertex_array_range
02092   wglewInfo_NV_vertex_array_range();
02093 #endif
02094 }
02095 
02096 #else /* _UNIX */
02097 
02098 static void glxewInfo ()
02099 {
02100 #ifdef GLX_VERSION_1_0
02101   glxewInfo_10();
02102 #endif
02103 #ifdef GLX_VERSION_1_1
02104   glxewInfo_11();
02105 #endif
02106 #ifdef GLX_VERSION_1_2
02107   glxewInfo_12();
02108 #endif
02109 #ifdef GLX_VERSION_1_3
02110   glxewInfo_13();
02111 #endif
02112 #ifdef GLX_VERSION_1_4
02113   glewPrintExt("GLX_14", glxew.GLX_14);
02114 #endif
02115 
02116 #ifdef GLX_ARB_get_proc_address
02117   glewPrintExt("GLX_ARB_get_proc_address", glxew.ARB_get_proc_address);
02118 #endif
02119 #ifdef GLX_ARB_multisample
02120   glewPrintExt("GLX_ARB_multisample", glxew.ARB_multisample);
02121 #endif
02122 
02123 #ifdef GLX_EXT_import_context
02124   glxewInfo_EXT_import_context();
02125 #endif
02126 #ifdef GLX_EXT_visual_info
02127   glewPrintExt("GLX_EXT_visual_info", glxew.EXT_visual_info);
02128 #endif
02129 #ifdef GLX_EXT_visual_rating
02130   glewPrintExt("GLX_EXT_visual_rating", glxew.EXT_visual_rating);
02131 #endif
02132 
02133 #ifdef GLX_MESA_copy_sub_buffer
02134   glxewInfo_MESA_copy_sub_buffer();
02135 #endif
02136 #ifdef GLX_MESA_pixmap_colormap
02137   glxewInfo_MESA_pixmap_colormap();
02138 #endif
02139 #ifdef GLX_MESA_release_buffers
02140   glxewInfo_MESA_release_buffers();
02141 #endif
02142 #ifdef GLX_MESA_set_3dfx_mode
02143   glxewInfo_MESA_set_3dfx_mode();
02144 #endif
02145 
02146 #ifdef GLX_NV_vertex_array_range
02147   glxewInfo_NV_vertex_array_range();
02148 #endif
02149 
02150 #ifdef GLX_OML_swap_method
02151   glewPrintExt("GLX_OML_swap_method", glxew.OML_swap_method);
02152 #endif
02153 #ifdef GLX_OML_sync_control
02154 #if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
02155   glxewInfo_OML_sync_control();
02156 #endif /* __STDC_VERSION__ */
02157 #endif
02158 
02159 #ifdef GLX_SGI_cushion
02160   glxewInfo_SGI_cushion();
02161 #endif
02162 #ifdef GLX_SGI_make_current_read
02163   glxewInfo_SGI_make_current_read();
02164 #endif
02165 #ifdef GLX_SGI_swap_control
02166   glxewInfo_SGI_swap_control();
02167 #endif
02168 #ifdef GLX_SGI_video_sync
02169   glxewInfo_SGI_video_sync();
02170 #endif
02171 
02172 #ifdef GLX_SGIS_blended_overlay
02173   glewPrintExt("GLX_SGIS_blended_overlay", glxew.SGIS_blended_overlay);
02174 #endif
02175 #ifdef GLX_SGIS_multisample
02176   glewPrintExt("GLX_SGIS_multisample", glxew.SGIS_multisample);
02177 #endif
02178 #ifdef GLX_SGIS_shared_multisample
02179   glewPrintExt("GLX_SGIS_shared_multisample", glxew.SGIS_shared_multisample);
02180 #endif
02181 
02182 #ifdef GLX_SGIX_fbconfig
02183   glxewInfo_SGIX_fbconfig();
02184 #endif
02185 #ifdef GLX_SGIX_pbuffer
02186   glxewInfo_SGIX_pbuffer();
02187 #endif
02188 #ifdef GLX_SGIX_swap_barrier
02189   glxewInfo_SGIX_swap_barrier();
02190 #endif
02191 #ifdef GLX_SGIX_swap_group
02192   glxewInfo_SGIX_swap_group();
02193 #endif
02194 #ifdef GLX_SGIX_visual_select_group
02195   glewPrintExt("GLX_SGIX_visual_select_group", glxew.SGIX_visual_select_group);
02196 #endif
02197 
02198 #ifdef GLX_SUN_get_transparent_index
02199   glxewInfo_SUN_get_transparent_index();
02200 #endif
02201 }
02202 
02203 #endif /* _WIN32 */
02204 
02205 /* ------------------------------------------------------------------------ */
02206 
02207 int main (int argc, char** argv)
02208 {
02209   GLint err;
02210   glutInit(&argc, argv);
02211   glutCreateWindow("GLEW Extension Info");
02212   glewExperimental = GL_TRUE;
02213   err = glewInit();
02214   if (GLEW_OK != err)
02215   {
02216     fprintf(stderr, "Error [main]: glewInit failed: %s\n", glewGetErrorString(err));
02217     return 1;
02218   }
02219   f = fopen("glewinfo.txt", "w");
02220   if (f == NULL) f = stdout;
02221   fprintf(f, "---------------------------\n");
02222   fprintf(f, "    GLEW Extension Info\n");
02223   fprintf(f, "---------------------------\n\n");
02224   fprintf(f, "Running on a %s from %s\n", 
02225           glGetString(GL_RENDERER), glGetString(GL_VENDOR));
02226   fprintf(f, "OpenGL version %s is supported\n", glGetString(GL_VERSION));
02227   glewInfo();
02228 #ifdef WIN32
02229   wglewInfo();
02230 #else
02231   glxewInfo();
02232 #endif
02233   if (f != stdout) fclose(f);
02234   return 0;
02235 }

Send questions, comments, and bug reports to:
jmk