Aviatrix3D
2.0 Beta 2

org.j3d.aviatrix3d.pipeline.audio
Class DefaultAudioPipeline

java.lang.Object
  extended byorg.j3d.aviatrix3d.pipeline.audio.DefaultAudioPipeline
All Implemented Interfaces:
AudioRenderPipeline, RenderPipeline

public class DefaultAudioPipeline
extends java.lang.Object
implements AudioRenderPipeline

The default implementation of the audio pipeline usable by most applications.

This implementation is targeted towards single threaded architectures. After setting the stages, the render command will not return until everything is complete.

Version:
$Revision: 2.4 $
Author:
Alan Hudson

Constructor Summary
DefaultAudioPipeline()
          Create an instance of the pipeline with nothing registered.
DefaultAudioPipeline(AudioCullStage cs, AudioSortStage ss)
          Construct a pipeline with the sort and cull stages provided.
 
Method Summary
 boolean displayOnly()
          Cause the surface to redraw the next frame only, with no processing of the pipeline.
 AudioOutputDevice getAudioOutputDevice()
          Get the currently registered drawable device instance.
 void halt()
          Force a halt of the current processing.
 boolean render()
          Start the pipeline functioning now.
 void setAudioOutputDevice(AudioOutputDevice device)
          Register a drawing surface that this pipeline will send its output to.
 void setCuller(AudioCullStage cs)
          Set the cull instance to be used.
 void setRenderableLayers(LayerCullable[] layers, int numLayers)
          Set the set of layers to be used by this pipeline.
 void setSorter(AudioSortStage ss)
          Set the sorter instance to be used.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultAudioPipeline

public DefaultAudioPipeline()
Create an instance of the pipeline with nothing registered.


DefaultAudioPipeline

public DefaultAudioPipeline(AudioCullStage cs,
                            AudioSortStage ss)
Construct a pipeline with the sort and cull stages provided.

Parameters:
ss - The sort stage instance to use
cs - The cull stage instance to use
Method Detail

setAudioOutputDevice

public void setAudioOutputDevice(AudioOutputDevice device)
Register a drawing surface that this pipeline will send its output to. Setting a null value will remove the current drawable surface.

Specified by:
setAudioOutputDevice in interface AudioRenderPipeline
Parameters:
device - The audio output device instance to use or replace

getAudioOutputDevice

public AudioOutputDevice getAudioOutputDevice()
Get the currently registered drawable device instance. If none is set, return null.

Specified by:
getAudioOutputDevice in interface AudioRenderPipeline
Returns:
The currently set surface instance or null

render

public boolean render()
Start the pipeline functioning now. All steps will be called and this method will not return until all are completed and the surface has swapped.

The return value indicates success or failure in the ability to render this frame. Typically it will indicate failure if the underlying surface has been disposed of, either directly through the calling of the method on this interface, or through an internal check mechanism. If failure is indicated, then check to see if the surface has been disposed of and discontinue rendering if it has.

Specified by:
render in interface RenderPipeline
Returns:
true if the drawing succeeded, or false if not

displayOnly

public boolean displayOnly()
Cause the surface to redraw the next frame only, with no processing of the pipeline. This is typically an optimisation step when nothing has changed in user land, so there's no processing that needs to be done. Skip the processing and tell the drawable surface to render again what it already has set from the previous frame.

The return value indicates success or failure in the ability to render this frame. Typically it will indicate failure if the underlying surface has been disposed of, either directly through the calling of the method on this interface, or through an internal check mechanism. If failure is indicated, then check to see if the surface has been disposed of and discontinue rendering if it has.

Specified by:
displayOnly in interface RenderPipeline
Returns:
true if the drawing succeeded, or false if not

setRenderableLayers

public void setRenderableLayers(LayerCullable[] layers,
                                int numLayers)
Set the set of layers to be used by this pipeline. Providing an argument of a zero number of layers remove the layers from being rendered, causing the pipeline to function as a no-op when rendered.

If a scene is currently set, and a non-zero number of layers is provided, this will remove the scene and use the layers instead.

Specified by:
setRenderableLayers in interface RenderPipeline
Parameters:
layers - The collection of layers, in order, to render
numLayers - The number of valid layers to use

halt

public void halt()
Force a halt of the current processing. Any processing in progress should exit immediately. Used to abort the current scene processing due to application shutdown or complete scene replacement.

Specified by:
halt in interface RenderPipeline

setSorter

public void setSorter(AudioSortStage ss)
Set the sorter instance to be used. If the instance is null, the current sorter is removed.

Parameters:
ss - The sorter instance to use or null

setCuller

public void setCuller(AudioCullStage cs)
Set the cull instance to be used. If the instance is null, the current culler is removed.

Parameters:
cs - The cull instance to use or null

Aviatrix3D
2.0 Beta 2

Latest Info from http://aviatrix3d.j3d.org/
Copyright © 2003 - 2006 j3d.org