diff implementations/midi/classes.lisp @ 33:d1010755f507

Large upload of local changes. Many additions, such as harmony and piece-level objects darcs-hash:20070413100909-f76cc-a8aa8dfc07f438dc0c1a7c45cee7ace2ecc1e6a5.gz
author David Lewis <d.lewis@gold.ac.uk>
date Fri, 13 Apr 2007 11:09:09 +0100
parents 5e705b6f94b6
children 5bec705db9d6
line wrap: on
line diff
--- a/implementations/midi/classes.lisp	Mon Dec 18 13:23:31 2006 +0000
+++ b/implementations/midi/classes.lisp	Fri Apr 13 11:09:09 2007 +0100
@@ -1,5 +1,16 @@
 (cl:in-package #:amuse-midi) 
 
+(defclass midi-composition (amuse:composition)
+  ((time-signatures :initarg :time-signatures
+		    :initform 'nil
+		    :accessor %midi-time-signatures)
+   (tempi :initarg :tempi
+	  :initform 'nil
+	  :accessor %midi-tempi)
+   (misc-controllers :initarg :controllers
+		      :initform 'nil
+		      :accessor %midi-misc-controllers)))
+
 (defclass midi-message () ;?
   ((channel :accessor %midi-message-channel :initarg :channel)
    (track :accessor %midi-message-track :initarg :track)))
@@ -13,8 +24,10 @@
 (defclass midi-percussive-event (percussive-event midi-message)
   ((velocity :initarg :velocity
 	     :accessor %midi-percussive-event-velocity)
-   (patch :initarg :patch)
-   (sound :initarg :sound)))
+   (patch :initarg :patch
+	  :accessor %midi-percussive-event-patch)
+   (sound :initarg :sound
+	  :accessor %midi-percussive-event-sound)))
 
 (defclass midi-key-signature (basic-key-signature)
   ;; Is mode ever used in real life? Is it ever accurately used in