de.jreality.scene
Class Scene

java.lang.Object
  extended by de.jreality.scene.Scene

public class Scene
extends Object

A utility class providing static methods for applying a set of changes simultaneously to an element of the scene graph. It minimizes the amount of locking that is required to do this.


Method Summary
static void executeReader(Collection toRead, Runnable reader)
          Not implemented yet.
static void executeReader(SceneGraphNode toRead, Runnable reader)
          Perform a piece of code to query a SceneGraphNode in a read-locked state of the node.
static void executeWriter(Collection toRead, Runnable writer)
          Not implemented yet.
static void executeWriter(SceneGraphNode toWriteIn, Runnable writer)
          Perform a piece of code to manipulate a SceneGraphNode in a write-locked state of the node.
static void updateFactories(GeometryFactory... factories)
          not yet tested...
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

executeReader

public static void executeReader(SceneGraphNode toRead,
                                 Runnable reader)
Perform a piece of code to query a SceneGraphNode in a read-locked state of the node. The code is encapsulated in a Runnable and can safely assume that different query methods on that node return valid values representing the same unmodified state.

See Also:
executeReader(Collection,Runnable)

executeReader

public static void executeReader(Collection toRead,
                                 Runnable reader)
Not implemented yet.


executeWriter

public static void executeWriter(SceneGraphNode toWriteIn,
                                 Runnable writer)
Perform a piece of code to manipulate a SceneGraphNode in a write-locked state of the node. The code is encapsulated in a Runnable and no other code can get a read-lock while it's run method is being executed. So no-one will read an in-between state.

See Also:
executeWriter(Collection,Runnable)

executeWriter

public static void executeWriter(Collection toRead,
                                 Runnable writer)
Not implemented yet.


updateFactories

public static void updateFactories(GeometryFactory... factories)
not yet tested...

Parameters:
factories -