sigmlanim
Class SignsArraySupplier

java.lang.Object
  extended by sigmlanim.SignsArraySupplier
All Implemented Interfaces:
StreamedSiGMLSupplierForAnimationGen

public class SignsArraySupplier
extends java.lang.Object
implements StreamedSiGMLSupplierForAnimationGen

Implementation of the StreamedSiGMLSupplierForAnimationGen interface, which uses a given array of SiGML signs, and which also provides a method, waitUntilAllAnimated() that blocks until all these signs are known to have animation data attached.


Constructor Summary
SignsArraySupplier(AnimatedSign[] signs)
          Constructs a new SiGML signs supplier, usign the given data.
 
Method Summary
 void doneSignAnimation()
          Accepts notification that the most recently supplied sign now has animation data attached, and if this is the final sign signals completion of animation generation for the benefit of waitUntilAllAnimated().
 AnimatedSign getNextSignToBeAnimated()
          Returns the next sign from this supplier's sign sequence.
 void waitUntilAllAnimated()
          Blocks until this supplier's client signals that all its signs now have animation data attached.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SignsArraySupplier

public SignsArraySupplier(AnimatedSign[] signs)
Constructs a new SiGML signs supplier, usign the given data.

Method Detail

getNextSignToBeAnimated

public AnimatedSign getNextSignToBeAnimated()
Returns the next sign from this supplier's sign sequence.

Specified by:
getNextSignToBeAnimated in interface StreamedSiGMLSupplierForAnimationGen

doneSignAnimation

public void doneSignAnimation()
Accepts notification that the most recently supplied sign now has animation data attached, and if this is the final sign signals completion of animation generation for the benefit of waitUntilAllAnimated().

Specified by:
doneSignAnimation in interface StreamedSiGMLSupplierForAnimationGen

waitUntilAllAnimated

public void waitUntilAllAnimated()
                          throws java.lang.InterruptedException
Blocks until this supplier's client signals that all its signs now have animation data attached.

Throws:
java.lang.InterruptedException