Beam.mesa
Copyright (C) 1981, 1984 Xerox Corporation. All rights reserved.
Author: John Maxwell
last modified: November 28, 1981 8: 44 AM
Edited by Doug Wyatt, June 14, 1984 12:08:21 pm PDT
DIRECTORY
MusicDefs;
Beam: CEDAR DEFINITIONS
= BEGIN OPEN MusicDefs;
Add: PROC[beam: BeamPTR, x: VariousPTR];
AddBeam: PROC[b: BeamPTR, new: BeamPTR] ~ INLINE { Add[b, new] };
AddChord: PROC[b: BeamPTR, c: ChordPTR] ~ INLINE { Add[b, c] };
AddNote: PROC[b: BeamPTR, n: NotePTR] ~ INLINE { Add[b, n] };
Remove: PROC[beam: BeamPTR, n: NotePTR, c: ChordPTR, b: BeamPTR];
SetStems: PROC[b: BeamPTR];
SetSyncs: PROC[b: BeamPTR];
Sort: PROC[b: BeamPTR];
Grace: PROC[b: BeamPTR] RETURNS[BOOL];
InVoice: PROC[b: BeamPTR, voice: NAT] RETURNS[BOOL];
Draw: PROC[b: BeamPTR] RETURNS[INTEGER, INTEGER];
Drawn: PROC[b: BeamPTR] RETURNS[BOOL];
(formerly) inline procedures
GetHeapIndex: PROC[p: BeamPTR] RETURNS[NAT];
Height: PROC[b: BeamPTR, time: Time] RETURNS[h: INTEGER];
Length: PROC[b: BeamPTR] RETURNS[NAT];
time: PROC[chord: VariousPTR] RETURNS[Time];
END.