yaarq.sys
Class yrqTimerUpdater

java.lang.Object
  |
  +--javax.media.j3d.SceneGraphObject
        |
        +--javax.media.j3d.Node
              |
              +--javax.media.j3d.Leaf
                    |
                    +--javax.media.j3d.Behavior
                          |
                          +--yaarq.sys.yrqTimerUpdater

public final class yrqTimerUpdater
extends javax.media.j3d.Behavior

This class implements a time-based Java3D behavior to allow for the engine to do update operations which have to take place at certain intervalls. Among others, the engine calls the engineUpdateCallback from this behavior.

To avoid threading problems and irregularities in timing, the engine uses just two behaviors and distributes update operations manual between objects: The time update occurs at a specified interval and is piped to the application to allow for animation update operations, while the frame update occurs after each frame and is used by the engine to do constant updates necessary.

TODO: Nothing


Field Summary
 
Fields inherited from class javax.media.j3d.Node
ALLOW_AUTO_COMPUTE_BOUNDS_READ, ALLOW_AUTO_COMPUTE_BOUNDS_WRITE, ALLOW_BOUNDS_READ, ALLOW_BOUNDS_WRITE, ALLOW_COLLIDABLE_READ, ALLOW_COLLIDABLE_WRITE, ALLOW_LOCAL_TO_VWORLD_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING
 
Constructor Summary
yrqTimerUpdater(yrqEngine a_engine, int a_interval)
          Constructs an instance of this class.
 
Method Summary
 void initialize()
          This function is called by Java3D to initialise the behavior.
 void processStimulus(java.util.Enumeration a_criteria)
          This function is called by Java3D when the behavior is processed.
 void reset()
          This function resets the behavior for another execution.
 
Methods inherited from class javax.media.j3d.Behavior
getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, getView, getWakeupCondition, postId, setEnable, setSchedulingBoundingLeaf, setSchedulingBounds, setSchedulingInterval, updateNodeReferences, wakeupOn
 
Methods inherited from class javax.media.j3d.Node
cloneNode, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable
 
Methods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setUserData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

yrqTimerUpdater

public yrqTimerUpdater(yrqEngine a_engine,
                       int a_interval)
Constructs an instance of this class. The class is instantiated exactly once, by the engine, at initialisation.

Parameters:
a_engine - The engine class to be updated
a_interval - The interval, in milliseconds, in which to update
Method Detail

initialize

public void initialize()
This function is called by Java3D to initialise the behavior.

Specified by:
initialize in class javax.media.j3d.Behavior

processStimulus

public void processStimulus(java.util.Enumeration a_criteria)
This function is called by Java3D when the behavior is processed. A callback to the engines update method is issued here.

Specified by:
processStimulus in class javax.media.j3d.Behavior

reset

public void reset()
This function resets the behavior for another execution.