1#ifndef __win32_glx_h__
2#define __win32_glx_h__
3
4/* Copyright (c) Nate Robins, 1997. */
5
6/* This program is freely distributable without licensing fees
7   and is provided without guarantee or warrantee expressed or
8   implied. This program is -not- in the public domain. */
9
10#include "win32_x11.h"
11
12/* Type definitions (conversions). */
13typedef HGLRC GLXContext;
14
15#define GLX_USE_GL              1       /* support GLX rendering */
16#define GLX_BUFFER_SIZE         2       /* depth of the color buffer */
17#define GLX_LEVEL               3       /* level in plane stacking */
18#define GLX_RGBA                4       /* true if RGBA mode */
19#define GLX_DOUBLEBUFFER        5       /* double buffering supported */
20#define GLX_STEREO              6       /* stereo buffering supported */
21#define GLX_AUX_BUFFERS         7       /* number of aux buffers */
22#define GLX_RED_SIZE            8       /* number of red component bits */
23#define GLX_GREEN_SIZE          9       /* number of green component bits */
24#define GLX_BLUE_SIZE           10      /* number of blue component bits */
25#define GLX_ALPHA_SIZE          11      /* number of alpha component bits */
26#define GLX_DEPTH_SIZE          12      /* number of depth bits */
27#define GLX_STENCIL_SIZE        13      /* number of stencil bits */
28#define GLX_ACCUM_RED_SIZE      14      /* number of red accum bits */
29#define GLX_ACCUM_GREEN_SIZE    15      /* number of green accum bits */
30#define GLX_ACCUM_BLUE_SIZE     16      /* number of blue accum bits */
31#define GLX_ACCUM_ALPHA_SIZE    17      /* number of alpha accum bits */
32
33#define GLX_BAD_ATTRIB  2
34#define GLX_BAD_VISUAL  4
35
36/* Functions emulated by macros. */
37
38#define glXDestroyContext(display, context) \
39  wglDeleteContext(context)
40
41/* Function prototypes. */
42
43extern GLXContext glXCreateContext(
44  Display* display,
45  XVisualInfo* visinfo,
46  GLXContext share,
47  Bool direct);
48extern int glXGetConfig(
49  Display* display,
50  XVisualInfo* visual,
51  int attrib,
52  int* value);
53extern XVisualInfo* glXChooseVisual(
54  Display* display,
55  int screen,
56  int* attribList);
57
58#endif /* __win32_glx_h__ */
59