Mercurial > hg > amuse
diff base/constructors.lisp @ 174:9b152d515275
New partially functional clefs
darcs-hash:20080313112229-40ec0-35f844cc728dd8bc7061c9a876723012f8d83ef6.gz
author | d.lewis <d.lewis@gold.ac.uk> |
---|---|
date | Thu, 13 Mar 2008 11:22:29 +0000 |
parents | ebfe054eea1c |
children | 54d79a2c82d2 |
line wrap: on
line diff
--- a/base/constructors.lisp Thu Mar 13 11:20:51 2008 +0000 +++ b/base/constructors.lisp Thu Mar 13 11:22:29 2008 +0000 @@ -109,3 +109,44 @@ :bpm bpm :time onset :interval duration)) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Experimental: +;; + +(defun make-standard-clef-period (type line onset duration &key octave-shift) + "Constructor for standard-clef-periods" + (make-instance 'standard-clef-period + :type type + :line line + :octave-shift octave-shift + :time onset + :interval duration)) + +(defun make-standard-treble-clef-period (onset duration) + "Convenience function for making treble clefs" + (make-instance 'standard-clef-period + :type :G + :line 2 + :octave-shift nil + :time onset + :interval duration)) + +(defun make-standard-bass-clef-period (onset duration) + "Convenience function for making bass clefs" + (make-instance 'standard-clef-period + :type :F + :line 4 + :octave-shift nil + :time onset + :interval duration)) + +(defun make-standard-alto-clef-period (onset duration) + "Convenience function for making alto clefs" + (make-instance 'standard-clef-period + :type :C + :line 3 + :octave-shift nil + :time onset + :interval duration)) \ No newline at end of file