Mercurial > hg > amuse
comparison 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 |
comparison
equal
deleted
inserted
replaced
133:d041118612d4 | 134:5e362d998f29 |
---|---|
1 (cl:in-package #:amuse-midi) | 1 (cl:in-package #:amuse-midi) |
2 | 2 |
3 (defclass midi-object (amuse:amuse-object) ()) | 3 (defclass midi-object (amuse:amuse-object) () |
4 (:documentation "MIDI base class")) | |
4 | 5 |
5 (defclass midi-composition (amuse:composition midi-object) | 6 (defclass midi-composition (amuse:composition midi-object) |
6 ((time-signatures :initarg :time-signatures | 7 ((time-signatures :initarg :time-signatures |
7 :initform 'nil | 8 :initform 'nil |
8 :accessor %midi-time-signatures) | 9 :accessor %midi-time-signatures) |
12 (key-signatures :initarg :key-signatures | 13 (key-signatures :initarg :key-signatures |
13 :initform 'nil | 14 :initform 'nil |
14 :accessor %midi-key-signatures) | 15 :accessor %midi-key-signatures) |
15 (misc-controllers :initarg :controllers | 16 (misc-controllers :initarg :controllers |
16 :initform 'nil | 17 :initform 'nil |
17 :accessor %midi-misc-controllers))) | 18 :accessor %midi-misc-controllers)) |
19 (:documentation "Class for midi compositions, with time | |
20 signatures, tempi, key signatures and other controllers as | |
21 lists in slots")) | |
18 | 22 |
19 (defclass midi-message (midi-object) ;? | 23 (defclass midi-message (midi-object) ;? |
20 ((channel :accessor %midi-message-channel :initarg :channel) | 24 ((channel :accessor %midi-message-channel :initarg :channel) |
21 (track :accessor %midi-message-track :initarg :track))) | 25 (track :accessor %midi-message-track :initarg :track))) |
22 | 26 |
23 (defclass midi-pitched-event (chromatic-pitched-event midi-message) | 27 (defclass midi-pitched-event (chromatic-pitched-event midi-message) |
24 ((velocity :initarg :velocity | 28 ((velocity :initarg :velocity |
25 :accessor %midi-pitched-event-velocity) | 29 :accessor %midi-pitched-event-velocity) |
26 (patch :initarg :patch | 30 (patch :initarg :patch |
27 :accessor %midi-pitched-event-patch))) | 31 :accessor %midi-pitched-event-patch)) |
32 (:documentation "Adds MIDI information to chromatic-pitched-event")) | |
28 | 33 |
29 (defclass midi-percussive-event (percussive-event midi-message) | 34 (defclass midi-percussive-event (percussive-event midi-message) |
30 ((velocity :initarg :velocity | 35 ((velocity :initarg :velocity |
31 :accessor %midi-percussive-event-velocity) | 36 :accessor %midi-percussive-event-velocity) |
32 (patch :initarg :patch | 37 (patch :initarg :patch |
33 :accessor %midi-percussive-event-patch) | 38 :accessor %midi-percussive-event-patch) |
34 (sound :initarg :sound | 39 (sound :initarg :sound |
35 :accessor %midi-percussive-event-sound))) | 40 :accessor %midi-percussive-event-sound)) |
41 (:documentation "Adds MIDI information to percussive-event")) | |
36 | 42 |