annotate implementations/midi/classes.lisp @ 212:619194befdd4

add identifier and timebase slots to midifile composition class Ignore-this: 4e72a0860344399452bea196c3739bbf darcs-hash:20090524150506-16a00-bce845ccf20a9289a4015fb58287f25ebfa178ad.gz committer: Jamie Forth <j.forth@gold.ac.uk>
author j.forth <j.forth@gold.ac.uk>
date Thu, 24 Feb 2011 11:23:17 +0000
parents a74494a94be9
children de60993404c1
rev   line source
m@25 1 (cl:in-package #:amuse-midi)
m@25 2
d@136 3 (defclass midi-object (amuse-object) ()
d@134 4 (:documentation "MIDI base class"))
d@130 5
d@136 6 (defclass midi-composition (standard-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
j@212 17 :initform 'nil
j@212 18 :accessor %midi-misc-controllers)
j@212 19 (identifier :initarg :identifier
j@212 20 :reader identifier)
j@212 21 (midi-timebase :initarg :midi-timebase
j@212 22 :reader %midi-timebase))
d@134 23 (:documentation "Class for midi compositions, with time
d@134 24 signatures, tempi, key signatures and other controllers as
d@134 25 lists in slots"))
d@33 26
m@146 27 (defclass midi-monody (amuse:standard-monody midi-composition)
m@146 28 ())
m@146 29
d@130 30 (defclass midi-message (midi-object) ;?
m@25 31 ((channel :accessor %midi-message-channel :initarg :channel)
m@25 32 (track :accessor %midi-message-track :initarg :track)))
m@25 33
d@136 34 (defclass midi-pitched-event (standard-chromatic-pitched-event midi-message)
d@32 35 ((velocity :initarg :velocity
d@32 36 :accessor %midi-pitched-event-velocity)
d@32 37 (patch :initarg :patch
d@134 38 :accessor %midi-pitched-event-patch))
d@134 39 (:documentation "Adds MIDI information to chromatic-pitched-event"))
m@25 40
d@136 41 (defclass midi-percussive-event (standard-percussive-event midi-message)
d@32 42 ((velocity :initarg :velocity
d@32 43 :accessor %midi-percussive-event-velocity)
d@33 44 (patch :initarg :patch
d@33 45 :accessor %midi-percussive-event-patch)
d@33 46 (sound :initarg :sound
d@134 47 :accessor %midi-percussive-event-sound))
d@134 48 (:documentation "Adds MIDI information to percussive-event"))
m@25 49