diff options
author | Jesse Barnes <jbarnes@virtuousgeek.org> | 2009-05-01 14:41:55 -0700 |
---|---|---|
committer | Jesse Barnes <jbarnes@virtuousgeek.org> | 2009-05-01 14:41:55 -0700 |
commit | 9b5ef83c0b9ef0239ac82adfa9a816f195074dcb (patch) | |
tree | 3d20b49a6f37cbf17a512389c49cfa615a974387 /dri2proto.txt | |
parent | 66c56ab10d917e3f47f93178d7eac6430970d3c4 (diff) |
Add SwapBuffers request
Add a SwapBuffers request for requesting a front<->back swap. Returns a
whole new set of buffers to the client to allow for triple buffering
etc.
Diffstat (limited to 'dri2proto.txt')
-rw-r--r-- | dri2proto.txt | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/dri2proto.txt b/dri2proto.txt index e931bfb..bad9567 100644 --- a/dri2proto.txt +++ b/dri2proto.txt @@ -105,6 +105,11 @@ DRI2 implementation of direct rendering GLX, should use these enty points to copy contents back and forth to as necessary to ensure consistent rendering. +The client may also use the DRI2SwapBuffers function to request a swap +of the front and back buffers. If the display server supports it, this +operation may be preferred, since it may be easier and/or more performant +for the server to perform a simple buffer swap rather than a blit. + ⚙ ⚙ ⚙ ⚙ ⚙ ⚙ @@ -288,6 +293,21 @@ The name of this extension is "DRI2". the server has seen the request before proceeding with rendering the next frame. +┌─── + DRI2SwapBuffers + drawable: DRAWABLE + ▶ + buffers: LISTofDRI2BUFFER +└─── + Errors: Window + + Schedule a swap of the front and back buffers with the display + server. + + In reply, the display server is expected to provide new front + and back buffers to the client following this request. The + display server should process this request asynchronously + if possible, to prevent the client from blocking. ┌─── DRI2GetBuffersWithFormat @@ -542,6 +562,27 @@ A.3 Protocol Events The DRI2 extension specifies no events. +┌─── + DRI2SwapBuffers + 1 CARD8 major opcode + 1 7 DRI2 opcode + 2 8 length + 4 DRAWABLE drawable + ▶ + 1 1 Reply + 1 unused + 2 CARD16 sequence number + 4 0 reply length + 4 CARD32 buffer count + 4 CARD32 unused + 4 CARD32 unused + 4 CARD32 unused + 4 CARD32 unused + 4 CARD32 unused + 4 CARD32 unused + 5n LISTofDRI2BUFFER buffers +└─── + A.4 Protocol Errors |