# HG changeset patch # User j.forth # Date 1275665829 -3600 # Node ID 8ee20d73d90b4e6457bd134cb761de57a9355e7a # Parent 46dd71ef9ab329b6831d928ce341fe61bb438861 Add floating constituent classes. Ignore-this: f3afc46c68f8ab3b1c9c482919a7378f darcs-hash:20100604153709-16a00-5ec4568ef64401cb0cc67a99246a125367ce4734.gz diff -r 46dd71ef9ab3 -r 8ee20d73d90b base/classes.lisp --- a/base/classes.lisp Fri Jun 04 16:33:47 2010 +0100 +++ b/base/classes.lisp Fri Jun 04 16:37:09 2010 +0100 @@ -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 46dd71ef9ab3 -r 8ee20d73d90b base/package.lisp --- a/base/package.lisp Fri Jun 04 16:33:47 2010 +0100 +++ b/base/package.lisp Fri Jun 04 16:37:09 2010 +0100 @@ -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