• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright 2015 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 // functionsglx_typedefs.h: Typedefs of GLX functions.
8 
9 #ifndef LIBANGLE_RENDERER_GL_GLX_FUNCTIONSGLXTYPEDEFS_H_
10 #define LIBANGLE_RENDERER_GL_GLX_FUNCTIONSGLXTYPEDEFS_H_
11 
12 #include "libANGLE/renderer/gl/glx/platform_glx.h"
13 
14 namespace rx
15 {
16 
17 // Only the functions of GLX 1.2 and earlier need to be typdefed; the other
18 // functions are already typedefed in glx.h
19 
20 // GLX 1.0
21 typedef XVisualInfo *(*PFNGLXCHOOSEVISUALPROC)(Display *dpy, int screen, int *attribList);
22 typedef GLXContext (*PFNGLXCREATECONTEXTPROC)(Display *dpy,
23                                               XVisualInfo *vis,
24                                               GLXContext shareList,
25                                               Bool direct);
26 typedef void (*PFNGLXDESTROYCONTEXTPROC)(Display *dpy, GLXContext ctx);
27 typedef Bool (*PFNGLXMAKECURRENTPROC)(Display *dpy, GLXDrawable drawable, GLXContext ctx);
28 typedef void (*PFNGLXCOPYCONTEXTPROC)(Display *dpy,
29                                       GLXContext src,
30                                       GLXContext dst,
31                                       unsigned long mask);
32 typedef void (*PFNGLXSWAPBUFFERSPROC)(Display *dpy, GLXDrawable drawable);
33 typedef GLXPixmap (*PFNGLXCREATEGLXPIXMAPPROC)(Display *dpy, XVisualInfo *visual, Pixmap pixmap);
34 typedef void (*PFNGLXDESTROYGLXPIXMAPPROC)(Display *dpy, GLXPixmap pixmap);
35 typedef Bool (*PFNGLXQUERYEXTENSIONPROC)(Display *dpy, int *errorb, int *event);
36 typedef Bool (*PFNGLXQUERYVERSIONPROC)(Display *dpy, int *maj, int *min);
37 typedef Bool (*PFNGLXISDIRECTPROC)(Display *dpy, GLXContext ctx);
38 typedef int (*PFNGLXGETCONFIGPROC)(Display *dpy, XVisualInfo *visual, int attrib, int *value);
39 typedef GLXContext (*PFNGLXGETCURRENTCONTEXTPROC)();
40 typedef GLXDrawable (*PFNGLXGETCURRENTDRAWABLEPROC)();
41 typedef GLXContext (*PFNGLXGETCURRENTCONTEXTPROC)();
42 typedef GLXDrawable (*PFNGLXGETCURRENTDRAWABLEPROC)();
43 typedef void (*PFNGLXWAITGLPROC)();
44 typedef void (*PFNGLXWAITXPROC)();
45 typedef void (*PFNGLXUSEXFONT)(Font font, int first, int count, int list);
46 
47 // GLX 1.1
48 typedef const char *(*PFNGLXQUERYEXTENSIONSSTRINGPROC)(Display *dpy, int screen);
49 typedef const char *(*PFNGLXQUERYSERVERSTRINGPROC)(Display *dpy, int screen, int name);
50 typedef const char *(*PFNGLXGETCLIENTSTRINGPROC)(Display *dpy, int name);
51 
52 // GLX 1.2
53 typedef Display *(*PFNGLXGETCURRENTDISPLAYPROC)();
54 
55 }  // namespace rx
56 
57 #endif  // LIBANGLE_RENDERER_GL_GLX_FUNCTIONSGLXTYPEDEFS_H_
58