|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectt3.hrd.renderer.HRDRenderer
public class HRDRenderer
This class creates a multiprojector display that renders tiles, cursors and links. Create the tiles, cursors and links by calling methods on its stateManager object.
Threading notes: You may only update the statemanager from callback routines - this avoids race conditions and deadlock.
Nested Class Summary | |
---|---|
static class |
HRDRenderer.AWTErrorHandler
|
Field Summary | |
---|---|
HRDRendererCallBacks |
callBacks
|
int |
clientId
|
java.lang.String |
infoString
|
boolean |
mouseAsPointInputDevice
|
StateManager |
stateManager
Call methods on the stateManager object to create and manipulate Tiles, Cursors and Links on the display. |
Constructor Summary | |
---|---|
HRDRenderer(int clientId,
java.util.List<ProjectorConfig> projectorConfigs,
HRDRendererCallBacks callBacks,
java.util.LinkedList<PointInputDevice> pointInputDevices,
ShapeInputDevice shapeInputDevice,
boolean shareTexturesBetweenContexts,
boolean mouseAsPointInputDevice,
BlendOptions bo)
Create a new HRDRenderer. |
Method Summary | |
---|---|
void |
doItSingleThreaded()
Run the HRDRenderer in single threaded mode. |
void |
requestClose()
Request that the display be closed and the render loop stopped. |
void |
requestForceRedrawAll()
Request that all projectors be redrawn. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public final StateManager stateManager
public final HRDRendererCallBacks callBacks
public final boolean mouseAsPointInputDevice
public final int clientId
public java.lang.String infoString
Constructor Detail |
---|
public HRDRenderer(int clientId, java.util.List<ProjectorConfig> projectorConfigs, HRDRendererCallBacks callBacks, java.util.LinkedList<PointInputDevice> pointInputDevices, ShapeInputDevice shapeInputDevice, boolean shareTexturesBetweenContexts, boolean mouseAsPointInputDevice, BlendOptions bo) throws Projector.ProjectorOpeningException
clientId
- Client ID for this clientprojectorConfigs
- Configuration of each projector, in blacking order (ie head of list has no blacking applied)callBacks
- Callbacks allow youpointInputDevices
- Pointing devices used with the displayshapeInputDevice
- Shape deviceshareTexturesBetweenContexts
- Iff this is true then opengl textures are shared between the different opengl windows,
using the opengl features to share textures between contexts.mouseAsPointInputDevice
- Iff this is true then mouse events are converted to point input device events.
It has personId 0 (or 1 if ALT held down) and penType 0 (or 1 if CTRL held down).aDESKvisibleAreaOrNull
- A mask that can be applied to restrict the visible area eg to a rectangle. If null then no mask.
Projector.ProjectorOpeningException
- If there are problems opening the windowMethod Detail |
---|
public void doItSingleThreaded()
Returns only when the display is closed by pressing F12 or calling requestClose(). It does not close the PointInputDevices.
Note that at point (1) the actual opengl rendering may well take place in a different thread, with this thread blocked until it completes. The thread that does the OpenGL rendering is determined by the java.media.opengl.Threading class and depends on the platform but this can be overridden by specifying -Dopengl.1thread=(option) at the command line. On our system it didn't make any difference to performance. See java.media.opengl.Threading for more information.
public void requestClose()
public void requestForceRedrawAll()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |