diff options
author | marha <marha@users.sourceforge.net> | 2012-12-03 09:09:06 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-12-03 09:09:06 +0100 |
commit | b8da71ffb17d3d16706db04115e9ba1dd8bc49b9 (patch) | |
tree | 52bf0a78e9db0a4eff7b3dbb7c3a036c01504f6a /mesalib/include/GL/internal | |
parent | d2d73da59e64acdc4718e4e6790a69d967bee875 (diff) | |
download | vcxsrv-b8da71ffb17d3d16706db04115e9ba1dd8bc49b9.tar.gz vcxsrv-b8da71ffb17d3d16706db04115e9ba1dd8bc49b9.tar.bz2 vcxsrv-b8da71ffb17d3d16706db04115e9ba1dd8bc49b9.zip |
fontconfig mesa xserver pixman xkeyboard-config git update 3 dec 2012
fontconfig: 2442d611579bccb84f0c29e3f9ceb0a7436df812
mesa: 54ff536823bf5a431efe1f2becdb21174c146948
xserver: b51a1bd2766e7dc975ca8f1cacc3f8bd0e1a68a3
pixman: 978bab253d1d061b00b5e80aa45ab6986aac466f
xkeyboard-config: 05dcc6db64cd7425aea6d22efd6a3ecf34dbddd2
Diffstat (limited to 'mesalib/include/GL/internal')
-rw-r--r-- | mesalib/include/GL/internal/dri_interface.h | 39 |
1 files changed, 32 insertions, 7 deletions
diff --git a/mesalib/include/GL/internal/dri_interface.h b/mesalib/include/GL/internal/dri_interface.h index 1e0f1d07b..568581d5b 100644 --- a/mesalib/include/GL/internal/dri_interface.h +++ b/mesalib/include/GL/internal/dri_interface.h @@ -267,7 +267,17 @@ struct __DRItexBufferExtensionRec { * Used by drivers that implement DRI2 */ #define __DRI2_FLUSH "DRI2_Flush" -#define __DRI2_FLUSH_VERSION 3 +#define __DRI2_FLUSH_VERSION 4 + +#define __DRI2_FLUSH_DRAWABLE (1 << 0) /* the drawable should be flushed. */ +#define __DRI2_FLUSH_CONTEXT (1 << 1) /* glFlush should be called */ + +enum __DRI2throttleReason { + __DRI2_THROTTLE_SWAPBUFFER, + __DRI2_THROTTLE_COPYSUBBUFFER, + __DRI2_THROTTLE_FLUSHFRONT +}; + struct __DRI2flushExtensionRec { __DRIextension base; void (*flush)(__DRIdrawable *drawable); @@ -281,6 +291,27 @@ struct __DRI2flushExtensionRec { * \since 3 */ void (*invalidate)(__DRIdrawable *drawable); + + /** + * This function reduces the number of flushes in the driver by combining + * several operations into one call. + * + * It can: + * - throttle + * - flush a drawable + * - flush a context + * + * \param context the context + * \param drawable the drawable to flush + * \param flags a combination of _DRI2_FLUSH_xxx flags + * \param throttle_reason the reason for throttling, 0 = no throttling + * + * \since 4 + */ + void (*flush_with_flags)(__DRIcontext *ctx, + __DRIdrawable *drawable, + unsigned flags, + enum __DRI2throttleReason throttle_reason); }; @@ -292,12 +323,6 @@ struct __DRI2flushExtensionRec { #define __DRI2_THROTTLE "DRI2_Throttle" #define __DRI2_THROTTLE_VERSION 1 -enum __DRI2throttleReason { - __DRI2_THROTTLE_SWAPBUFFER, - __DRI2_THROTTLE_COPYSUBBUFFER, - __DRI2_THROTTLE_FLUSHFRONT -}; - struct __DRI2throttleExtensionRec { __DRIextension base; void (*throttle)(__DRIcontext *ctx, |