comparison implementations/meredith/classes.lisp @ 286:d22c67dac97d

add minimal backend for Dave Meredith's data Ignore-this: 91608f727967a4c5709bd41634ab9ae2 darcs-hash:20090524193956-16a00-038e6f7cb235dea4e7efcc70c4d1a7bc7fd402a6.gz
author j.forth <j.forth@gold.ac.uk>
date Sun, 24 May 2009 20:39:56 +0100
parents
children 6f0881af3403
comparison
equal deleted inserted replaced
285:c2e50459efab 286:d22c67dac97d
1 (cl:in-package #:amuse-meredith)
2
3 ;;; Top-level class
4
5 (defclass meredith-data-object (amuse:amuse-object) ())
6
7 ;;; Identifiers
8
9 (defclass meredith-identifier (meredith-data-object) ())
10
11 (defclass meredith-composition-identifier (composition-identifier
12 meredith-identifier)
13 ((composition-id
14 :initarg :composition-id
15 :reader composition-id)))
16
17 (defclass meredith-event-identifier (event-identifier
18 meredith-identifier)
19 ((event-id :initarg :event-id
20 :reader event-id)))
21
22 ;;; Music objects
23
24 (defclass meredith-music-object (meredith-data-object) ())
25
26 (defclass meredith-composition (amuse:standard-composition
27 meredith-music-object)
28 ((identifier :initarg :identifier :reader identifier)
29 (description :initarg :description :reader description)))
30
31 (defclass meredith-event (amuse:chromatic-pitched-event
32 amuse:diatonic-pitched-event
33 amuse:standard-anchored-period
34 meredith-music-object)
35 ((identifier :initarg :identifier :accessor identifier)
36 (tatum-on :initarg :tatum-on :accessor tatum-on)
37 (tatum-dur :initarg :tatum-dur :accessor tatum-dur)
38 (tactus-on :initarg :tactus-on :accessor tactus-on)
39 (tactus-dur :initarg :tactus-dur :accessor tactus-dur)
40 (tatum-on-ms :initarg :tatum-on-ms :accessor tatum-on-ms)
41 (tatum-dur-ms :initarg :tatum-dur-ms :accessor tatum-dur-ms)
42 (beat-on-ms :initarg :beat-on-ms :accessor beat-on-ms)
43 (beat-dur-ms :initarg :beat-dur-ms :accessor beat-dur-ms)
44 (crot-on-ms :initarg :crot-on-ms :accessor crot-on-ms)
45 (crot-dur-ms :initarg :crot-dur-ms :accessor crot-dur-ms)
46 (pitch-name :initarg :pitch-name :accessor pitch-name)
47 (voice :initarg :voice :accessor voice)))
48
49