glsl2: Set a flag when visiting the assignee of an assignment
[mesa/nouveau-pmpeg.git] / docs / MESA_copy_sub_buffer.spec
blob752a014b352e8d27d34fa3d04aa8607fdbc69d7d
1 Name
3 MESA_copy_sub_buffer
5 Name Strings
7 GLX_MESA_copy_sub_buffer
9 Contact
11 Brian Paul (brian.paul 'at' tungstengraphics.com)
13 Status
15 Shipping since Mesa 2.6 in February, 1998.
17 Version
19 Last Modified Date: 12 January 2009
21 Number
23 215
25 Dependencies
27 OpenGL 1.0 or later is required.
28 GLX 1.0 or later is required.
30 Overview
32 The glxCopySubBufferMESA() function copies a rectangular region
33 of the back color buffer to the front color buffer. This can be
34 used to quickly repaint 3D windows in response to expose events
35 when the back color buffer cannot be damaged by other windows.
37 IP Status
39 Open-source; freely implementable.
41 Issues
43 None.
45 New Procedures and Functions
47 void glXCopySubBufferMESA( Display *dpy, GLXDrawable drawable,
48 int x, int y, int width, int height );
50 New Tokens
52 None.
54 Additions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
56 Add to section 3.3.10 Double Buffering:
58 The function
60 void glXCopySubBufferMESA( Display *dpy, GLXDrawable drawable,
61 int x, int y, int width, int height );
63 may be used to copy a rectangular region of the back color buffer to
64 the front color buffer. This can be used to quickly repaint 3D windows
65 in response to expose events when the back color buffer cannot be
66 damaged by other windows.
68 <x> and <y> indicates the lower-left corner of the region to copy and
69 <width> and <height> indicate the size in pixels. Coordinate (0,0)
70 corresponds to the lower-left pixel of the window, like glReadPixels.
72 If dpy and drawable are the display and drawable for the calling
73 thread's current context, glXCopySubBufferMESA performs an
74 implicit glFlush before it returns. Subsequent OpenGL commands
75 may be issued immediately after calling glXCopySubBufferMESA, but
76 are not executed until the copy is completed.
78 GLX Protocol
80 None at this time. The extension is implemented in terms of ordinary
81 Xlib protocol inside of Mesa.
83 Errors
85 None.
87 New State
89 None.
91 Revision History
93 12 January 2009 Ian Romanick - Added language about implicit flush
94 and command completion.
95 8 June 2000 Brian Paul - initial specification