## com.sun.j3d.audioengines
Class Sample

    java.lang.Object
      com.sun.j3d.audioengines.Sample

    public class Sample

extends java.lang.Object

The Sample class defines the data and methods associated with a sound sample played through the AudioDevice. This contains all the data fields for non-spatialized and spatialized (positional and directional) sound samples.

Field Summary
`protected double[]` `angularDistance` Directional Sound's gain can be attenuated based on the listener's location off-angle from the source source direction.
`protected float[]` `angularFilterCutoff`
`protected int` `angularFilterType`
`protected float[]` `angularGain`
`protected double[]` `attenuationDistance`
`protected float[]` `attenuationGain`
`protected double[]` `backAttenuationDistance` Pairs of distances and gain scale factors that define piecewise linear gain BACK attenuation between each pair.
`protected float[]` `backAttenuationGain`
`protected static boolean` `debugFlag`
`protected Vector3f` `direction` The Cone Sound's direction vector.
`protected int` `dirtyFlags` dirty flags denoting what has changed since last rendering
`protected long` `duration`
`static int` `DURATION_UNKNOWN`
`protected float` `gain` Overall Scale Factor applied to sound gain.
`protected static boolean` `internalErrors`
`protected int` `loopCount` Number of times sound is looped/repeated during play
`static int` `LOW_PASS`
`protected boolean` `mute`
`static int` `NO_FILTERING` Distance Filter Each sound source is attenuated by a filter based on it's distance from the listener.
`static int` `NULL_SAMPLE` Null Sound identifier denotes sound is not created or initialized
`protected int` `numberOfChannels`
`protected float` `obstructionFilterCutoff`
`protected int` `obstructionFilterType`
`protected float` `obstructionGain`
`protected float` `occlusionFilterCutoff`
`protected int` `occlusionFilterType`
`protected float` `occlusionGain`
`protected Point3f` `position`
`protected float` `rateScaleFactor` Overall Scale Factor applied to sound.
`protected MediaContainer` `soundData` sound data associated with sound source
`protected int` `soundType` sound data associated with sound source
`protected Transform3D` `vworldXfrm`
`protected boolean` `vwXfrmFlag`

Constructor Summary
`Sample()`

Method Summary
`void` `clear()` Clears/re-initialize fields associated with sample data for this sound, and frees any device specific data associated with this sample.
`protected void` `debugPrint(java.lang.String message)`
`protected void` `debugPrintln(java.lang.String message)`
`int` `getDirtyFlags()`
`long` `getDuration()`
`float` `getGain()`
`int` `getLoopCount()`
`boolean` `getMuteFlag()`
`int` `getNumberOfChannelsUsed()`
`float` `getObstructionGain()`
`float` `getOcclusionGain()`
`float` `getRateScaleFactor()`
`MediaContainer` `getSoundData()`
`int` `getSoundType()`
`long` `getStartTime()`
`boolean` `getVWrldXfrmFlag()`
`void` `render(int dirtyFlags, View view, AuralParameters attribs)`
`void` `setAngularAttenuation(int filterType, double[] angle, float[] attenuationScaleFactor, float[] filterCutoff)`
`void` `setDirection(Vector3d direction)`
`void` `setDirtyFlags(int flags)`
`void` `setDistanceGain(double[] frontDistance, float[] frontAttenuationScaleFactor, double[] backDistance, float[] backAttenuationScaleFactor)`
`void` `setGain(float scaleFactor)`
`void` `setLoopCount(int count)`
`void` `setMuteFlag(boolean flag)`
`void` `setObstructionFilter(float cutoffFrequency)`
`void` `setObstructionGain(float scaleFactor)`
`void` `setOcclusionFilter(float cutoffFrequency)`
`void` `setOcclusionGain(float scaleFactor)`
`void` `setPosition(Point3d position)`
`void` `setRateScaleFactor(float scaleFactor)`
`void` `setSoundData(MediaContainer ref)`
`void` `setSoundType(int type)`
`void` `setVWrldXfrmFlag(boolean flag)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### debugFlag

    protected static final boolean debugFlag

See Also:
  Constant Field Values

### internalErrors

    protected static final boolean internalErrors

See Also:
  Constant Field Values

### NULL_SAMPLE

    public static final int NULL_SAMPLE

  Null Sound identifier denotes sound is not created or initialized

  See Also:
    Constant Field Values

### soundData

    protected MediaContainer soundData

  sound data associated with sound source

### soundType

    protected int soundType

  sound data associated with sound source

### gain

    protected float gain

  Overall Scale Factor applied to sound gain.

### rateScaleFactor

    protected float rateScaleFactor

  Overall Scale Factor applied to sound.

  Since:
    Java 3D 1.3

### loopCount

    protected int loopCount

  Number of times sound is looped/repeated during play

### DURATION_UNKNOWN

    public static final int DURATION_UNKNOWN

See Also:
  Constant Field Values

### duration

    protected long duration

### numberOfChannels

    protected int numberOfChannels

### mute

    protected boolean mute

### vworldXfrm

    protected Transform3D vworldXfrm

### vwXfrmFlag

    protected boolean vwXfrmFlag

### position

    protected Point3f position

### attenuationDistance

    protected double[] attenuationDistance

### attenuationGain

    protected float[] attenuationGain

### dirtyFlags

    protected int dirtyFlags

  dirty flags denoting what has changed since last rendering

### direction

    protected Vector3f direction

  The Cone Sound's direction vector. This is the cone axis.

### backAttenuationDistance

    protected double[] backAttenuationDistance

  Pairs of distances and gain scale factors that define piecewise linear gain BACK attenuation between each pair. These are used for defining elliptical attenuation regions.

### backAttenuationGain

    protected float[] backAttenuationGain

### angularDistance

    protected double[] angularDistance

  Directional Sound's gain can be attenuated based on the listener's location off-angle from the source source direction. This can be set by three parameters: angular distance in radians gain scale factor filtering (currently the only filtering supported is lowpass)

### angularGain

    protected float[] angularGain

### NO_FILTERING

    public static final int NO_FILTERING

  Distance Filter Each sound source is attenuated by a filter based on it's distance from the listener. For now the only supported filterType will be LOW_PASS frequency cutoff. At some time full FIR filtering will be supported.

  See Also:
    Constant Field Values

### LOW_PASS

    public static final int LOW_PASS

See Also:
  Constant Field Values

### angularFilterType

    protected int angularFilterType

### angularFilterCutoff

    protected float[] angularFilterCutoff

### obstructionGain

    protected float obstructionGain

### obstructionFilterType

    protected int obstructionFilterType

### obstructionFilterCutoff

    protected float obstructionFilterCutoff

### occlusionGain

    protected float occlusionGain

### occlusionFilterType

    protected int occlusionFilterType

### occlusionFilterCutoff

    protected float occlusionFilterCutoff

Constructor Detail

### Sample

    public Sample()

Method Detail

### debugPrint

    protected void debugPrint(java.lang.String message)

### debugPrintln

    protected void debugPrintln(java.lang.String message)

### getDuration

    public long getDuration()

### getStartTime

    public long getStartTime()

### getNumberOfChannelsUsed

    public int getNumberOfChannelsUsed()

### setDirtyFlags

    public void setDirtyFlags(int flags)

### getDirtyFlags

    public int getDirtyFlags()

### setSoundType

    public void setSoundType(int type)

### getSoundType

    public int getSoundType()

### setSoundData

    public void setSoundData(MediaContainer ref)

### getSoundData

    public MediaContainer getSoundData()

### setMuteFlag

    public void setMuteFlag(boolean flag)

### getMuteFlag

    public boolean getMuteFlag()

### setVWrldXfrmFlag

    public void setVWrldXfrmFlag(boolean flag)

### getVWrldXfrmFlag

    public boolean getVWrldXfrmFlag()

### setGain

    public void setGain(float scaleFactor)

### getGain

    public float getGain()

### setLoopCount

    public void setLoopCount(int count)

### getLoopCount

    public int getLoopCount()

### setPosition

    public void setPosition(Point3d position)

### setDistanceGain

    public void setDistanceGain(double[] frontDistance,
                                float[] frontAttenuationScaleFactor,
                                double[] backDistance,
                                float[] backAttenuationScaleFactor)

### setDirection

    public void setDirection(Vector3d direction)

### setAngularAttenuation

    public void setAngularAttenuation(int filterType,
                                      double[] angle,
                                      float[] attenuationScaleFactor,
                                      float[] filterCutoff)

### setRateScaleFactor

    public void setRateScaleFactor(float scaleFactor)

### getRateScaleFactor

    public float getRateScaleFactor()

### setObstructionGain

    public void setObstructionGain(float scaleFactor)

### getObstructionGain

    public float getObstructionGain()

### setObstructionFilter

    public void setObstructionFilter(float cutoffFrequency)

### setOcclusionGain

    public void setOcclusionGain(float scaleFactor)

### getOcclusionGain

    public float getOcclusionGain()

### setOcclusionFilter

    public void setOcclusionFilter(float cutoffFrequency)

### clear

    public void clear()

  Clears/re-initialize fields associated with sample data for this sound, and frees any device specific data associated with this sample.

### render

    public void render(int dirtyFlags,
                       View view,
                       AuralParameters attribs)

Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.