Mercurial > hg > amuse
view classes.lisp @ 17:930e9880ed3f
Pitch methods and added constructors.lisp file
darcs-hash:20061212144422-f76cc-194cd746d5d7eaf40f24ca5788093b25066de77c.gz
author | David Lewis <d.lewis@gold.ac.uk> |
---|---|
date | Tue, 12 Dec 2006 14:44:22 +0000 |
parents | 2af5e4f825a8 |
children | 70e76c1c87b7 |
line wrap: on
line source
(cl:in-package #:amuse) ;; collections of more than one event (defclass constituent () ()) (defclass composition (constituent) ()) (defclass monody (constituent) ()) ;; types of information-specifiers (defclass moment-designator () ()) (defclass period-designator () ()) (defclass anchored-period-designator (moment-designator period-designator) ()) (defclass pitch-designator () ()) (defclass pitch-interval-designator () ()) ;; time-related classes (defclass moment (moment-designator) ((time :accessor %moment-time :initarg :time))) (defclass period (period-designator) ((interval :accessor %period-interval :initarg :interval))) (defclass floating-period (period) ()) (defclass anchored-period (period moment anchored-period-designator) ()) ;; pitch-related classes (defclass frequency () ()) (defclass pitch (pitch-designator) ()) (defclass chromatic-pitch (pitch) ((number :accessor %chromatic-pitch-number :initarg :number))) (defclass diatonic-pitch (pitch) ((name :accessor %diatonic-pitch-name :initarg :name) (accidental :accessor %diatonic-pitch-accidental :initarg :accidental) (octave :accessor %diatonic-pitch-octave :initarg :octave))) (defclass pitch-interval (pitch-interval-designator) ((span :accessor %pitch-interval-span :initarg :span))) ;; events (defclass event (anchored-period) ()) (defclass pitched-event (event pitch-designator) ()) (defclass percussive-event (event) ())