# HG changeset patch # User j.forth # Date 1298546598 0 # Node ID 76a695fe294fafc5eb64ca09f3c784ee533c9b63 # Parent 93f8768b12ddddf6a5863434bec4b7d8617f3bce Add floating constituent classes. Ignore-this: f3afc46c68f8ab3b1c9c482919a7378f darcs-hash:20100604153709-16a00-5ec4568ef64401cb0cc67a99246a125367ce4734.gz committer: Jamie Forth diff -r 93f8768b12dd -r 76a695fe294f base/classes.lisp --- 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: diff -r 93f8768b12dd -r 76a695fe294f base/package.lisp --- a/base/package.lisp Thu Feb 24 11:23:18 2011 +0000 +++ b/base/package.lisp Thu Feb 24 11:23:18 2011 +0000 @@ -5,6 +5,10 @@ #:composition #:standard-constituent #:standard-composition + #:floating-constituent + #:standard-floating-constituent + #:time-ordered-floating-constituent + #:standard-time-ordered-floating-constituent #:monody #:standard-monody #:identifier