m@25: (cl:in-package #:amuse-midi) m@25: d@136: (defclass midi-object (amuse-object) () d@134: (:documentation "MIDI base class")) d@130: j@294: (defclass midifile-identifier (composition-identifier midi-object) j@294: ((pathname :initarg :path j@294: :reader midifile-identifier-pathname j@294: :initform 'nil)) j@294: (:documentation "Identifier for MIDI files, containing pathname j@294: information")) j@294: d@136: (defclass midi-composition (standard-composition midi-object) d@33: ((time-signatures :initarg :time-signatures d@33: :initform 'nil d@33: :accessor %midi-time-signatures) d@33: (tempi :initarg :tempi d@33: :initform 'nil d@33: :accessor %midi-tempi) d@115: (key-signatures :initarg :key-signatures d@115: :initform 'nil d@115: :accessor %midi-key-signatures) d@33: (misc-controllers :initarg :controllers j@281: :initform 'nil j@281: :accessor %midi-misc-controllers) j@281: (identifier :initarg :identifier j@281: :reader identifier) j@281: (midi-timebase :initarg :midi-timebase j@281: :reader %midi-timebase)) d@134: (:documentation "Class for midi compositions, with time d@134: signatures, tempi, key signatures and other controllers as d@134: lists in slots")) d@33: m@146: (defclass midi-monody (amuse:standard-monody midi-composition) m@146: ()) m@146: d@130: (defclass midi-message (midi-object) ;? m@25: ((channel :accessor %midi-message-channel :initarg :channel) m@25: (track :accessor %midi-message-track :initarg :track))) m@25: d@136: (defclass midi-pitched-event (standard-chromatic-pitched-event midi-message) d@32: ((velocity :initarg :velocity d@32: :accessor %midi-pitched-event-velocity) d@32: (patch :initarg :patch d@134: :accessor %midi-pitched-event-patch)) d@134: (:documentation "Adds MIDI information to chromatic-pitched-event")) m@25: d@136: (defclass midi-percussive-event (standard-percussive-event midi-message) d@32: ((velocity :initarg :velocity d@32: :accessor %midi-percussive-event-velocity) d@33: (patch :initarg :patch d@33: :accessor %midi-percussive-event-patch) d@33: (sound :initarg :sound d@134: :accessor %midi-percussive-event-sound)) d@134: (:documentation "Adds MIDI information to percussive-event")) m@25: