GLINGR.H (3436B)
1 /* 2 =========================================================================== 3 Copyright (C) 1999-2005 Id Software, Inc. 4 5 This file is part of Quake III Arena source code. 6 7 Quake III Arena source code is free software; you can redistribute it 8 and/or modify it under the terms of the GNU General Public License as 9 published by the Free Software Foundation; either version 2 of the License, 10 or (at your option) any later version. 11 12 Quake III Arena source code is distributed in the hope that it will be 13 useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with Foobar; if not, write to the Free Software 19 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 =========================================================================== 21 */ 22 // This .h file contains constants, typedefs, etc. for Intergraph 23 // extensions to OpenGL. These extensions are: 24 // 25 // Multiple Palette Extension 26 // Texture Object Extension 27 28 #define GL_INGR_multiple_palette 1 29 #define GL_EXT_texture_object 1 30 31 32 // New constants and typedefs for the Multiple Palette Extension 33 #define GL_PALETTE_INGR 0x80c0 34 #define GL_MAX_PALETTES_INGR 0x80c1 35 #define GL_MAX_PALETTE_ENTRIES_INGR 0x80c2 36 #define GL_CURRENT_PALETTE_INGR 0x80c3 37 #define GL_PALETTE_WRITEMASK_INGR 0x80c4 38 #define GL_CURRENT_RASTER_PALETTE_INGR 0x80c5 39 #define GL_PALETTE_CLEAR_VALUE_INGR 0x80c6 40 41 // Function prototypes for the Multiple Palette Extension routines 42 typedef void (APIENTRY *PALETTEFUNCPTR)(GLuint); 43 typedef void (APIENTRY *PALETTEMASKFUNCPTR)(GLboolean); 44 typedef void (APIENTRY *WGLLOADPALETTEFUNCPTR)(GLuint, GLsizei, GLuint *); 45 typedef void (APIENTRY *CLEARPALETTEFUNCPTR)(GLuint); 46 47 48 // New Constants and typedefs for the Texture Object Extension 49 #define GL_TEXTURE_PRIORITY_EXT 0x8066 50 #define GL_TEXTURE_RESIDENT_EXT 0x8067 51 #define GL_TEXTURE_1D_BINDING_EXT 0x8068 52 #define GL_TEXTURE_2D_BINDING_EXT 0x8069 53 54 // Function prototypes for the Texture Object Extension routines 55 typedef GLboolean (APIENTRY *ARETEXRESFUNCPTR)(GLsizei, const GLuint *, 56 const GLboolean *); 57 typedef void (APIENTRY *BINDTEXFUNCPTR)(GLenum, GLuint); 58 typedef void (APIENTRY *DELTEXFUNCPTR)(GLsizei, const GLuint *); 59 typedef void (APIENTRY *GENTEXFUNCPTR)(GLsizei, GLuint *); 60 typedef GLboolean (APIENTRY *ISTEXFUNCPTR)(GLuint); 61 typedef void (APIENTRY *PRIORTEXFUNCPTR)(GLsizei, const GLuint *, 62 const GLclampf *); 63 64 65 /* OpenGL ExtEscape escape function constants */ 66 #ifndef OPENGL_GETINFO 67 #define OPENGL_GETINFO 4353 /* for OpenGL ExtEscape */ 68 #endif 69 70 // OPENGL_GETINFO ExtEscape sub-escape numbers. They are defined by 71 // Microsoft. 72 73 #ifndef OPENGL_GETINFO_DRVNAME 74 75 #define OPENGL_GETINFO_DRVNAME 0 76 77 78 // Input structure for OPENGL_GETINFO ExtEscape. 79 80 typedef struct _OPENGLGETINFO 81 { 82 ULONG ulSubEsc; 83 } OPENGLGETINFO, *POPENGLGETINFO; 84 85 86 // Output structure for OPENGL_GETINFO_DRVNAME ExtEscape. 87 88 typedef struct _GLDRVNAMERET 89 { 90 ULONG ulVersion; // must be 1 for this version 91 ULONG ulDriverVersion; // driver specific version number 92 WCHAR awch[MAX_PATH+1]; 93 } GLDRVNAMERET, *PGLDRVNAMERET; 94 95 #endif 96 97