javax.media.j3d
Class SoundStructure

java.lang.Object
  extended by javax.media.j3d.J3dStructure
      extended by javax.media.j3d.SoundStructure

 class SoundStructure
extends J3dStructure

A sound structure is a object that organizes Sounds and soundscapes. This structure parallels the RenderingEnv structure and is used for sounds


Field Summary
(package private) static boolean debugFlag
           
(package private) static boolean internalErrors
           
(package private)  UnorderList nonViewScopedSounds
          The list of Sound nodes
(package private)  UnorderList nonViewScopedSoundscapes
          The list of Soundscapes
(package private)  java.util.ArrayList objList
           
(package private)  java.util.ArrayList switchChangeLeafMasks
           
(package private)  java.util.ArrayList switchChangeLeafNodes
           
(package private)  UpdateTargets targets
           
(package private)  BoundingSphere tempSphere
          A bounds used for getting a view platform scheduling BoundingSphere
(package private)  boolean transformMsg
           
(package private)  UnorderList viewPlatforms
          The list of view platforms
(package private)  java.util.HashMap viewScopedSounds
           
(package private)  java.util.HashMap viewScopedSoundscapes
           
(package private)  BoundingSphere vpsphere
           
(package private)  java.util.ArrayList xformChangeList
           
 
Fields inherited from class javax.media.j3d.J3dStructure
messageList, msgList, nMessage, threadData, threadType, universe, updateThread
 
Constructor Summary
SoundStructure(VirtualUniverse u)
          This constructor does nothing
 
Method Summary
(package private)  void addNonScopedSound(SoundRetained mirSound)
           
(package private)  void addNonSoundscape(SoundscapeRetained soundscape)
           
(package private)  void addScopedSound(SoundRetained mirSound, View view)
          Add sound to sounds list.
(package private)  void addScopedSoundscape(SoundscapeRetained soundscape, View view)
           
(package private)  void changeNodeAttrib(J3dMessage m)
           
(package private)  void changeNodeState(J3dMessage m)
           
(package private)  void cleanup()
          Release resource associate with this structure before GC We need to clear all those IndexedUnorderSet/WakeupIndexedList so that the listIdx associate with IndexedObject reset to -1.
(package private)  void debugPrint(java.lang.String message)
           
(package private)  void deleteNonScopedSound(SoundRetained sound)
           
(package private)  void deleteNonScopedSoundscape(SoundscapeRetained soundscape)
           
(package private)  void deleteScopedSound(SoundRetained sound, View view)
           
(package private)  void deleteScopedSoundscape(SoundscapeRetained soundscape, View view)
           
(package private)  void enableSound(SoundRetained sound)
           
(package private)  UnorderList getSoundList(View view)
           
(package private)  UnorderList getSoundscapeList(View view)
           
(package private)  void insertNodes(J3dMessage m)
           
(package private)  boolean intersect(Bounds region)
           
(package private)  boolean isSoundscapeScopedToView(java.lang.Object obj, View view)
           
(package private)  boolean isSoundScopedToView(java.lang.Object obj, View view)
           
(package private)  void loadSound(SoundRetained sound, boolean forceLoad)
           
(package private)  void muteSound(SoundRetained sound)
           
(package private)  void pauseSound(SoundRetained sound)
           
(package private)  void processMessages(long referenceTime)
          This gets overriden by the structure
(package private)  void processSwitchChanged(J3dMessage m)
           
(package private)  void removeNodes(J3dMessage m)
          This is used by MasterControl to process any unused message for final cleanup.
(package private)  void updateTransformChange(UpdateTargets targets, long referenceTime)
           
(package private)  void updateViewSpecificGroupChanged(J3dMessage m)
           
 
Methods inherited from class javax.media.j3d.J3dStructure
addMessage, clearMessages, getMessages, getNumMessage, getUpdateThreadData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nonViewScopedSounds

UnorderList nonViewScopedSounds
The list of Sound nodes


viewScopedSounds

java.util.HashMap viewScopedSounds

nonViewScopedSoundscapes

UnorderList nonViewScopedSoundscapes
The list of Soundscapes


viewScopedSoundscapes

java.util.HashMap viewScopedSoundscapes

viewPlatforms

UnorderList viewPlatforms
The list of view platforms


tempSphere

BoundingSphere tempSphere
A bounds used for getting a view platform scheduling BoundingSphere


vpsphere

BoundingSphere vpsphere

objList

java.util.ArrayList objList

xformChangeList

java.util.ArrayList xformChangeList

switchChangeLeafNodes

java.util.ArrayList switchChangeLeafNodes

switchChangeLeafMasks

java.util.ArrayList switchChangeLeafMasks

transformMsg

boolean transformMsg

targets

UpdateTargets targets

debugFlag

static final boolean debugFlag
See Also:
Constant Field Values

internalErrors

static final boolean internalErrors
See Also:
Constant Field Values
Constructor Detail

SoundStructure

SoundStructure(VirtualUniverse u)
This constructor does nothing

Method Detail

processMessages

void processMessages(long referenceTime)
Description copied from class: J3dStructure
This gets overriden by the structure

Specified by:
processMessages in class J3dStructure

insertNodes

void insertNodes(J3dMessage m)

addScopedSound

void addScopedSound(SoundRetained mirSound,
                    View view)
Add sound to sounds list.


addNonScopedSound

void addNonScopedSound(SoundRetained mirSound)

addScopedSoundscape

void addScopedSoundscape(SoundscapeRetained soundscape,
                         View view)

addNonSoundscape

void addNonSoundscape(SoundscapeRetained soundscape)

removeNodes

void removeNodes(J3dMessage m)
Description copied from class: J3dStructure
This is used by MasterControl to process any unused message for final cleanup. DON'T decrememt message count in the method, as it is done by MasterControl.

Specified by:
removeNodes in class J3dStructure

deleteNonScopedSound

void deleteNonScopedSound(SoundRetained sound)

deleteNonScopedSoundscape

void deleteNonScopedSoundscape(SoundscapeRetained soundscape)

deleteScopedSound

void deleteScopedSound(SoundRetained sound,
                       View view)

deleteScopedSoundscape

void deleteScopedSoundscape(SoundscapeRetained soundscape,
                            View view)

changeNodeAttrib

void changeNodeAttrib(J3dMessage m)

changeNodeState

void changeNodeState(J3dMessage m)

intersect

boolean intersect(Bounds region)

loadSound

void loadSound(SoundRetained sound,
               boolean forceLoad)

enableSound

void enableSound(SoundRetained sound)

muteSound

void muteSound(SoundRetained sound)

pauseSound

void pauseSound(SoundRetained sound)

processSwitchChanged

void processSwitchChanged(J3dMessage m)

getSoundList

UnorderList getSoundList(View view)

getSoundscapeList

UnorderList getSoundscapeList(View view)

updateTransformChange

void updateTransformChange(UpdateTargets targets,
                           long referenceTime)

debugPrint

void debugPrint(java.lang.String message)

isSoundScopedToView

boolean isSoundScopedToView(java.lang.Object obj,
                            View view)

isSoundscapeScopedToView

boolean isSoundscapeScopedToView(java.lang.Object obj,
                                 View view)

updateViewSpecificGroupChanged

void updateViewSpecificGroupChanged(J3dMessage m)

cleanup

void cleanup()
Description copied from class: J3dStructure
Release resource associate with this structure before GC We need to clear all those IndexedUnorderSet/WakeupIndexedList so that the listIdx associate with IndexedObject reset to -1.

Specified by:
cleanup in class J3dStructure


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