[CM] pclass and mathematics of harmony
John J Foerch
jjfoerch@earthlink.net
Sun, 08 Jan 2006 17:07:08 -0500
In the case of transpose.lisp, a staff object is given as an
argument to transpose. I don't see a way to get the correct
staff object from the scope of a note. I am looking at
cmn0.lisp, (line 1369) at the defun of staff. I'll paste
the portion I'm looking at:
(defun staff (&rest objects)
(let* ((new-staff (make-instance 'staff)))
(multiple-value-bind
(data actions local-brace)
(notify new-staff objects)
(setf *cmn-staff* new-staff)
(setf (staff-data new-staff) data)
If I am reading this correctly, the notes (objects) are
being evaluated via notify before *cmn-staff* is set to
point to the staff they are in. Is there any reason
*cmn-staff* could not be set before the processing of the
notes?
I will experiment at this end.
Thank you!
-John J Foerch
Bill Schottstaedt writes:
> Perhaps transpose.lisp will help -- the key signature is found with
> key-p while scanning the staff data list.
>
>