ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

glx.h
Go to the documentation of this file.
00001 /*
00002  * Mesa 3-D graphics library
00003  * Version:  6.5
00004  * 
00005  * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
00006  * 
00007  * Permission is hereby granted, free of charge, to any person obtaining a
00008  * copy of this software and associated documentation files (the "Software"),
00009  * to deal in the Software without restriction, including without limitation
00010  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
00011  * and/or sell copies of the Software, and to permit persons to whom the
00012  * Software is furnished to do so, subject to the following conditions:
00013  * 
00014  * The above copyright notice and this permission notice shall be included
00015  * in all copies or substantial portions of the Software.
00016  * 
00017  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
00018  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00019  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
00020  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
00021  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
00022  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00023  */
00024 
00025 
00026 #ifndef GLX_H
00027 #define GLX_H
00028 
00029 
00030 #ifdef __VMS
00031 #include <GL/vms_x_fix.h>
00032 # ifdef __cplusplus
00033 /* VMS Xlib.h gives problems with C++.
00034  * this avoids a bunch of trivial warnings */
00035 #pragma message disable nosimpint
00036 #endif
00037 #endif
00038 #include <X11/Xlib.h>
00039 #include <X11/Xutil.h>
00040 #ifdef __VMS
00041 # ifdef __cplusplus
00042 #pragma message enable nosimpint
00043 #endif
00044 #endif
00045 #include <GL/gl.h>
00046 
00047 
00048 #if defined(USE_MGL_NAMESPACE)
00049 #include "glx_mangle.h"
00050 #endif
00051 
00052 
00053 #ifdef __cplusplus
00054 extern "C" {
00055 #endif
00056 
00057 
00058 #define GLX_VERSION_1_1     1
00059 #define GLX_VERSION_1_2     1
00060 #define GLX_VERSION_1_3     1
00061 #define GLX_VERSION_1_4     1
00062 
00063 #define GLX_EXTENSION_NAME   "GLX"
00064 
00065 
00066 
00067 /*
00068  * Tokens for glXChooseVisual and glXGetConfig:
00069  */
00070 #define GLX_USE_GL      1
00071 #define GLX_BUFFER_SIZE     2
00072 #define GLX_LEVEL       3
00073 #define GLX_RGBA        4
00074 #define GLX_DOUBLEBUFFER    5
00075 #define GLX_STEREO      6
00076 #define GLX_AUX_BUFFERS     7
00077 #define GLX_RED_SIZE        8
00078 #define GLX_GREEN_SIZE      9
00079 #define GLX_BLUE_SIZE       10
00080 #define GLX_ALPHA_SIZE      11
00081 #define GLX_DEPTH_SIZE      12
00082 #define GLX_STENCIL_SIZE    13
00083 #define GLX_ACCUM_RED_SIZE  14
00084 #define GLX_ACCUM_GREEN_SIZE    15
00085 #define GLX_ACCUM_BLUE_SIZE 16
00086 #define GLX_ACCUM_ALPHA_SIZE    17
00087 
00088 
00089 /*
00090  * Error codes returned by glXGetConfig:
00091  */
00092 #define GLX_BAD_SCREEN      1
00093 #define GLX_BAD_ATTRIBUTE   2
00094 #define GLX_NO_EXTENSION    3
00095 #define GLX_BAD_VISUAL      4
00096 #define GLX_BAD_CONTEXT     5
00097 #define GLX_BAD_VALUE           6
00098 #define GLX_BAD_ENUM        7
00099 
00100 
00101 /*
00102  * GLX 1.1 and later:
00103  */
00104 #define GLX_VENDOR      1
00105 #define GLX_VERSION     2
00106 #define GLX_EXTENSIONS      3
00107 
00108 
00109 /*
00110  * GLX 1.3 and later:
00111  */
00112 #define GLX_CONFIG_CAVEAT       0x20
00113 #define GLX_DONT_CARE           0xFFFFFFFF
00114 #define GLX_X_VISUAL_TYPE       0x22
00115 #define GLX_TRANSPARENT_TYPE        0x23
00116 #define GLX_TRANSPARENT_INDEX_VALUE 0x24
00117 #define GLX_TRANSPARENT_RED_VALUE   0x25
00118 #define GLX_TRANSPARENT_GREEN_VALUE 0x26
00119 #define GLX_TRANSPARENT_BLUE_VALUE  0x27
00120 #define GLX_TRANSPARENT_ALPHA_VALUE 0x28
00121 #define GLX_WINDOW_BIT          0x00000001
00122 #define GLX_PIXMAP_BIT          0x00000002
00123 #define GLX_PBUFFER_BIT         0x00000004
00124 #define GLX_AUX_BUFFERS_BIT     0x00000010
00125 #define GLX_FRONT_LEFT_BUFFER_BIT   0x00000001
00126 #define GLX_FRONT_RIGHT_BUFFER_BIT  0x00000002
00127 #define GLX_BACK_LEFT_BUFFER_BIT    0x00000004
00128 #define GLX_BACK_RIGHT_BUFFER_BIT   0x00000008
00129 #define GLX_DEPTH_BUFFER_BIT        0x00000020
00130 #define GLX_STENCIL_BUFFER_BIT      0x00000040
00131 #define GLX_ACCUM_BUFFER_BIT        0x00000080
00132 #define GLX_NONE            0x8000
00133 #define GLX_SLOW_CONFIG         0x8001
00134 #define GLX_TRUE_COLOR          0x8002
00135 #define GLX_DIRECT_COLOR        0x8003
00136 #define GLX_PSEUDO_COLOR        0x8004
00137 #define GLX_STATIC_COLOR        0x8005
00138 #define GLX_GRAY_SCALE          0x8006
00139 #define GLX_STATIC_GRAY         0x8007
00140 #define GLX_TRANSPARENT_RGB     0x8008
00141 #define GLX_TRANSPARENT_INDEX       0x8009
00142 #define GLX_VISUAL_ID           0x800B
00143 #define GLX_SCREEN          0x800C
00144 #define GLX_NON_CONFORMANT_CONFIG   0x800D
00145 #define GLX_DRAWABLE_TYPE       0x8010
00146 #define GLX_RENDER_TYPE         0x8011
00147 #define GLX_X_RENDERABLE        0x8012
00148 #define GLX_FBCONFIG_ID         0x8013
00149 #define GLX_RGBA_TYPE           0x8014
00150 #define GLX_COLOR_INDEX_TYPE        0x8015
00151 #define GLX_MAX_PBUFFER_WIDTH       0x8016
00152 #define GLX_MAX_PBUFFER_HEIGHT      0x8017
00153 #define GLX_MAX_PBUFFER_PIXELS      0x8018
00154 #define GLX_PRESERVED_CONTENTS      0x801B
00155 #define GLX_LARGEST_PBUFFER     0x801C
00156 #define GLX_WIDTH           0x801D
00157 #define GLX_HEIGHT          0x801E
00158 #define GLX_EVENT_MASK          0x801F
00159 #define GLX_DAMAGED         0x8020
00160 #define GLX_SAVED           0x8021
00161 #define GLX_WINDOW          0x8022
00162 #define GLX_PBUFFER         0x8023
00163 #define GLX_PBUFFER_HEIGHT              0x8040
00164 #define GLX_PBUFFER_WIDTH               0x8041
00165 #define GLX_RGBA_BIT            0x00000001
00166 #define GLX_COLOR_INDEX_BIT     0x00000002
00167 #define GLX_PBUFFER_CLOBBER_MASK    0x08000000
00168 
00169 
00170 /*
00171  * GLX 1.4 and later:
00172  */
00173 #define GLX_SAMPLE_BUFFERS              0x186a0 /*100000*/
00174 #define GLX_SAMPLES                     0x186a1 /*100001*/
00175 
00176 
00177 
00178 typedef struct __GLXcontextRec *GLXContext;
00179 typedef XID GLXPixmap;
00180 typedef XID GLXDrawable;
00181 /* GLX 1.3 and later */
00182 typedef struct __GLXFBConfigRec *GLXFBConfig;
00183 typedef XID GLXFBConfigID;
00184 typedef XID GLXContextID;
00185 typedef XID GLXWindow;
00186 typedef XID GLXPbuffer;
00187 
00188 
00189 
00190 extern XVisualInfo* glXChooseVisual( Display *dpy, int screen,
00191                      int *attribList );
00192 
00193 extern GLXContext glXCreateContext( Display *dpy, XVisualInfo *vis,
00194                     GLXContext shareList, Bool direct );
00195 
00196 extern void glXDestroyContext( Display *dpy, GLXContext ctx );
00197 
00198 extern Bool glXMakeCurrent( Display *dpy, GLXDrawable drawable,
00199                 GLXContext ctx);
00200 
00201 extern void glXCopyContext( Display *dpy, GLXContext src, GLXContext dst,
00202                 unsigned long mask );
00203 
00204 extern void glXSwapBuffers( Display *dpy, GLXDrawable drawable );
00205 
00206 extern GLXPixmap glXCreateGLXPixmap( Display *dpy, XVisualInfo *visual,
00207                      Pixmap pixmap );
00208 
00209 extern void glXDestroyGLXPixmap( Display *dpy, GLXPixmap pixmap );
00210 
00211 extern Bool glXQueryExtension( Display *dpy, int *errorb, int *event );
00212 
00213 extern Bool glXQueryVersion( Display *dpy, int *maj, int *min );
00214 
00215 extern Bool glXIsDirect( Display *dpy, GLXContext ctx );
00216 
00217 extern int glXGetConfig( Display *dpy, XVisualInfo *visual,
00218              int attrib, int *value );
00219 
00220 extern GLXContext glXGetCurrentContext( void );
00221 
00222 extern GLXDrawable glXGetCurrentDrawable( void );
00223 
00224 extern void glXWaitGL( void );
00225 
00226 extern void glXWaitX( void );
00227 
00228 extern void glXUseXFont( Font font, int first, int count, int list );
00229 
00230 
00231 
00232 /* GLX 1.1 and later */
00233 extern const char *glXQueryExtensionsString( Display *dpy, int screen );
00234 
00235 extern const char *glXQueryServerString( Display *dpy, int screen, int name );
00236 
00237 extern const char *glXGetClientString( Display *dpy, int name );
00238 
00239 
00240 /* GLX 1.2 and later */
00241 extern Display *glXGetCurrentDisplay( void );
00242 
00243 
00244 /* GLX 1.3 and later */
00245 extern GLXFBConfig *glXChooseFBConfig( Display *dpy, int screen,
00246                                        const int *attribList, int *nitems );
00247 
00248 extern int glXGetFBConfigAttrib( Display *dpy, GLXFBConfig config,
00249                                  int attribute, int *value );
00250 
00251 extern GLXFBConfig *glXGetFBConfigs( Display *dpy, int screen,
00252                                      int *nelements );
00253 
00254 extern XVisualInfo *glXGetVisualFromFBConfig( Display *dpy,
00255                                               GLXFBConfig config );
00256 
00257 extern GLXWindow glXCreateWindow( Display *dpy, GLXFBConfig config,
00258                                   Window win, const int *attribList );
00259 
00260 extern void glXDestroyWindow( Display *dpy, GLXWindow window );
00261 
00262 extern GLXPixmap glXCreatePixmap( Display *dpy, GLXFBConfig config,
00263                                   Pixmap pixmap, const int *attribList );
00264 
00265 extern void glXDestroyPixmap( Display *dpy, GLXPixmap pixmap );
00266 
00267 extern GLXPbuffer glXCreatePbuffer( Display *dpy, GLXFBConfig config,
00268                                     const int *attribList );
00269 
00270 extern void glXDestroyPbuffer( Display *dpy, GLXPbuffer pbuf );
00271 
00272 extern void glXQueryDrawable( Display *dpy, GLXDrawable draw, int attribute,
00273                               unsigned int *value );
00274 
00275 extern GLXContext glXCreateNewContext( Display *dpy, GLXFBConfig config,
00276                                        int renderType, GLXContext shareList,
00277                                        Bool direct );
00278 
00279 extern Bool glXMakeContextCurrent( Display *dpy, GLXDrawable draw,
00280                                    GLXDrawable read, GLXContext ctx );
00281 
00282 extern GLXDrawable glXGetCurrentReadDrawable( void );
00283 
00284 extern int glXQueryContext( Display *dpy, GLXContext ctx, int attribute,
00285                             int *value );
00286 
00287 extern void glXSelectEvent( Display *dpy, GLXDrawable drawable,
00288                             unsigned long mask );
00289 
00290 extern void glXGetSelectedEvent( Display *dpy, GLXDrawable drawable,
00291                                  unsigned long *mask );
00292 
00293 /* GLX 1.3 function pointer typedefs */
00294 typedef GLXFBConfig * (* PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
00295 typedef GLXFBConfig * (* PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
00296 typedef int (* PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
00297 typedef XVisualInfo * (* PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
00298 typedef GLXWindow (* PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
00299 typedef void (* PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
00300 typedef GLXPixmap (* PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
00301 typedef void (* PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
00302 typedef GLXPbuffer (* PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
00303 typedef void (* PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
00304 typedef void (* PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
00305 typedef GLXContext (* PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
00306 typedef Bool (* PFNGLXMAKECONTEXTCURRENTPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
00307 typedef GLXDrawable (* PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
00308 typedef Display * (* PFNGLXGETCURRENTDISPLAYPROC) (void);
00309 typedef int (* PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
00310 typedef void (* PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
00311 typedef void (* PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
00312 
00313 
00314 /*
00315  * ARB 2. GLX_ARB_get_proc_address
00316  */
00317 #ifndef GLX_ARB_get_proc_address
00318 #define GLX_ARB_get_proc_address 1
00319 
00320 typedef void (*__GLXextFuncPtr)(void);
00321 extern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *);
00322 
00323 #endif /* GLX_ARB_get_proc_address */
00324 
00325 
00326 
00327 /* GLX 1.4 and later */
00328 extern void (*glXGetProcAddress(const GLubyte *procname))( void );
00329 
00330 /* GLX 1.4 function pointer typedefs */
00331 typedef __GLXextFuncPtr (* PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);
00332 
00333 
00334 #ifndef GLX_GLXEXT_LEGACY
00335 
00336 #include <GL/glxext.h>
00337 
00338 #endif /* GLX_GLXEXT_LEGACY */
00339 
00340 
00346 /*
00347  * ???. GLX_NV_vertex_array_range
00348  */
00349 #ifndef GLX_NV_vertex_array_range
00350 #define GLX_NV_vertex_array_range
00351 
00352 extern void *glXAllocateMemoryNV(GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
00353 extern void glXFreeMemoryNV(GLvoid *pointer);
00354 typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
00355 typedef void ( * PFNGLXFREEMEMORYNVPROC) (GLvoid *pointer);
00356 
00357 #endif /* GLX_NV_vertex_array_range */
00358 
00359 
00360 /*
00361  * ???. GLX_MESA_allocate_memory
00362  */ 
00363 #ifndef GLX_MESA_allocate_memory
00364 #define GLX_MESA_allocate_memory 1
00365 
00366 extern void *glXAllocateMemoryMESA(Display *dpy, int scrn, size_t size, float readfreq, float writefreq, float priority);
00367 extern void glXFreeMemoryMESA(Display *dpy, int scrn, void *pointer);
00368 extern GLuint glXGetMemoryOffsetMESA(Display *dpy, int scrn, const void *pointer);
00369 typedef void * ( * PFNGLXALLOCATEMEMORYMESAPROC) (Display *dpy, int scrn, size_t size, float readfreq, float writefreq, float priority);
00370 typedef void ( * PFNGLXFREEMEMORYMESAPROC) (Display *dpy, int scrn, void *pointer);
00371 typedef GLuint (* PFNGLXGETMEMORYOFFSETMESAPROC) (Display *dpy, int scrn, const void *pointer);
00372 
00373 #endif /* GLX_MESA_allocate_memory */
00374 
00375 
00376 /*
00377  * ARB ?. GLX_ARB_render_texture
00378  * XXX This was never finalized!
00379  */
00380 #ifndef GLX_ARB_render_texture
00381 #define GLX_ARB_render_texture 1
00382 
00383 extern Bool glXBindTexImageARB(Display *dpy, GLXPbuffer pbuffer, int buffer);
00384 extern Bool glXReleaseTexImageARB(Display *dpy, GLXPbuffer pbuffer, int buffer);
00385 extern Bool glXDrawableAttribARB(Display *dpy, GLXDrawable draw, const int *attribList);
00386 
00387 #endif /* GLX_ARB_render_texture */
00388 
00389 
00390 /*
00391  * Remove this when glxext.h is updated.
00392  */
00393 #ifndef GLX_NV_float_buffer
00394 #define GLX_NV_float_buffer 1
00395 
00396 #define GLX_FLOAT_COMPONENTS_NV         0x20B0
00397 
00398 #endif /* GLX_NV_float_buffer */
00399 
00400 
00401 
00402 /*
00403  * #?. GLX_MESA_swap_frame_usage
00404  */
00405 #ifndef GLX_MESA_swap_frame_usage
00406 #define GLX_MESA_swap_frame_usage 1
00407 
00408 extern int glXGetFrameUsageMESA(Display *dpy, GLXDrawable drawable, float *usage);
00409 extern int glXBeginFrameTrackingMESA(Display *dpy, GLXDrawable drawable);
00410 extern int glXEndFrameTrackingMESA(Display *dpy, GLXDrawable drawable);
00411 extern int glXQueryFrameTrackingMESA(Display *dpy, GLXDrawable drawable, int64_t *swapCount, int64_t *missedFrames, float *lastMissedUsage);
00412 
00413 typedef int (*PFNGLXGETFRAMEUSAGEMESAPROC) (Display *dpy, GLXDrawable drawable, float *usage);
00414 typedef int (*PFNGLXBEGINFRAMETRACKINGMESAPROC)(Display *dpy, GLXDrawable drawable);
00415 typedef int (*PFNGLXENDFRAMETRACKINGMESAPROC)(Display *dpy, GLXDrawable drawable);
00416 typedef int (*PFNGLXQUERYFRAMETRACKINGMESAPROC)(Display *dpy, GLXDrawable drawable, int64_t *swapCount, int64_t *missedFrames, float *lastMissedUsage);
00417 
00418 #endif /* GLX_MESA_swap_frame_usage */
00419 
00420 
00421 
00422 /*
00423  * #?. GLX_MESA_swap_control
00424  */
00425 #ifndef GLX_MESA_swap_control
00426 #define GLX_MESA_swap_control 1
00427 
00428 extern int glXSwapIntervalMESA(unsigned int interval);
00429 extern int glXGetSwapIntervalMESA(void);
00430 
00431 typedef int (*PFNGLXSWAPINTERVALMESAPROC)(unsigned int interval);
00432 typedef int (*PFNGLXGETSWAPINTERVALMESAPROC)(void);
00433 
00434 #endif /* GLX_MESA_swap_control */
00435 
00436 
00437 
00438 /*
00439  * #?. GLX_EXT_texture_from_pixmap
00440  * XXX not finished?
00441  */
00442 #ifndef GLX_EXT_texture_from_pixmap
00443 #define GLX_EXT_texture_from_pixmap 1
00444 
00445 #define GLX_BIND_TO_TEXTURE_RGB_EXT        0x20D0
00446 #define GLX_BIND_TO_TEXTURE_RGBA_EXT       0x20D1
00447 #define GLX_BIND_TO_MIPMAP_TEXTURE_EXT     0x20D2
00448 #define GLX_BIND_TO_TEXTURE_TARGETS_EXT    0x20D3
00449 #define GLX_Y_INVERTED_EXT                 0x20D4
00450 
00451 #define GLX_TEXTURE_FORMAT_EXT             0x20D5
00452 #define GLX_TEXTURE_TARGET_EXT             0x20D6
00453 #define GLX_MIPMAP_TEXTURE_EXT             0x20D7
00454 
00455 #define GLX_TEXTURE_FORMAT_NONE_EXT        0x20D8
00456 #define GLX_TEXTURE_FORMAT_RGB_EXT         0x20D9
00457 #define GLX_TEXTURE_FORMAT_RGBA_EXT        0x20DA
00458 
00459 #define GLX_TEXTURE_1D_BIT_EXT             0x00000001
00460 #define GLX_TEXTURE_2D_BIT_EXT             0x00000002
00461 #define GLX_TEXTURE_RECTANGLE_BIT_EXT      0x00000004
00462 
00463 #define GLX_TEXTURE_1D_EXT                 0x20DB
00464 #define GLX_TEXTURE_2D_EXT                 0x20DC
00465 #define GLX_TEXTURE_RECTANGLE_EXT          0x20DD
00466 
00467 #define GLX_FRONT_LEFT_EXT                 0x20DE
00468 #define GLX_FRONT_RIGHT_EXT                0x20DF
00469 #define GLX_BACK_LEFT_EXT                  0x20E0
00470 #define GLX_BACK_RIGHT_EXT                 0x20E1
00471 #define GLX_FRONT_EXT                      GLX_FRONT_LEFT_EXT
00472 #define GLX_BACK_EXT                       GLX_BACK_LEFT_EXT
00473 #define GLX_AUX0_EXT                       0x20E2
00474 #define GLX_AUX1_EXT                       0x20E3 
00475 #define GLX_AUX2_EXT                       0x20E4 
00476 #define GLX_AUX3_EXT                       0x20E5 
00477 #define GLX_AUX4_EXT                       0x20E6 
00478 #define GLX_AUX5_EXT                       0x20E7 
00479 #define GLX_AUX6_EXT                       0x20E8
00480 #define GLX_AUX7_EXT                       0x20E9 
00481 #define GLX_AUX8_EXT                       0x20EA 
00482 #define GLX_AUX9_EXT                       0x20EB
00483 
00484 extern void glXBindTexImageEXT(Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);
00485 extern void glXReleaseTexImageEXT(Display *dpy, GLXDrawable drawable, int buffer);
00486 
00487 #endif /* GLX_EXT_texture_from_pixmap */
00488 
00489 
00490 
00491 
00492 /*** Should these go here, or in another header? */
00493 /*
00494 ** GLX Events
00495 */
00496 typedef struct {
00497     int event_type;     /* GLX_DAMAGED or GLX_SAVED */
00498     int draw_type;      /* GLX_WINDOW or GLX_PBUFFER */
00499     unsigned long serial;   /* # of last request processed by server */
00500     Bool send_event;        /* true if this came for SendEvent request */
00501     Display *display;       /* display the event was read from */
00502     GLXDrawable drawable;   /* XID of Drawable */
00503     unsigned int buffer_mask;   /* mask indicating which buffers are affected */
00504     unsigned int aux_buffer;    /* which aux buffer was affected */
00505     int x, y;
00506     int width, height;
00507     int count;          /* if nonzero, at least this many more */
00508 } GLXPbufferClobberEvent;
00509 
00510 typedef union __GLXEvent {
00511     GLXPbufferClobberEvent glxpbufferclobber;
00512     long pad[24];
00513 } GLXEvent;
00514 
00515 #ifdef __cplusplus
00516 }
00517 #endif
00518 
00519 #endif

Generated on Fri May 25 2012 04:17:59 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.