Vuo  0.4.3
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Typedefs | Functions
VuoGlContext.h File Reference

Description

VuoGlContext interface.

Macros

#define VGL()   _VGL(__FILE__, __LINE__, __func__);
 If there's an OpenGL error, prints info about it.
 

Typedefs

typedef void * VuoGlContext
 A framebuffer and state for GL rendering.
 

Functions

void VuoGlContext_setGlobalRootContext (void *rootContext)
 Specifies a platform-specific context to be used as the base for all of Vuo's shared GL contexts.
 
VuoGlContext VuoGlContext_use (void)
 Finds an unused GL context in the process-wide shared context pool (or creates one if none is available), marks it used, activates it on the current thread, and returns it.
 
void VuoGlContext_useSpecific (VuoGlContext glContext)
 Activates the specified VuoGlContext on the current thread.
 
void VuoGlContext_disuse (void)
 Deactivates the current thread's GL context, and throws it back in the pool.
 
void VuoGlContext_disuseSpecific (VuoGlContext glContext)
 Throws the specified VuoGlContext back in the pool.
 
void _VGL (const char *file, const unsigned int line, const char *func)
 Helper for VGL().
 

Macro Definition Documentation

#define VGL ( )    _VGL(__FILE__, __LINE__, __func__);

If there's an OpenGL error, prints info about it.

Useful for debugging.

Example:
void nodeEvent()
{
glEnable(GL_ALPHA);
VGL();
}

Function Documentation

void VuoGlContext_disuseSpecific ( VuoGlContext  glContext)

Throws the specified VuoGlContext back in the pool.

Can be called from any thread.

void VuoGlContext_setGlobalRootContext ( void *  rootContext)

Specifies a platform-specific context to be used as the base for all of Vuo's shared GL contexts.

On Mac, this should be a CGLContext.

Must be called before any Vuo composition is loaded, and before any other VuoGlContext_* methods.

VuoGlContext VuoGlContext_use ( void  )

Finds an unused GL context in the process-wide shared context pool (or creates one if none is available), marks it used, activates it on the current thread, and returns it.

Can be called from any thread.

void VuoGlContext_useSpecific ( VuoGlContext  glContext)

Activates the specified VuoGlContext on the current thread.

Can be called from any thread.