comparison implementations/geerdes/methods.lisp @ 135:188fe5ea837f

Miscellaneous patching. Fixing exports, etc. darcs-hash:20070828101727-f76cc-9e3b1f75cff6f43212f8862153db9ca806f606b8.gz
author David Lewis <d.lewis@gold.ac.uk>
date Tue, 28 Aug 2007 11:17:27 +0100
parents 5e362d998f29
children fd85f52d9f9d
comparison
equal deleted inserted replaced
134:5e362d998f29 135:188fe5ea837f
155 (defmethod get-applicable-tempi ((anchored-period anchored-period) (composition midi-composition)) 155 (defmethod get-applicable-tempi ((anchored-period anchored-period) (composition midi-composition))
156 (%find-overlapping anchored-period (tempi composition))) 156 (%find-overlapping anchored-period (tempi composition)))
157 (defmethod get-applicable-key-signatures ((anchored-period anchored-period) (composition midi-composition)) 157 (defmethod get-applicable-key-signatures ((anchored-period anchored-period) (composition midi-composition))
158 (%find-overlapping anchored-period (key-signatures composition))) 158 (%find-overlapping anchored-period (key-signatures composition)))
159 159
160 (defparameter *stuff* nil)
160 (defun %find-overlapping (period1 period-list) 161 (defun %find-overlapping (period1 period-list)
161 (let ((result-list)) 162 (let ((result-list))
163 (setf *stuff* (cons period1 period-list))
162 (dolist (period2 period-list result-list) 164 (dolist (period2 period-list result-list)
163 (cond 165 (cond
164 ((before period1 period2) 166 ((time>= period2 (cut-off period1))
165 (return-from %find-overlapping (reverse result-list))) 167 (return-from %find-overlapping (reverse result-list)))
166 ((not (before period2 period1)) 168 ((time> (cut-off period2) period1)
167 (push period2 result-list)))))) 169 (push period2 result-list))))))