Add DRI2SwapInterval protocol

Needed to handle swap interval in the direct rendered case.
This commit is contained in:
Jesse Barnes 2009-11-10 12:12:07 -08:00
parent 5e059038a9
commit 516a1ff1f8
2 changed files with 33 additions and 0 deletions

View file

@ -53,6 +53,7 @@
#define X_DRI2GetMSC 9
#define X_DRI2WaitMSC 10
#define X_DRI2WaitSBC 11
#define X_DRI2SwapInterval 12
typedef struct {
CARD32 attachment B32;
@ -265,4 +266,13 @@ typedef struct {
} xDRI2MSCReply;
#define sz_xDRI2MSCReply 32
typedef struct {
CARD8 reqType;
CARD8 dri2ReqType;
CARD16 length B16;
CARD32 drawable B32;
CARD32 interval B32;
} xDRI2SwapIntervalReq;
#define sz_xDRI2SwapIntervalReq 12
#endif

View file

@ -33,6 +33,7 @@ Keith Whitwell <keith@tungstengraphics.com>
Jerome Glisse <glisse@freedesktop.org>
Ian Romanick <ian.d.romanick@intel.com>
Michel Dänzer <michel@tungstengraphics.com>
Jesse Barnes <jbarnes@virtuousgeek.org>
⚙ ⚙ ⚙ ⚙ ⚙ ⚙
@ -412,6 +413,18 @@ The name of this extension is "DRI2".
This request is only available with protocol version 1.2 or
later.
┌───
DRI2SwapInterval
drawable: DRAWABLE
interval: CARD32
└───
Errors: Window
Sets the swap interval for DRAWABLE. This will throttle
DRI2SwapBuffers requests to swap at most once per interval frames,
which is useful useful for limiting the frame rate.
⚙ ⚙ ⚙ ⚙ ⚙ ⚙
@ -744,6 +757,16 @@ A.2 Protocol Requests
4 CARD32 sbc_lo
└───
┌───
DRI2SwapInterval
1 CARD8 major opcode
1 7 DRI2 opcode
2 8 length
4 DRAWABLE drawable
4 CARD32 interval
└───
A.3 Protocol Events
The DRI2 extension specifies no events.