sigmlanim
Class SiGMLAnimation

java.lang.Object
  extended by sigmlanim.SiGMLAnimation
All Implemented Interfaces:
SiGMLAnimationBuildHandler

public class SiGMLAnimation
extends java.lang.Object
implements SiGMLAnimationBuildHandler

The data defining a single SiGML animation, which may be accumulated asynchronously after creation of this animation object. The animation data usually consists of two components:

The animation data, both signs and frames, can be obtained as a SignsArrayAccess via getSignsArray(). The SignsArrayAccess returned by this method may grow dynamically after it has been supplied.


Constructor Summary
SiGMLAnimation(float fps)
          Constructs a new animation which is initially empty and which is expected to be built dynamically via a suitable sequence of calls on this animation's SiGMLAnimationBuildHandler implementation.
SiGMLAnimation(float fps, AnimatedSign[] asigns)
          Constructs a new animation from the given sequence of signs, which are assumed already to have had animation frames attached to them: the animation's frame sequence is constructed from these individual sequences (before this constructor execution completes).
SiGMLAnimation(float fps, SiGMLAnimationLoadEventHandler saleh)
          Constructs a new animation which is initially empty and which is expected to be built dynamically via a suitable sequence of calls on this animation's SiGMLAnimationBuildHandler implementation, reporting sign load events via the given handler.
 
Method Summary
 float animFPS()
          Returns the frame-rate for this animation.
 void asynchWriteCAS(java.lang.String AV, java.io.File CAS_PATH)
          Using a separate thread, writes this animation as CAS data for the given avatar to the given local filesystem path.
 void beginSignSequence()
          Accepts notificatation that input of the sign sequence is starting.
 void endSignSequence()
          Accetps notification that no further signs are to be added to the sequence for this animation.
 SignsArrayAccess getSignsArray()
          Returns a signs-array-access implementatation for this animation.
 void nextSignAnimationIsDone()
          Accepts notification that animation has now been generated for one more of this animation's signs.
 void setNextSign(AnimatedSign as)
          Accepts the given sign (not yet animated) as the next one in this animation.
 void waitForAnimationComplete()
          Delays the calling thread if necessary until this animation is complete.
2010-03: Currently unused.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SiGMLAnimation

public SiGMLAnimation(float fps)
Constructs a new animation which is initially empty and which is expected to be built dynamically via a suitable sequence of calls on this animation's SiGMLAnimationBuildHandler implementation.


SiGMLAnimation

public SiGMLAnimation(float fps,
                      SiGMLAnimationLoadEventHandler saleh)
Constructs a new animation which is initially empty and which is expected to be built dynamically via a suitable sequence of calls on this animation's SiGMLAnimationBuildHandler implementation, reporting sign load events via the given handler.


SiGMLAnimation

public SiGMLAnimation(float fps,
                      AnimatedSign[] asigns)
Constructs a new animation from the given sequence of signs, which are assumed already to have had animation frames attached to them: the animation's frame sequence is constructed from these individual sequences (before this constructor execution completes). PRE-CONDITION: aSigns!=null.

Method Detail

animFPS

public float animFPS()
Returns the frame-rate for this animation.


getSignsArray

public SignsArrayAccess getSignsArray()
Returns a signs-array-access implementatation for this animation.


waitForAnimationComplete

public void waitForAnimationComplete()
                              throws java.lang.InterruptedException
Delays the calling thread if necessary until this animation is complete.
2010-03: Currently unused.

Throws:
java.lang.InterruptedException

beginSignSequence

public void beginSignSequence()
Accepts notificatation that input of the sign sequence is starting.

Specified by:
beginSignSequence in interface SiGMLAnimationBuildHandler

setNextSign

public void setNextSign(AnimatedSign as)
Accepts the given sign (not yet animated) as the next one in this animation.

Specified by:
setNextSign in interface SiGMLAnimationBuildHandler

nextSignAnimationIsDone

public void nextSignAnimationIsDone()
Accepts notification that animation has now been generated for one more of this animation's signs.

Specified by:
nextSignAnimationIsDone in interface SiGMLAnimationBuildHandler

endSignSequence

public void endSignSequence()
Accetps notification that no further signs are to be added to the sequence for this animation.

Specified by:
endSignSequence in interface SiGMLAnimationBuildHandler

asynchWriteCAS

public void asynchWriteCAS(java.lang.String AV,
                           java.io.File CAS_PATH)
Using a separate thread, writes this animation as CAS data for the given avatar to the given local filesystem path.