Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

glxmakecurrent(3) [xfree86 man page]

GLXMAKECURRENT()														  GLXMAKECURRENT()

NAME
glXMakeCurrent - attach a GLX context to a window or a GLX pixmap C SPECIFICATION
Bool glXMakeCurrent( Display *dpy, GLXDrawable drawable, GLXContext ctx ) delim $$ PARAMETERS
dpy Specifies the connection to the X server. drawable Specifies a GLX drawable. Must be either an X window ID or a GLX pixmap ID. ctx Specifies a GLX rendering context that is to be attached to drawable. DESCRIPTION
glXMakeCurrent does two things: It makes ctx the current GLX rendering context of the calling thread, replacing the previously current con- text if there was one, and it attaches ctx to a GLX drawable, either a window or a GLX pixmap. As a result of these two actions, subse- quent GL rendering calls use rendering context ctx to modify GLX drawable drawable. Because glXMakeCurrent always replaces the current rendering context with ctx, there can be only one current context per thread. Pending commands to the previous context, if any, are flushed before it is released. The first time ctx is made current to any thread, its viewport is set to the full size of drawable. Subsequent calls by any thread to glX- MakeCurrent with ctx have no effect on its viewport. To release the current context without assigning a new one, call glXMakeCurrent with drawable set None and ctx set to NULL glXMakeCurrent returns True if it is successful, False otherwise. If False is returned, the previously current rendering context and draw- able (if any) remain unchanged. NOTES
A process is a single-execution environment, implemented in a single address space, consisting of one or more threads. A thread is one of a set of subprocesses that share a single address space, but maintain separate program counters, stack spaces, and other related global data. A thread that is the only member of its subprocess group is equivalent to a process. ERRORS
BadMatch is generated if drawable was not created with the same X screen and visual as ctx. It is also generated if drawable is None and ctx is not NULL. BadAccess is generated if ctx was current to another thread at the time glXMakeCurrent was called. GLXBadDrawable is generated if drawable is not a valid GLX drawable. GLXBadContext is generated if ctx is not a valid GLX context. GLXBadContextState is generated if glXMakeCurrent is executed between the execution of glBegin and the corresponding execution of glEnd. GLXBadContextState is also generated if the rendering context current to the calling thread has GL renderer state GL_FEEDBACK or GL_SELECT. GLXBadCurrentWindow is generated if there are pending GL commands for the previous context and the current drawable is a window that is no longer valid. BadAlloc may be generated if the server has delayed allocation of ancillary buffers until glXMakeCurrent is called, only to find that it has insufficient resources to complete the allocation. SEE ALSO
glXCreateContext, glXCreateGLXPixmap GLXMAKECURRENT()

Check Out this Related Man Page

GLXCREATEGLXPIXMAP()													      GLXCREATEGLXPIXMAP()

NAME
glXCreateGLXPixmap - create an off-screen GLX rendering area C SPECIFICATION
GLXPixmap glXCreateGLXPixmap( Display *dpy, XVisualInfo *vis, Pixmap pixmap ) delim $$ PARAMETERS
dpy Specifies the connection to the X server. vis Specifies the visual that defines the structure of the rendering area. It is a pointer to an XVisualInfo structure, not a visual ID or a pointer to a Visual. pixmap Specifies the X pixmap that will be used as the front left color buffer of the off-screen rendering area. DESCRIPTION
glXCreateGLXPixmap creates an off-screen rendering area and returns its XID. Any GLX rendering context that was created with respect to vis can be used to render into this off-screen area. Use glXMakeCurrent to associate the rendering area with a GLX rendering context. The X pixmap identified by pixmap is used as the front left buffer of the resulting off-screen rendering area. All other buffers specified by vis, including color buffers other than the front left buffer, are created without externally visible names. GLX pixmaps with double- buffering are supported. However, glXSwapBuffers is ignored by these pixmaps. Some implementations may not support GLX pixmaps with direct rendering contexts. NOTES
XVisualInfo is defined in Xutil.h. It is a structure that includes visual, visualID, screen, and depth elements. ERRORS
BadMatch is generated if the depth of pixmap does not match the depth value reported by core X11 for vis, or if pixmap was not created with respect to the same screen as vis. BadValue is generated if vis is not a valid XVisualInfo pointer (for example, if a particular GLX implementation does not support this vis- ual). BadPixmap is generated if pixmap is not a valid pixmap. BadAlloc is generated if the server cannot allocate the GLX pixmap. SEE ALSO
glXCreateContext, glXIsDirect, glXMakeCurrent GLXCREATEGLXPIXMAP()
Man Page