i dunno, even the clear isn't working for gl right now
[dana/dcompmgr.git] / glxcompat.h
1 #ifndef dc_glxcompat_h
2 #define dc_glxcompat_h
3
4 #include <xcb/xcb.h>
5 #include <glib.h>
6
7 typedef struct d_glx_fb_config d_glx_fb_config_t;
8
9 struct d_glx_fb_config {
10     uint32_t fbconfig_id;
11     uint32_t visual_id;
12     uint32_t buffer_size;
13     uint32_t level;
14     uint32_t doublebuffer;
15     uint32_t stereo;
16     uint32_t aux_buffers;
17     uint32_t red_size;
18     uint32_t green_size;
19     uint32_t blue_size;
20     uint32_t alpha_size;
21     uint32_t depth_size;
22     uint32_t stencil_size;
23     uint32_t accum_red_size;
24     uint32_t accum_green_size;
25     uint32_t accum_blue_size;
26     uint32_t accum_alpha_size;
27     uint32_t render_type;
28     uint32_t drawable_type;
29     uint32_t x_renderable;
30     uint32_t x_visual_type;
31     uint32_t config_caveat;
32     uint32_t transparent_type;
33     uint32_t transparent_index_value;
34     uint32_t transparent_red_value;
35     uint32_t transparent_green_value;
36     uint32_t transparent_blue_value;
37     uint32_t transparent_alpha_value;
38     uint32_t bind_to_texture_rgba_ext;
39 };
40
41 d_glx_fb_config_t* glxcompat_choose_fb_config(xcb_connection_t *conn,
42                                               int screen,
43                                               const uint32_t *attrs,
44                                               int *nret);
45
46 gboolean glxcompat_get_fb_config_attrib(d_glx_fb_config_t fb,
47                                         uint32_t name,
48                                         uint32_t *value);
49
50 xcb_visualid_t glxcompat_choose_visual(xcb_connection_t *conn,
51                                        int screen,
52                                        const uint32_t *attrs);
53                                        
54
55 #endif