Vuo  0.5.1
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Instance Methods | Protected Attributes | Properties | List of all members
VuoWindowOpenGLInternal Class Reference

Description

A graphics window for use by Vuo node classes.

The graphics window renders onto an OpenGL context shared with Vuo nodes, so that it can render the scenes created by those nodes. A scene is rendered by calling callbacks provided by the Vuo nodes.

Instance Methods

(void) - enableTriggersWithRequestedFrame:movedMouseTo:scrolledMouse:usedMouseButton:
 Sets up the window to call trigger functions.
 
(void) - disableTriggers
 Stops the window from calling trigger functions.
 
(void) - scheduleRedraw
 Schedules the OpenGL view to be redrawn.
 
(void) - setAspectRatioToWidth:height:
 Constrains the window's aspect ratio to pixelsWide/pixelsHigh.
 
(void) - toggleFullScreen
 Switches between full-screen and windowed mode.
 

Protected Attributes

CVDisplayLinkRef displayLink
 The display link, created when -enableTriggers... is called.
 
struct
VuoWindowOpenGLInternal_displayLinkContext
displayLinkContext
 Context data for the display link callback, created when the window is initialized (so that it persists through live-coding reloads).
 
BOOL userResizedWindow
 True if the user has manually resized the window.
 
BOOL programmaticallyResizingWindow
 True if a programmatic resize of the window is in progress.
 

Properties

BOOL callbacksEnabled
 True if the window can call its trigger callbacks.
 
VuoWindowOpenGLViewglView
 The OpenGL view inside this window.
 
NSOpenGLContext * windowedGlContext
 The OpenGL context from Vuo's context pool; allows the windw to access it while the view is full-screen.
 

Method Documentation

- (void) disableTriggers

Stops the window from calling trigger functions.

- (void) enableTriggersWithRequestedFrame: (VuoFrameRequest requestedFrame
movedMouseTo: (VuoPoint2d movedMouseTo
scrolledMouse: (VuoPoint2d scrolledMouse
usedMouseButton: (VuoMouseButtonAction usedMouseButton 

Sets up the window to call trigger functions.

- (void) scheduleRedraw

Schedules the OpenGL view to be redrawn.

This can be used in both windowed and full-screen mode.

- (void) setAspectRatioToWidth: (unsigned int)  pixelsWide
height: (unsigned int)  pixelsHigh 

Constrains the window's aspect ratio to pixelsWide/pixelsHigh.

Also resizes the window to pixelsWide by pixelsHigh, unless the user has manually resized the window (in which case the width is preserved) or the requested size is larger than the window's screen (in which case the window is scaled to fit the screen).

- (void) toggleFullScreen

Switches between full-screen and windowed mode.

Member Data Documentation

- (CVDisplayLinkRef) displayLink
protected

The display link, created when -enableTriggers... is called.

- (struct VuoWindowOpenGLInternal_displayLinkContext*) displayLinkContext
protected

Context data for the display link callback, created when the window is initialized (so that it persists through live-coding reloads).

- (BOOL) programmaticallyResizingWindow
protected

True if a programmatic resize of the window is in progress.

- (BOOL) userResizedWindow
protected

True if the user has manually resized the window.

Property Documentation

- (BOOL) callbacksEnabled
atomicprotected

True if the window can call its trigger callbacks.

- (VuoWindowOpenGLView*) glView
readwriteatomicretain

The OpenGL view inside this window.

- (NSOpenGLContext*) windowedGlContext
readwriteatomicretain

The OpenGL context from Vuo's context pool; allows the windw to access it while the view is full-screen.


The documentation for this class was generated from the following files: