# HG changeset patch # User d.mullensiefen # Date 1196779160 0 # Node ID fc6848dda767a85803335619293e1fb2f2e51768 # Parent edf2322ea33f38ec8c49cb1790d43245ee8d5a0e Added setf methods for midi-channel and velocity darcs-hash:20071204143920-1f211-9505a88618b3b0532b314ef809f8ee7819c956d5.gz diff -r edf2322ea33f -r fc6848dda767 implementations/midi/methods.lisp --- a/implementations/midi/methods.lisp Mon Nov 19 17:31:47 2007 +0000 +++ b/implementations/midi/methods.lisp Tue Dec 04 14:39:20 2007 +0000 @@ -1,6 +1,18 @@ (cl:in-package #:amuse-midi) -(defgeneric midi-channel (midi-message) +(defgeneric (setf midi-velocity) (value event) + (:method (v e) (declare (ignore v)) e)) +(defmethod (setf midi-velocity) (value (event midi-pitched-event)) + (setf (%midi-pitched-event-velocity event) value) + event) + +(defgeneric (setf midi-patch) (value event) + (:method (v e) (declare (ignore v)) e)) +(defmethod (setf midi-patch) (value (event midi-pitched-event)) + (setf (%midi-pitched-event-patch event) value) + event) + +(Defgeneric midi-channel (midi-message) (:documentation "MIDI channel. Also used for midi output")) (defmethod midi-channel ((midi-message midi-message)) (%midi-message-channel midi-message)) diff -r edf2322ea33f -r fc6848dda767 implementations/midi/package.lisp --- a/implementations/midi/package.lisp Mon Nov 19 17:31:47 2007 +0000 +++ b/implementations/midi/package.lisp Tue Dec 04 14:39:20 2007 +0000 @@ -13,4 +13,5 @@ #:midi-patch #:midi-drum-sound #:microsecond-per-crotchet-to-bpm + #:midi-patch ))