Piece.mesa
Copyright (C) 1981, 1984 Xerox Corporation. All rights reserved.
Author: John Maxwell
last modified: November 28, 1981 8:46 AM
Edited by Doug Wyatt, June 14, 1984 5:21:36 pm PDT
DIRECTORY
MusicDefs;
Piece: CEDAR DEFINITIONS
= BEGIN OPEN MusicDefs;
default: INTEGER = 1000;
AddSync: PROC[p: PiecePTR, s: SyncPTR];
DeleteSync: PROC[s: SyncPTR];
RemoveSync: PROC[p: PiecePTR, s: SyncPTR];
CleanUpNotes: PROC[p: PiecePTR];
CleanUpSyncs: PROC[p: PiecePTR];
Sort: PROC[p: PiecePTR];
Copy: PROC[time1, time2: Time] RETURNS[PiecePTR];
Delete: PROC[begin, end: Time];
Insert: PROC[begin: Time, new: PiecePTR]; -- new gets deleted when done
Merge: PROC[begin, end: Time, p: PiecePTR]; -- new gets deleted when done
Replace: PROC[delete1, delete2, copy1, copy2: Time];
Length: PROC[p: PiecePTR] RETURNS[NAT];
MaxToc: PROC[piece: PiecePTR, time1, time2: Time, duration: BOOL] RETURNS[Time];
NearestNote: PROC[x, y: INTEGER ← default] RETURNS[NotePTR];
NearestObject: PROC[x, y: INTEGER ← default] RETURNS[obj: ObjectType, p: REF];
NearestSync: PROC[p: PiecePTR, t: Time, notesOnly: BOOLFALSE] RETURNS[index: CARDINAL];
END.