annotate implementations/midi/classes.lisp @ 134:5e362d998f29

More documentation darcs-hash:20070828101524-f76cc-6add2c3c254befc3cf767ac69706865b7830bc6a.gz
author David Lewis <d.lewis@gold.ac.uk>
date Tue, 28 Aug 2007 11:15:24 +0100
parents b849c4fc4c26
children fd85f52d9f9d
rev   line source
m@25 1 (cl:in-package #:amuse-midi)
m@25 2
d@134 3 (defclass midi-object (amuse:amuse-object) ()
d@134 4 (:documentation "MIDI base class"))
d@130 5
d@130 6 (defclass midi-composition (amuse:composition midi-object)
d@33 7 ((time-signatures :initarg :time-signatures
d@33 8 :initform 'nil
d@33 9 :accessor %midi-time-signatures)
d@33 10 (tempi :initarg :tempi
d@33 11 :initform 'nil
d@33 12 :accessor %midi-tempi)
d@115 13 (key-signatures :initarg :key-signatures
d@115 14 :initform 'nil
d@115 15 :accessor %midi-key-signatures)
d@33 16 (misc-controllers :initarg :controllers
d@33 17 :initform 'nil
d@134 18 :accessor %midi-misc-controllers))
d@134 19 (:documentation "Class for midi compositions, with time
d@134 20 signatures, tempi, key signatures and other controllers as
d@134 21 lists in slots"))
d@33 22
d@130 23 (defclass midi-message (midi-object) ;?
m@25 24 ((channel :accessor %midi-message-channel :initarg :channel)
m@25 25 (track :accessor %midi-message-track :initarg :track)))
m@25 26
m@25 27 (defclass midi-pitched-event (chromatic-pitched-event midi-message)
d@32 28 ((velocity :initarg :velocity
d@32 29 :accessor %midi-pitched-event-velocity)
d@32 30 (patch :initarg :patch
d@134 31 :accessor %midi-pitched-event-patch))
d@134 32 (:documentation "Adds MIDI information to chromatic-pitched-event"))
m@25 33
m@25 34 (defclass midi-percussive-event (percussive-event midi-message)
d@32 35 ((velocity :initarg :velocity
d@32 36 :accessor %midi-percussive-event-velocity)
d@33 37 (patch :initarg :patch
d@33 38 :accessor %midi-percussive-event-patch)
d@33 39 (sound :initarg :sound
d@134 40 :accessor %midi-percussive-event-sound))
d@134 41 (:documentation "Adds MIDI information to percussive-event"))
m@25 42