view implementations/gsharp/classes.lisp @ 288:d1e5bbcc5ea4

Rationalise base and geerdes classes, constructors and methods. Ignore-this: d9d4d88566a6d110844d91d4c70513cd Towards a more standardised interface. Some of these changes (generalised constructors and reader functions) are necessary for amuse-database-admin functionality and some other CHARM-like things. darcs-hash:20090716154406-16a00-8a9b4fb1fc1f5ba75af66a1bbd87e1bb68e02493.gz
author j.forth <j.forth@gold.ac.uk>
date Thu, 16 Jul 2009 16:44:06 +0100
parents 4a0e15e2829a
children 22ac5ec1733c
line wrap: on
line source
(cl:in-package "AMUSE-GSHARP")

(defclass gsharp-object ()())

(defclass gsharp-composition (amuse:standard-composition gsharp-object)
  ((buffer :initarg :buffer :reader buffer)
   (tempi :initarg :tempi :reader tempi)))

(defclass gsharp-pitched-event (standard-chromatic-pitched-event gsharp-object)
  ((note :initarg :note :reader note)
   (slice-index :initarg :slice-index)))

(defclass gsharp-identifier (composition-identifier gsharp-object)
  ((pathname :initarg :path
             :reader %gsharp-identifier-pathname
	     :initform 'nil))
  (:documentation "Identifier for files that can be read in GSharp,
  containing pathname information"))

(defclass gsharp-gsh-identifier (gsharp-identifier)
  ()
  (:documentation "Identifier for .gsh files for gsharp"))

(defclass gsharp-mxml-identifier (gsharp-identifier)
  ()
  (:documentation "Identifier for MusicXML files for gsharp"))