Vuo  0.4.2
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Functions

Description

An image residing in GPU memory (GL Texture Object).

Classes

struct  _VuoImage
 An image residing in GPU memory (GL Texture Object). More...
 

Typedefs

typedef struct _VuoImageVuoImage
 An image residing in GPU memory (GL Texture Object).
 

Functions

VuoImage VuoImage_get (const char *imageURL)
 Retrieves the image at the specified imageURL, and creates a VuoImage from it.
 
void VuoImage_free (void *texture)
 Decrements the retain count of the OpenGL Texture Object associated with the specified VuoImage, and frees the texture VuoImage struct.
 
VuoImage VuoImage_make (unsigned int glTextureName, unsigned long int pixelsWide, unsigned long int pixelsHigh)
 Returns a new VuoImage structure containing the specified values.
 
VuoImage VuoImage_valueFromString (const char *initializer)
 Parses initializer, a GL Texture represented as a JSON C string, and returns a VuoImage structure.
 
char * VuoImage_stringFromValue (const VuoImage value)
 Returns a JSON string representing the specified texture, in the same format as typeInitWithValue.
 
char * VuoImage_summaryFromValue (const VuoImage value)
 A brief summary of the contents of this texture.
 

Class Documentation

struct _VuoImage
Class Members
unsigned int glTextureName
unsigned long int pixelsHigh
unsigned long int pixelsWide We could glGetTexLevelParameteri() but that would require a GPU roundtrip (inefficient).

Typedef Documentation

typedef struct _VuoImage * VuoImage

An image residing in GPU memory (GL Texture Object).

The struct is typedef'd to a pointer so that VuoImages are reference-counted, enabling us to automatically delete the GL Texture Object when the last reference is released.

Function Documentation

VuoImage VuoImage_get ( const char *  imageURL)

Retrieves the image at the specified imageURL, and creates a VuoImage from it.

Automatically activates and deactivates a GL Context (if it makes it that far in the loading process).

VuoImage VuoImage_make ( unsigned int  glTextureName,
unsigned long int  pixelsWide,
unsigned long int  pixelsHigh 
)

Returns a new VuoImage structure containing the specified values.

The VuoImage takes ownership of glTextureName, and will call glDeleteTextures() on it when it's no longer needed.

char * VuoImage_summaryFromValue ( const VuoImage  value)

A brief summary of the contents of this texture.

Example:
GL Texture (ID 42)
640x480
VuoImage VuoImage_valueFromString ( const char *  initializer)

Parses initializer, a GL Texture represented as a JSON C string, and returns a VuoImage structure.

Returns
If initializer is valid, returns a pointer to the VuoImage. If not, returns NULL.
Parameters
initializerA JSON string containing a GL Texture Name, and the texture's width and height in pixels.
Example:
{
"glTextureName": 42,
"pixelsWide": 640,
"pixelsHigh": 480
}