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