Vuo  0.5.0
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Functions
VuoImageRenderer.cc File Reference

Description

VuoImageRenderer implementation.

Classes

struct  VuoImageRendererInternal
 Internal state data for a VuoImageRenderer instance. More...
 

Macros

#define glGenVertexArrays   glGenVertexArraysAPPLE
 
#define glBindVertexArray   glBindVertexArrayAPPLE
 
#define glDeleteVertexArrays   glDeleteVertexArraysAPPLE
 

Functions

void VuoImageRenderer_destroy (VuoImageRenderer ir)
 Destroys and deallocates the image renderer.
 
VuoImageRenderer VuoImageRenderer_make (void)
 Creates a reference-counted object for rendering a VuoImage.
 
VuoImage VuoImageRenderer_draw (VuoImageRenderer ir, VuoShader shader, unsigned int pixelsWide, unsigned int pixelsHigh)
 Produces a new VuoImage by rendering shader.
 
unsigned long int VuoImageRenderer_draw_internal (VuoImageRenderer ir, VuoShader shader, unsigned int pixelsWide, unsigned int pixelsHigh, bool outputToIOSurface)
 Helper for VuoImageRenderer_draw().
 

Class Documentation

struct VuoImageRendererInternal
Class Members
GLuint outputFramebuffer
GLuint quadElementBuffer
GLuint quadPositionBuffer
GLuint quadTextureCoordinateBuffer

Macro Definition Documentation

#define glBindVertexArray   glBindVertexArrayAPPLE
Todo:
After we drop 10.6 support, switch back to gl3 and remove the below 4 lines. See also r15430 for shader changes.
#define glDeleteVertexArrays   glDeleteVertexArraysAPPLE
Todo:
After we drop 10.6 support, switch back to gl3 and remove the below 4 lines. See also r15430 for shader changes.
#define glGenVertexArrays   glGenVertexArraysAPPLE
Todo:
After we drop 10.6 support, switch back to gl3 and remove the below 4 lines. See also r15430 for shader changes.

Function Documentation

void VuoImageRenderer_destroy ( VuoImageRenderer  ir)

Destroys and deallocates the image renderer.

May be called from any thread (automatically uses and disuses a GL Context).

VuoImage VuoImageRenderer_draw ( VuoImageRenderer  ir,
VuoShader  shader,
unsigned int  pixelsWide,
unsigned int  pixelsHigh 
)

Produces a new VuoImage by rendering shader.

May be called from any thread (automatically uses and disuses a GL Context). However, it's not safe to use the same VuoImageRenderer instance from multiple threads simultaneously.

unsigned long int VuoImageRenderer_draw_internal ( VuoImageRenderer  ir,
VuoShader  shader,
unsigned int  pixelsWide,
unsigned int  pixelsHigh,
bool  outputToIOSurface 
)
VuoImageRenderer VuoImageRenderer_make ( void  )

Creates a reference-counted object for rendering a VuoImage.

May be called from any thread (automatically uses and disuses a GL Context).