public class FilteringSupplierForAnimGen extends java.lang.Object implements StreamedSiGMLSupplierForAnimationGen
StreamedSiGMLSupplierForAnimationGen
which uses another StreamedSiGMLSupplierForAnimationGen
as its
primary supplier and which filters from the sign stream provided by
the primary supplier those signs to which animation data has already
been attached.
2010-10:
Changed to allow animgen to read ahead by more than one sign, which
it needs for multi-sign SiGML mode.Constructor and Description |
---|
FilteringSupplierForAnimGen(StreamedSiGMLSupplierForAnimationGen SUPPLIER)
Constructs a new filtering supplier that uses the given supplier
as its own primary supplier.
|
Modifier and Type | Method and Description |
---|---|
void |
doneSignAnimation()
Accepts notification either from the animation generator or, in the
case of a sign with animation data already attached, directly from
getNextSignToBeAnimated() that one more sign has been
completely generated, and forwards this notice to this supplier's
primary supplier. |
AnimatedSign |
getNextSignToBeAnimated()
Returns the next sign to be animated, or
null if the source
sign stream is exhausted. |
void |
putProcessedSign(AnimatedSign sign)
Accepts a notification from this supplier's client indicating that
it has processed a sign in the stream.
|
public FilteringSupplierForAnimGen(StreamedSiGMLSupplierForAnimationGen SUPPLIER)
public AnimatedSign getNextSignToBeAnimated() throws java.lang.InterruptedException
null
if the source
sign stream is exhausted. The sign returned is obtained from this
supplier's primary supplier, possibly after filtering out any signs
which already have animation data and making one call directly to
doneSignAnimation()
for each sign thus filtered.getNextSignToBeAnimated
in interface StreamedSiGMLSupplierForAnimationGen
java.lang.InterruptedException
public void putProcessedSign(AnimatedSign sign)
StreamedSiGMLSupplierForAnimationGen
putProcessedSign
in interface StreamedSiGMLSupplierForAnimationGen
public void doneSignAnimation()
getNextSignToBeAnimated()
that one more sign has been
completely generated, and forwards this notice to this supplier's
primary supplier.doneSignAnimation
in interface StreamedSiGMLSupplierForAnimationGen