Mercurial > hg > amuse
diff base/classes.lisp @ 244:76a695fe294f
Add floating constituent classes.
Ignore-this: f3afc46c68f8ab3b1c9c482919a7378f
darcs-hash:20100604153709-16a00-5ec4568ef64401cb0cc67a99246a125367ce4734.gz
committer: Jamie Forth <j.forth@gold.ac.uk>
author | j.forth <j.forth@gold.ac.uk> |
---|---|
date | Thu, 24 Feb 2011 11:23:18 +0000 |
parents | be5cd4c5ecc2 |
children | 25b6b52eb770 4b4fb8859e82 |
line wrap: on
line diff
--- a/base/classes.lisp Thu Feb 24 11:23:18 2011 +0000 +++ b/base/classes.lisp Thu Feb 24 11:23:18 2011 +0000 @@ -208,8 +208,11 @@ standard-anchored-period) () (:documentation "Tempo associated with a standard-anchored-period")) - -;; collections of more than one event + + +;;;===================================================================== +;;; Constituents: collections of more than one event +;;;===================================================================== (defclass constituent (anchored-period) () (:documentation "Base class for constituents")) @@ -243,6 +246,28 @@ (defclass standard-monody (monody standard-composition) ()) +;; Floating Constituents + +(defclass floating-constituent (period) () + (:documentation "Base class for non-anchored constituents")) + +(defclass standard-floating-constituent (floating-constituent + standard-period) () + (:documentation "Base class for floating constituents using standard + time representation")) + +(defclass time-ordered-floating-constituent (floating-constituent + list-slot-sequence) + ;; this won't work if lisp implementation doesn't support extensible + ;; sequences. + ()) + +(defclass standard-time-ordered-floating-constituent + (time-ordered-floating-constituent standard-floating-constituent) + ;; this won't work if lisp implementation doesn't support extensible + ;; sequences. + ()) + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Experimental: