summaryrefslogtreecommitdiff
path: root/src/gallium/include/state_tracker/xlib_sw_winsys.h
AgeCommit message (Collapse)Author
2010-03-09gallium: create helper for swrast+xlib combinationKeith Whitwell
Several targets may want to reuse this code. It's pretty simple, not sure if this is really a win.
2010-03-09ws/xlib: remove self-knowledge about users of xlib winsysKeith Whitwell
Several software rasterizers can make use of this winsys, but there isn't any reason why the winsys itself should know about them. This change moves that information into the libgl-xlib target. Need to fix up other targets making use of this winsys.
2010-03-09ws/xlib: manage the GC internallyKeith Whitwell
No need for the user of this winsys to supply/manage the x11 gc for us.
2010-03-08gallium: remove xlib_driver::display_surfaceKeith Whitwell
Just use flush_frontbuffer directly. The flush_frontbuffer routine has been somewhat devalued recently, but it is actually just the right interface for our needs. It is in pipe_screen, meaning that any wrapping (eg trace module) will get properly unwrapped before we try and use the pipe_surface argument for real. If a particular co-state-tracker needs to implement this itself, it should organize a way to allow the winsys to call back up to its level, rather than hijacking the driver-supplied implementation.
2010-03-08gallium: introduce target directoryKeith Whitwell
Currently there are still at least two functions bundled up inside the winsys concept: a) that of a backend resource manager, sometimes capable of performing present() operations, b) the initialization code/routine for the whole driver stack. The inclusion of (b) makes it difficult to share implementations of (a) between different drivers. For instance, a clean xlib winsys could be of use for software-rasterized VG, GLES, EGL, etc, stacks. But that is only true as long as there is no dependency from the winsys to higher level code, as would be the case when we include (b) in this component. This change creates a new gallium/targets subtree, specifically for implementing the glue needed to build individual driver stacks, and moves that code out of a single example winsys, namely xlib. Other drivers continue to build unchanged, but hopefully can migrate to this structure over time.
2010-03-08winsys/xlib: remove dependency on glx/x11 state trackerKeith Whitwell
Introduce xlib_drawable struct, pass this down to winsys instead of having it use the internal data structures from glx/x11