comparison implementations/geerdes/classes.lisp @ 88:8ea75cc8bc2c

Basic geerdes functionality moved to implementations/geerdes from separate package darcs-hash:20070720161242-f76cc-fd256cbbb81d8c418a6c7c45844264184c5ed932.gz
author David Lewis <d.lewis@gold.ac.uk>
date Fri, 20 Jul 2007 17:12:42 +0100
parents
children b849c4fc4c26
comparison
equal deleted inserted replaced
87:19a263fb92d1 88:8ea75cc8bc2c
1 (cl:in-package #:amuse-geerdes)
2
3 (defclass property-list-mixin ()
4 ((properties :initarg :properties :accessor properties :initform nil)))
5
6 (defclass geerdes-identifier (identifier) ())
7 (defclass geerdes-identifier-cat-id (geerdes-identifier)
8 ((cat-id :initarg :cat-id
9 :initform 'nil)))
10 (defclass geerdes-identifier-file-id (geerdes-identifier)
11 ((file-id :initarg :file-id
12 :initform 'nil)))
13
14 (defclass geerdes-composition (midi-composition property-list-mixin)
15 ((db-entry :initarg :db-entry
16 :initform nil
17 :accessor %db-entry)
18 (bar-numbers :initform nil
19 :accessor %bar-numbers)
20 (monody :initform nil
21 :accessor %monody)
22 (caches :initform nil
23 :accessor %caches)
24 (midi-constituents :initarg :constituents
25 :accessor %midi-constituents)
26 (midi-events :initarg :midi-events
27 :accessor %midi-events)
28 (midi-timebase :initarg :midi-timebase
29 :accessor %midi-timebase)
30 (identifier :initarg :id
31 :accessor %fast-identifier)
32 (db-cat-id :initarg :cat-id
33 :accessor %db-cat-id)
34 (db-file-id :initarg :file-id
35 :accessor %db-file-id)))
36
37 (defclass geerdes-monody (monody geerdes-composition)
38 ;; FIXME: necessary slots? Do we even use them?
39 ((inter-onset-intervals :initarg :i-o-i
40 :initform nil
41 :accessor %i-o-i)
42 (inter-onset-interval-mode :initarg :ioi-mode
43 :initform 0
44 :accessor %ioi-mode)))
45
46 (defclass geerdes-pitched-event (midi-pitched-event property-list-mixin)
47 ((id :initarg :id
48 :accessor %geerdes-pitched-event-id)))
49
50 (defclass geerdes-percussive-event (midi-percussive-event property-list-mixin)
51 ((id :initarg :id
52 :accessor %geerdes-percussive-event-id)))