<< SoundList.mesa:>> <> <> <<>> DIRECTORY Rope USING [ROPE], VoiceRope USING [IntervalSpecs], VoiceViewers USING [VoiceViewerInfo, SoundInterval, SoundList]; SoundList: CEDAR DEFINITIONS = BEGIN SoundListFromIntervalSpecs: PROC [intervalSpecs: VoiceRope.IntervalSpecs, lengthOfRopeInterval: INT] RETURNS [VoiceViewers.SoundList]; ExtractSoundList: PROC [voiceViewerInfo: VoiceViewers.VoiceViewerInfo, soundInterval: VoiceViewers.SoundInterval]; <> <<>> ReplaceSoundList: PROC [voiceViewerInfo: VoiceViewers.VoiceViewerInfo, cutStart: INT, cutLength: INT, replacement: VoiceViewers.SoundList]; <> << >> SoundChars: PROC [viewerInfo: VoiceViewers.VoiceViewerInfo, skipChars: INT _ 0] RETURNS [soundRope: Rope.ROPE _ NIL, remnant: INT]; <> <<>> <<>> END.