]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake2/extra/qe4/glingr.h
Merge remote-tracking branch 'ttimo/master'
[xonotic/netradiant.git] / tools / quake2 / extra / qe4 / glingr.h
diff --git a/tools/quake2/extra/qe4/glingr.h b/tools/quake2/extra/qe4/glingr.h
new file mode 100644 (file)
index 0000000..19cb1c5
--- /dev/null
@@ -0,0 +1,98 @@
+/*
+===========================================================================
+Copyright (C) 1997-2006 Id Software, Inc.
+
+This file is part of Quake 2 Tools source code.
+
+Quake 2 Tools source code is free software; you can redistribute it
+and/or modify it under the terms of the GNU General Public License as
+published by the Free Software Foundation; either version 2 of the License,
+or (at your option) any later version.
+
+Quake 2 Tools source code is distributed in the hope that it will be
+useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with Quake 2 Tools source code; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+===========================================================================
+*/
+
+// This .h file contains constants, typedefs, etc. for Intergraph
+// extensions to OpenGL.  These extensions are:
+//
+//            Multiple Palette Extension
+//            Texture Object Extension
+
+#define GL_INGR_multiple_palette        1
+#define GL_EXT_texture_object           1
+
+
+// New constants and typedefs for the Multiple Palette Extension
+#define GL_PALETTE_INGR                 0x80c0
+#define GL_MAX_PALETTES_INGR            0x80c1
+#define GL_MAX_PALETTE_ENTRIES_INGR     0x80c2
+#define GL_CURRENT_PALETTE_INGR         0x80c3
+#define GL_PALETTE_WRITEMASK_INGR       0x80c4
+#define GL_CURRENT_RASTER_PALETTE_INGR 0x80c5
+#define GL_PALETTE_CLEAR_VALUE_INGR    0x80c6
+
+// Function prototypes for the Multiple Palette Extension routines
+typedef void (APIENTRY *PALETTEFUNCPTR)(GLuint);
+typedef void (APIENTRY *PALETTEMASKFUNCPTR)(GLboolean);
+typedef void (APIENTRY *WGLLOADPALETTEFUNCPTR)(GLuint, GLsizei, GLuint *);
+typedef void (APIENTRY *CLEARPALETTEFUNCPTR)(GLuint);
+
+
+// New Constants and typedefs for the Texture Object Extension
+#define GL_TEXTURE_PRIORITY_EXT         0x8066
+#define GL_TEXTURE_RESIDENT_EXT         0x8067
+#define GL_TEXTURE_1D_BINDING_EXT       0x8068
+#define GL_TEXTURE_2D_BINDING_EXT       0x8069
+
+// Function prototypes for the Texture Object Extension routines
+typedef GLboolean (APIENTRY *ARETEXRESFUNCPTR)(GLsizei, const GLuint *,
+                    const GLboolean *);
+typedef void (APIENTRY *BINDTEXFUNCPTR)(GLenum, GLuint);
+typedef void (APIENTRY *DELTEXFUNCPTR)(GLsizei, const GLuint *);
+typedef void (APIENTRY *GENTEXFUNCPTR)(GLsizei, GLuint *);
+typedef GLboolean (APIENTRY *ISTEXFUNCPTR)(GLuint);
+typedef void (APIENTRY *PRIORTEXFUNCPTR)(GLsizei, const GLuint *,
+                    const GLclampf *);
+
+
+/* OpenGL ExtEscape escape function constants */
+#ifndef OPENGL_GETINFO
+#define OPENGL_GETINFO  4353        /* for OpenGL ExtEscape */
+#endif
+
+// OPENGL_GETINFO ExtEscape sub-escape numbers.  They are defined by
+// Microsoft.
+
+#ifndef OPENGL_GETINFO_DRVNAME
+
+#define OPENGL_GETINFO_DRVNAME  0
+
+
+// Input structure for OPENGL_GETINFO ExtEscape.
+
+typedef struct _OPENGLGETINFO
+{
+    ULONG   ulSubEsc;
+} OPENGLGETINFO, *POPENGLGETINFO;
+
+
+// Output structure for OPENGL_GETINFO_DRVNAME ExtEscape.
+
+typedef struct _GLDRVNAMERET
+{
+    ULONG   ulVersion;              // must be 1 for this version
+    ULONG   ulDriverVersion;        // driver specific version number
+    WCHAR   awch[MAX_PATH+1];
+} GLDRVNAMERET, *PGLDRVNAMERET;
+
+#endif
+
+