summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/glx/xlib/xm_api.h
AgeCommit message (Collapse)Author
2010-11-18st/glx: Replace MESA_VERSION_STRING by xmesa_get_name.Chia-I Wu
xmesa_get_name returns the name of the st_api, which is the same as MESA_VERSION_STRING.
2010-10-13Rename GLvisual and __GLcontextModes to struct gl_configKristian Høgsberg
2010-10-13gl: Remove unused GLcontextModes fieldsKristian Høgsberg
2010-09-16st/xlib: Notify the context when the front/back buffers are swapped.Chia-I Wu
The current context should be notified when the the front/back buffers of the current drawable are swapped. The notification was skipped when xmesa_strict_invalidate is false (the default). This fixes fdo bug #29774.
2010-08-24st/glx: Include main/core.h.Chia-I Wu
Make st/glx include only main/core.h from core mesa.
2010-08-22glx/xlib: configurable strict/non-strict buffer size invalidateKeith Whitwell
Introduce a new configuration option XMESA_STRICT_INVALIDATE to switch between swapbuffers-based and glViewport-based buffer invalidation. Default strict invalidate to false, ie glViewport-based invalidation, aka ST_MANAGER_BROKEN_INVALIDATE. This means we will not call XGetGeometry after every swapbuffers, which allows swapbuffers to remain asynchronous. For apps running at 100fps with synchronous swapping, a 10% boost is typical. For gears, I see closer to 20% speedup. Note that the work of copying data on swapbuffers doesn't disappear - this change just allows the X server to execute the PutImage asynchronously without us effectively blocked until its completion. This applies even to llvmpipe's threaded rasterization as the swapbuffers operation was a large part of the serial component of an llvmpipe frame. The downside of this is correctness - applications which don't call glViewport on window resizes will get incorrect rendering, unless XMESA_STRICT_INVALIDATE is set. The ultimate solution would be to have per-frame but asynchronous invalidation. Xcb almost looks as if it could provide this, but the API doesn't seem to quite be there.
2010-03-14st/glx: Add support for GLX_MESA_copy_sub_buffer.Chia-I Wu
Create a per-display pipe_context as needed to copy the contents between framebuffer attachments. This allows us to support GLX_MESA_copy_sub_buffer.
2010-03-14st/glx: Add xmesa_display to hold per-display variables.Chia-I Wu
This basically adds a static xmesa_display to collect per-display static variables in xm_api.c. Multiple display support is still missing, but this is a step forward.
2010-03-12st/glx: Use st_api.h instead of st_public.h.Chia-I Wu
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
2010-02-23st/glx: improved depth/stencil format selection codeBrian Paul
Actually ask the gallium screen what Z/stencil format is supported. This will let us remove some hacks in the llvmpipe driver.
2010-02-02gallium: Move p_thread.h and p_atomic.h out of gallium interfaces.José Fonseca
Into os/os_thread.h and util/u_atomic.h respectively.
2009-10-07gallium/xlib: fix glXQueryDrawable() bugs, see bug 24320Brian Paul
2009-08-12gallium/glx/xlib: main/ prefix on Mesa includes, remove -I$(TOP)/src/mesa/main/Brian Paul
2009-03-18xlib st: Fix makeCurrent.Thomas Hellstrom
Flush if we change context. Also reinstate the old optimization of doing nothing if nothing changes. Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-01-09xlib: move state tracker to glx/xlibKeith Whitwell
Also, remove makefile hacks.