MirOS Manual: glXMakeCurrent(3)


GLXMAKECURRENT()    UNIX Programmer's Manual     GLXMAKECURRENT()

NAME

     glXMakeCurrent - attach a GLX context to a window or a GLX
     pixmap

C SPECIFICATION

     Bool glXMakeCurrent( Display *dpy,
                          GLXDrawable drawable,
                          GLXContext ctx )

PARAMETERS

     dpy       Specifies the connection to the X server.

     drawable  Specifies a GLX drawable. Must be either an X win-
               dow 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 pre-
     viously current context 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, subsequent 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 glXMakeCurrent 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 oth-
     erwise. If False is returned, the previously current render-
     ing context and drawable (if any) remain unchanged.

NOTES

     A process is a single-execution environment, implemented in
     a single address space, consisting of one or more threads.

MirOS BSD #10-current  Printed 03.04.2017                       1

GLXMAKECURRENT()    UNIX Programmer's Manual     GLXMAKECURRENT()

     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 pro-
     cess.

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 con-
     text.

     GLXBadContextState is generated if glXMakeCurrent is exe-
     cuted between the execution of glBegin and the corresponding
     execution of glEnd.

     GLXBadContextState is also generated if the rendering con-
     text 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 alloca-
     tion of ancillary buffers until glXMakeCurrent is called,
     only to find that it has insufficient resources to complete
     the allocation.

SEE ALSO

     glXCreateContext, glXCreateGLXPixmap

MirOS BSD #10-current  Printed 03.04.2017                       2

Generated on 2017-04-03 16:26:17 by $MirOS: src/scripts/roff2htm,v 1.88 2017/01/29 00:51:06 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002–2017 The MirOS Project, Germany.
This product includes material provided by mirabilos.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.