• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* This file was derived from drisw_glx.c which carries the following
2  * copyright:
3  *
4  * Copyright 2008 George Sapountzis
5  *
6  * Permission is hereby granted, free of charge, to any person obtaining a
7  * copy of this software and associated documentation files (the "Software"),
8  * to deal in the Software without restriction, including without limitation
9  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
10  * and/or sell copies of the Software, and to permit persons to whom the
11  * Software is furnished to do so, subject to the following conditions:
12  *
13  * The above copyright notice and this permission notice (including the next
14  * paragraph) shall be included in all copies or substantial portions of the
15  * Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
20  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23  * SOFTWARE.
24  */
25 
26 struct drisw_display
27 {
28    __GLXDRIdisplay base;
29 };
30 
31 struct drisw_context
32 {
33    struct glx_context base;
34    __DRIcontext *driContext;
35 
36 };
37 
38 struct drisw_screen
39 {
40    struct glx_screen base;
41 
42    __DRIscreen *driScreen;
43    __GLXDRIscreen vtable;
44    const __DRIcoreExtension *core;
45    const __DRIswrastExtension *swrast;
46    const __DRItexBufferExtension *texBuffer;
47    const __DRIcopySubBufferExtension *copySubBuffer;
48    const __DRI2rendererQueryExtension *rendererQuery;
49 
50    const __DRIconfig **driver_configs;
51 
52    void *driver;
53 };
54 
55 struct drisw_drawable
56 {
57    __GLXDRIdrawable base;
58 
59    GC gc;
60    GC swapgc;
61 
62    __DRIdrawable *driDrawable;
63    XVisualInfo *visinfo;
64    XImage *ximage;
65 };
66 
67 _X_HIDDEN int
68 drisw_query_renderer_integer(struct glx_screen *base, int attribute,
69                              unsigned int *value);
70 _X_HIDDEN int
71 drisw_query_renderer_string(struct glx_screen *base, int attribute,
72                             const char **value);
73