| TerraLib 4.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

E:/Projetos_Primeiro_Semestre_2012/TerraView/terralib/src/terralib/drivers/GL/glxint.h
Go to the documentation of this file.

    00001 #ifndef __GLX_glxint_h__
    00002 #define __GLX_glxint_h__
    00003
    00004 /* $XFree86: xc/include/GL/glxint.h,v 1.3 2000/11/18 19:37:04 tsi Exp $ */
    00005 /*
    00006 ** The contents of this file are subject to the GLX Public License Version 1.0
    00007 ** (the "License"). You may not use this file except in compliance with the
    00008 ** License. You may obtain a copy of the License at Silicon Graphics, Inc.,
    00009 ** attn: Legal Services, 2011 N. Shoreline Blvd., Mountain View, CA 94043
    00010 ** or at http://www.sgi.com/software/opensource/glx/license.html.
    00011 **
    00012 ** Software distributed under the License is distributed on an "AS IS"
    00013 ** basis. ALL WARRANTIES ARE DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY
    00014 ** IMPLIED WARRANTIES OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR
    00015 ** PURPOSE OR OF NON- INFRINGEMENT. See the License for the specific
    00016 ** language governing rights and limitations under the License.
    00017 **
    00018 ** The Original Software is GLX version 1.2 source code, released February,
    00019 ** 1999. The developer of the Original Software is Silicon Graphics, Inc.
    00020 ** Those portions of the Subject Software created by Silicon Graphics, Inc.
    00021 ** are Copyright (c) 1991-9 Silicon Graphics, Inc. All Rights Reserved.
    00022 **
    00023 ** $SGI$
    00024 */
    00025
    00026 #include <X11/X.h>
    00027 #include <X11/Xdefs.h>
    00028 #include "GL/gl.h"
    00029
    00030 typedef struct __GLXvisualConfigRec __GLXvisualConfig;
    00031 typedef struct __GLXFBConfigRec __GLXFBConfig;
    00032
    00033 struct __GLXvisualConfigRec {
    00034     VisualID vid;
    00035     int class;
    00036     Bool rgba;
    00037     int redSize, greenSize, blueSize, alphaSize;
    00038     unsigned long redMask, greenMask, blueMask, alphaMask;
    00039     int accumRedSize, accumGreenSize, accumBlueSize, accumAlphaSize;
    00040     Bool doubleBuffer;
    00041     Bool stereo;
    00042     int bufferSize;
    00043     int depthSize;
    00044     int stencilSize;
    00045     int auxBuffers;
    00046     int level;
    00047     /* Start of Extended Visual Properties */
    00048     int visualRating;            /* visual_rating extension */
    00049     int transparentPixel;        /* visual_info extension */
    00050                                             /*    colors are floats scaled to ints */
    00051     int transparentRed, transparentGreen, transparentBlue, transparentAlpha;
    00052     int transparentIndex;
    00053     int multiSampleSize;
    00054     int nMultiSampleBuffers;
    00055     int visualSelectGroup;
    00056 };
    00057
    00058 #define __GLX_MIN_CONFIG_PROPS   18
    00059 #define __GLX_MAX_CONFIG_PROPS   500
    00060
    00061 #define __GLX_EXT_CONFIG_PROPS   10
    00062
    00063 /*
    00064 ** Since we send all non-core visual properties as token, value pairs,
    00065 ** we require 2 words across the wire. In order to maintain backwards
    00066 ** compatibility, we need to send the total number of words that the
    00067 ** VisualConfigs are sent back in so old libraries can simply "ignore"
    00068 ** the new properties.
    00069 */
    00070 #define __GLX_TOTAL_CONFIG       (__GLX_MIN_CONFIG_PROPS +      \
    00071                                     2 * __GLX_EXT_CONFIG_PROPS)
    00072
    00073 struct __GLXFBConfigRec {
    00074     int visualType;
    00075     int transparentType;
    00076                                 /*    colors are floats scaled to ints */
    00077     int transparentRed, transparentGreen, transparentBlue, transparentAlpha;
    00078     int transparentIndex;
    00079
    00080     int visualCaveat;
    00081
    00082     int associatedVisualId;
    00083     int screen;
    00084
    00085     int drawableType;
    00086     int renderType;
    00087
    00088     int maxPbufferWidth, maxPbufferHeight, maxPbufferPixels;
    00089     int optimalPbufferWidth, optimalPbufferHeight;  /* for SGIX_pbuffer */
    00090
    00091     int visualSelectGroup;       /* visuals grouped by select priority */
    00092
    00093     unsigned int id;
    00094
    00095     GLboolean rgbMode;
    00096     GLboolean colorIndexMode;
    00097     GLboolean doubleBufferMode;
    00098     GLboolean stereoMode;
    00099     GLboolean haveAccumBuffer;
    00100     GLboolean haveDepthBuffer;
    00101     GLboolean haveStencilBuffer;
    00102
    00103     /* The number of bits present in various buffers */
    00104     GLint accumRedBits, accumGreenBits, accumBlueBits, accumAlphaBits;
    00105     GLint depthBits;
    00106     GLint stencilBits;
    00107     GLint indexBits;
    00108     GLint redBits, greenBits, blueBits, alphaBits;
    00109     GLuint redMask, greenMask, blueMask, alphaMask;
    00110
    00111     GLuint multiSampleSize;     /* Number of samples per pixel (0 if no ms) */
    00112
    00113     GLuint nMultiSampleBuffers; /* Number of availble ms buffers */
    00114     GLint maxAuxBuffers;
    00115
    00116     /* frame buffer level */
    00117     GLint level;
    00118
    00119     /* color ranges (for SGI_color_range) */
    00120     GLboolean extendedRange;
    00121     GLdouble minRed, maxRed;
    00122     GLdouble minGreen, maxGreen;
    00123     GLdouble minBlue, maxBlue;
    00124     GLdouble minAlpha, maxAlpha;
    00125 };
    00126
    00127 #define __GLX_TOTAL_FBCONFIG_PROPS           35
    00128
    00129 #endif /* !__GLX_glxint_h__ */

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines