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
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.