root / trunk / linux / linux_gl.h

Revision 80, 5.2 kB (checked in by leo, 8 years ago)

Removed unused Mesa functions.

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
Line 
1#ifndef _LINUX_GL_H_
2#define _LINUX_GL_H_
3
4// =============================================================================
5// GLX functions typedefs
6
7typedef XVisualInfo* (*PFNGLXCHOOSEVISUAL) (Display *dpy, int screen, int *attribList);
8typedef GLXContext (*PFNGLXCREATECONTEXT) (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
9typedef void (*PFNGLXDESTROYCONTEXT) (Display *dpy, GLXContext ctx);
10typedef Bool (*PFNGLXMAKECURRENT) (Display *dpy, GLXDrawable drawable, GLXContext ctx);
11typedef void (*PFNGLXCOPYCONTEXT) (Display *dpy, GLXContext src, GLXContext dst, GLuint mask);
12typedef void (*PFNGLXSWAPBUFFERS) (Display *dpy, GLXDrawable drawable);
13typedef GLXPixmap (*PFNGLXCREATEGLXPIXMAP) (Display *dpy, XVisualInfo *visual, Pixmap pixmap);
14typedef void (*PFNGLXDESTROYGLXPIXMAP) (Display *dpy, GLXPixmap pixmap);
15typedef Bool (*PFNGLXQUERYEXTENSION) (Display *dpy, int *errorb, int *event);
16typedef Bool (*PFNGLXQUERYVERSION) (Display *dpy, int *maj, int *min);
17typedef Bool (*PFNGLXISDIRECT) (Display *dpy, GLXContext ctx);
18typedef int (*PFNGLXGETCONFIG) (Display *dpy, XVisualInfo *visual, int attrib, int *value);
19typedef GLXContext (*PFNGLXGETCURRENTCONTEXT) (void);
20typedef GLXDrawable (*PFNGLXGETCURRENTDRAWABLE) (void);
21typedef void (*PFNGLXWAITGL) (void);
22typedef void (*PFNGLXWAITX) (void);
23typedef void (*PFNGLXUSEXFONT) (Font font, int first, int count, int list);
24
25// GLX 1.1 and later
26typedef const char* (*PFNGLXQUERYEXTENSIONSSTRING) (Display *dpy, int screen);
27typedef const char* (*PFNGLXQUERYSERVERSTRING) (Display *dpy, int screen, int name);
28typedef const char* (*PFNGLXGETCLIENTSTRING) (Display *dpy, int name);
29
30// GLX_MESA_pixmap_colormap
31typedef GLXPixmap (*PFNGLXCREATEGLXPIXMAPMESA) (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
32
33// GLX_MESA_release_buffers
34typedef Bool (*PFNGLXRELEASEBUFFERSMESA) (Display *dpy, GLXDrawable d);
35
36// GLX_MESA_copy_sub_buffer
37typedef void (*PFNGLXCOPYSUBBUFFERMESA) (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);
38
39// GLX_MESA_set_3dfx_mode
40typedef GLboolean (*PFNGLXSET3DFXMODEMESA) (GLint mode);
41
42// GLX_SGI_video_sync
43typedef int (*PFNGLXGETVIDEOSYNCSGI) (unsigned int *count);
44typedef int (*PFNGLXWAITVIDEOSYNCSGI) (int divisor, int remainder, unsigned int *count);
45
46// GLX_ARB_get_proc_address
47typedef void* (*PFNGLXGETPROCADDRESSARB) (const GLubyte *procName);
48
49
50// =============================================================================
51// GLX extern declarations
52
53extern PFNGLXCHOOSEVISUAL pfnglXChooseVisual;
54extern PFNGLXCREATECONTEXT pfnglXCreateContext;
55extern PFNGLXDESTROYCONTEXT pfnglXDestroyContext;
56extern PFNGLXMAKECURRENT pfnglXMakeCurrent;
57extern PFNGLXCOPYCONTEXT pfnglXCopyContext;
58extern PFNGLXSWAPBUFFERS pfnglXSwapBuffers;
59extern PFNGLXCREATEGLXPIXMAP pfnglXCreateGLXPixmap;
60extern PFNGLXDESTROYGLXPIXMAP pfnglXDestroyGLXPixmap;
61extern PFNGLXQUERYEXTENSION pfnglXQueryExtension;
62extern PFNGLXQUERYVERSION pfnglXQueryVersion;
63extern PFNGLXISDIRECT pfnglXIsDirect;
64extern PFNGLXGETCONFIG pfnglXGetConfig;
65extern PFNGLXGETCURRENTCONTEXT pfnglXGetCurrentContext;
66extern PFNGLXGETCURRENTDRAWABLE pfnglXGetCurrentDrawable;
67extern PFNGLXWAITGL pfnglXWaitGL;
68extern PFNGLXWAITX pfnglXWaitX;
69extern PFNGLXUSEXFONT pfnglXUseXFont;
70extern PFNGLXQUERYEXTENSIONSSTRING pfnglXQueryExtensionsString;
71extern PFNGLXQUERYSERVERSTRING pfnglXQueryServerString;
72extern PFNGLXGETCLIENTSTRING pfnglXGetClientString;
73//extern PFNGLXCREATEGLXPIXMAPMESA pfnglXCreateGLXPixmapMESA;
74//extern PFNGLXRELEASEBUFFERSMESA pfnglXReleaseBuffersMESA;
75//extern PFNGLXCOPYSUBBUFFERMESA pfnglXCopySubBufferMESA;
76//extern PFNGLXSET3DFXMODEMESA pfnglXSet3DfxModeMESA;
77//extern PFNGLXGETVIDEOSYNCSGI pfnglXGetVideoSyncSGI;
78//extern PFNGLXWAITVIDEOSYNCSGI pfnglXWaitVideoSyncSGI;
79extern PFNGLXGETPROCADDRESSARB pfnglXGetProcAddressARB;
80
81
82// =============================================================================
83// Replace GLX functions
84
85#define glXChooseVisual pfnglXChooseVisual;
86#define glXCreateContext pfnglXCreateContext;
87#define glXDestroyContext pfnglXDestroyContext;
88#define glXMakeCurrent pfnglXMakeCurrent;
89#define glXCopyContext pfnglXCopyContext;
90#define glXSwapBuffers pfnglXSwapBuffers;
91#define glXCreateGLXPixmap pfnglXCreateGLXPixmap;
92#define glXDestroyGLXPixmap pfnglXDestroyGLXPixmap;
93#define glXQueryExtension pfnglXQueryExtension;
94#define glXQueryVersion pfnglXQueryVersion;
95#define glXIsDirect pfnglXIsDirect;
96#define glXGetConfig pfnglXGetConfig;
97#define glXGetCurrentContext pfnglXGetCurrentContext;
98#define glXGetCurrentDrawable pfnglXGetCurrentDrawable;
99#define glXWaitGL pfnglXWaitGL;
100#define glXWaitX pfnglXWaitX;
101#define glXUseXFont pfnglXUseXFont;
102#define glXQueryExtensionsString pfnglXQueryExtensionsString;
103#define glXQueryServerString pfnglXQueryServerString;
104#define glXGetClientString pfnglXGetClientString;
105//#define glXCreateGLXPixmapMESA pfnglXCreateGLXPixmapMESA;
106//#define glXReleaseBuffersMESA pfnglXReleaseBuffersMESA;
107//#define glXCopySubBufferMESA pfnglXCopySubBufferMESA;
108//#define glXSet3DfxModeMESA pfnglXSet3DfxModeMESA;
109//#define glXGetVideoSyncSGI pfnglXGetVideoSyncSGI;
110//#define glXWaitVideoSyncSGI pfnglXWaitVideoSyncSGI;
111#define glXGetProcAddressARB pfnglXGetProcAddressARB;
112
113
114#endif // _LINUX_GL_H_
Note: See TracBrowser for help on using the browser.