Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenglcore.h
Go to the documentation of this file.
00001 #ifndef __gl_core_h_ 00002 #define __gl_core_h_ 00003 00004 /* 00005 * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008) 00006 * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved. 00007 * 00008 * Permission is hereby granted, free of charge, to any person obtaining a 00009 * copy of this software and associated documentation files (the "Software"), 00010 * to deal in the Software without restriction, including without limitation 00011 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 00012 * and/or sell copies of the Software, and to permit persons to whom the 00013 * Software is furnished to do so, subject to the following conditions: 00014 * 00015 * The above copyright notice including the dates of first publication and 00016 * either this permission notice or a reference to 00017 * http://oss.sgi.com/projects/FreeB/ 00018 * shall be included in all copies or substantial portions of the Software. 00019 * 00020 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00021 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00022 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00023 * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 00024 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF 00025 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 00026 * SOFTWARE. 00027 * 00028 * Except as contained in this notice, the name of Silicon Graphics, Inc. 00029 * shall not be used in advertising or otherwise to promote the sale, use or 00030 * other dealings in this Software without prior written authorization from 00031 * Silicon Graphics, Inc. 00032 */ 00033 00034 #include <sys/types.h> 00035 00036 #define GL_CORE_SGI 1 00037 #define GL_CORE_MESA 2 00038 #define GL_CORE_APPLE 4 00039 #define GL_CORE_WINDOWS 8 00040 00041 typedef struct __GLcontextRec __GLcontext; 00042 00043 /* 00044 ** This file defines the interface between the GL core and the surrounding 00045 ** "operating system" that supports it (currently the GLX or WGL extensions). 00046 ** 00047 ** Members (data and function pointers) are documented as imported or 00048 ** exported according to how they are used by the core rendering functions. 00049 ** Imported members are initialized by the "operating system" and used by 00050 ** the core functions. Exported members are initialized by the core functions 00051 ** and used by the "operating system". 00052 */ 00053 00066 typedef struct __GLcontextModesRec { 00067 struct __GLcontextModesRec * next; 00068 00069 GLboolean rgbMode; 00070 GLboolean floatMode; 00071 GLboolean colorIndexMode; 00072 GLuint doubleBufferMode; 00073 GLuint stereoMode; 00074 00075 GLboolean haveAccumBuffer; 00076 GLboolean haveDepthBuffer; 00077 GLboolean haveStencilBuffer; 00078 00079 GLint redBits, greenBits, blueBits, alphaBits; /* bits per comp */ 00080 GLuint redMask, greenMask, blueMask, alphaMask; 00081 GLint rgbBits; /* total bits for rgb */ 00082 GLint indexBits; /* total bits for colorindex */ 00083 00084 GLint accumRedBits, accumGreenBits, accumBlueBits, accumAlphaBits; 00085 GLint depthBits; 00086 GLint stencilBits; 00087 00088 GLint numAuxBuffers; 00089 00090 GLint level; 00091 00092 GLint pixmapMode; 00093 00094 /* GLX */ 00095 GLint visualID; 00096 GLint visualType; 00100 /* EXT_visual_rating / GLX 1.2 */ 00101 GLint visualRating; 00102 00103 /* EXT_visual_info / GLX 1.2 */ 00104 GLint transparentPixel; 00105 /* colors are floats scaled to ints */ 00106 GLint transparentRed, transparentGreen, transparentBlue, transparentAlpha; 00107 GLint transparentIndex; 00108 00109 /* ARB_multisample / SGIS_multisample */ 00110 GLint sampleBuffers; 00111 GLint samples; 00112 00113 /* SGIX_fbconfig / GLX 1.3 */ 00114 GLint drawableType; 00115 GLint renderType; 00116 GLint xRenderable; 00117 GLint fbconfigID; 00118 00119 /* SGIX_pbuffer / GLX 1.3 */ 00120 GLint maxPbufferWidth; 00121 GLint maxPbufferHeight; 00122 GLint maxPbufferPixels; 00123 GLint optimalPbufferWidth; /* Only for SGIX_pbuffer. */ 00124 GLint optimalPbufferHeight; /* Only for SGIX_pbuffer. */ 00125 00126 /* SGIX_visual_select_group */ 00127 GLint visualSelectGroup; 00128 00129 /* OML_swap_method */ 00130 GLint swapMethod; 00131 00132 GLint screen; 00133 00134 /* EXT_texture_from_pixmap */ 00135 GLint bindToTextureRgb; 00136 GLint bindToTextureRgba; 00137 GLint bindToMipmapTexture; 00138 GLint bindToTextureTargets; 00139 GLint yInverted; 00140 } __GLcontextModes; 00141 00142 /* Several fields of __GLcontextModes can take these as values. Since 00143 * GLX header files may not be available everywhere they need to be used, 00144 * redefine them here. 00145 */ 00146 #define GLX_NONE 0x8000 00147 #define GLX_SLOW_CONFIG 0x8001 00148 #define GLX_TRUE_COLOR 0x8002 00149 #define GLX_DIRECT_COLOR 0x8003 00150 #define GLX_PSEUDO_COLOR 0x8004 00151 #define GLX_STATIC_COLOR 0x8005 00152 #define GLX_GRAY_SCALE 0x8006 00153 #define GLX_STATIC_GRAY 0x8007 00154 #define GLX_TRANSPARENT_RGB 0x8008 00155 #define GLX_TRANSPARENT_INDEX 0x8009 00156 #define GLX_NON_CONFORMANT_CONFIG 0x800D 00157 #define GLX_SWAP_EXCHANGE_OML 0x8061 00158 #define GLX_SWAP_COPY_OML 0x8062 00159 #define GLX_SWAP_UNDEFINED_OML 0x8063 00160 00161 #define GLX_DONT_CARE 0xFFFFFFFF 00162 00163 #define GLX_RGBA_BIT 0x00000001 00164 #define GLX_COLOR_INDEX_BIT 0x00000002 00165 #define GLX_WINDOW_BIT 0x00000001 00166 #define GLX_PIXMAP_BIT 0x00000002 00167 #define GLX_PBUFFER_BIT 0x00000004 00168 00169 #define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0 00170 #define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1 00171 #define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2 00172 #define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3 00173 #define GLX_Y_INVERTED_EXT 0x20D4 00174 00175 #define GLX_TEXTURE_1D_BIT_EXT 0x00000001 00176 #define GLX_TEXTURE_2D_BIT_EXT 0x00000002 00177 #define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004 00178 00179 #endif /* __gl_core_h_ */ Generated on Sat May 26 2012 04:18:41 for ReactOS by
1.7.6.1
|