XXX - Not complete. Name SGIX_wait_group Name Strings GLX_SGIX_wait_group Version $Date: 1997/04/17 04:46:55 $ $Revision: 1.1 $ Number XXX Dependencies none Overview This extension provides the capability to synchronize drawing from two separate GLX Contexts. A wait group is created, and GLX Contexts are added as members to the wait group. It will then be possible to specify that no member will be able to continue to render until all the outstanding OpenGL commands from each of the members have been completed. This extension sets conditions that must be met before a set of OpenGL contexts can continue drawing. This extension is primarily useful for coordinating operations in an environment where more than one OpenGL context may render simultaneously. Dependencies none Issues * Do we need a query to ask whether a context is in a group? * Do we need to support having contexts in multiple wait groups? New Procedures and Functions void JoinWaitGroupSGIX(Display *dpy, GLXContext context, GLXContext member); void WaitGroupSGIX(Display *dpy, GLXContext context); New Tokens none Additions to the GLX Specification Add to the end of section 3.2.5, Synchronization Primitives: JoinWaitGroupSGIX adds to the wait group containing as a member. If is already a member of a different group, it is implicitly removed from that group first. If is None, is removed from the wait group that it belongs to, if any. A wait group is referenced by naming any context in the group; there is no other way to refer to a group. When a context is destroyed, it is removed from any wait group of which it is a member. WaitGroupSGIX causes to wait until all the other member contexts of the wait group have also called WaitGroupSGIX. The following must be satisfied before a WaitGroupSGIX command can complete: 1. All contexts in the wait group must have issued a WaitGroupSGIX command OpenGL rendering commands issued by all of the member contexts in the wait group will complete before any of the member contexts can further affect the framebuffer. A wait group exists until the last remaining context leaves the group. JoinWaitGroupSGIX and WaitGroupSGIX are part of the X stream. Errors JoinWaitGroupSGIX generates GLXBadContext if is an invalid GLX context, or if is an invalid GLX context. WaitGroupSGIX generates GLXBadContext if is an invalid GLX context. New State Get Value Get Command Type Value Attrib --------- ----------- ---- ------- ------ ?? B False New Implementation Dependent State None