Class:            VirtualSound

Environment:      Siren
Superclass:         Siren.SampledSound
Category:         Music-Sound
Instance variables:   source
Indexed variables:   objects

An instance of VirtualSound is a "reference" to another sound, typically by a named cue list entry.

Instance Variables:
   source    the sound to which the VirtualSound points

accessing

cue: cueName
   Set the cue name of the receiver

source
   Answer the receiver's source sound.

source: aSound
   Set the receiver's source sound.

start: start
   Set the argument as the starting sample of the receiver.

stop: stop
   Set the argument as the ending sample of the receiver.

sample accessing

sampleAt: index put: aValue
   Stuff the given sample at the given index **after transforming into a 'real' sound**.

private

getReal
   Answer a 'real sound' based on the receiver.

mapSampleIndex: index
   Map the given sample index according to the 'page' (firstIndex) of the source and the receiver's relative offset.

realSound
   Answer the real sound for the receiver.

testing

isVirtual
   Answer whether the receiver is a virtual sound.

MetaClass:         VirtualSound class

instance creation

from: source cue: cName
   Answer a VirtualSound derived from the argument and named cue region.

examples

exampleView
   Open a sound view on a ramp with a chunk cut out of it.