Score.mesa
Copyright (C) 1981, 1984 Xerox Corporation. All rights reserved.
Author: John Maxwell
last modified: December 2, 1981 8:49 AM
Edited by Doug Wyatt, June 14, 1984 5:24:10 pm PDT
DIRECTORY
MusicDefs;
Score: CEDAR DEFINITIONS
= BEGIN OPEN MusicDefs;
cache: ARRAY [0..maxCacheLength) OF SyncPTR;
maxCacheLength: CARDINAL = 200;
cacheLength: CARDINAL;
****************************************************************************
procedures
****************************************************************************
all of the Sets and Gets take "score" as the implied first parameter
BuildCache: PROC;
Draw: PROC[erase: BOOLTRUE];
DrawKey: PROC[key: INTEGER, time: Time];
DrawMetrenome: PROC[metrenome: INTEGER, time: Time];
DrawTimeSignature: PROC[ts: TimeSignature, time: Time];
GetAccidental: PROC[n: NotePTR] RETURNS[Accidental];
GetKey: PROC[t: Time] RETURNS[key: INTEGER];
GetMetrenome: PROC[t: Time] RETURNS[metrenome: INTEGER];
GetTimeSignature: PROC[t: Time] RETURNS[TimeSignature];
Justify: PROC[begin, end: Time];
LogicalToPhysical: PROC[begin, end: Time];
Look: PROC[look: LookCommand, switch: BOOL, n: INTEGER];
Print: PROC[splines: BOOL];
Redraw: PROC[t1, t2: Time];
ScalePhysical: PROC[k: INTEGER];
SetKey: PROC[time1, time2: Time, k: INTEGER];
SetMetrenome: PROC[time1, time2: Time, m: INTEGER];
SetTimeSignature: PROC[time1, time2: Time, ts: TimeSignature];
ShowLogical: PROC[firstSync, lastSync: CARDINAL];
key specific procedures
AddToPitch: PROC[key, pitch, delta: INTEGER] RETURNS[INTEGER];
KeyHeight: PROC[key, pitch: INTEGER] RETURNS[INTEGER];
NormalAcc: PROC[key, pitch: INTEGER] RETURNS[Accidental];
PriorNote: PROC[pitch, height: INTEGER, index: CARDINAL] RETURNS[NotePTR];
ShowPitch: PROC[pitch: INTEGER, spelled: Accidental, key: INTEGER] RETURNS[INTEGER];
****************************************************************************
utility procedures
****************************************************************************
FileIn: PROC[s: STRING, append: BOOLFALSE];
FileInOld: PROC[s: STRING];
FileOut: PROC[s: STRING] RETURNS[BOOL];
FileOutOld: PROC[s: STRING];
FileStats: PROC;
InitializeSynthesizer: PROC;
StartListening: PROC[s: PiecePTR];
StartPlaying: PROC[s: PiecePTR, first: CARDINAL, physical: BOOL,
displayCursor: PROC[time: LONG CARDINAL]];
StopListening: PROC;
StopPlaying: PROC;
Test: PROC RETURNS[BOOL];
END.