<> <> <> <> <> 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: BOOL _ FALSE] RETURNS[index: CARDINAL]; END.