Index
Strasheela
Init
GUtils
LUtils
MUtils
Score
SMapping
SDistro
Out
Strasheela
FD_edited
Midi

inheritance tree

 NonType Reflection       FlagsMixin
    |        |                |
    `-----+--'                |
          |                   |
     ScoreObject    SMapping.mappingMixin
          |                   |
          `---------+---------'
                    |
                   Item
                    |
                    `+
                     |
                  Element                 TimeMixin
                     |                        |
                     `----+-------------------'
                          |
                   TemporalElement
                          |
                          |
                          |
                        Event

class definition

[semi abstract class or concrete class?] An event is a score element which produces sound when the score is played. An event is a very general representation for something producing sound. For instance, a note played on a piano (with a specific pitch, loudness etc.), a hand clapping (no pitch, but maybe a specific loudness), or an arbitrary sound synthesis language event (possibly with dozends of parameters) are all representable be an event.

To provide such generality, an event has the attribute parameters which points to a collection [better term?] of all parameters of the event. The parameters themself contain information about their purpose (e.g. parameters are of a certain class as pitch, or amplitude). However, as a convenience, certain parameters are additionally referenced by an extra feature (e.g. all timing related parameters have their own feature, as startTime, offsetTime, endTime or duration). Subclasses of the event class may define additional features. Nevertheless, all parameters can be accessed via the parameters feature

An event always has the timing parameters startTime, duration, endTime, and offsetTime. However, additional parameters can be specified optionally (e.g. by the feature addParameters of the init method).
For a documentation of the time unit see doc of TimeMixin.

class Event (Inheritance-free)
   prop locking
   feat !ScoreObjectType label
   attr containers duration endTime flags id info offsetTime parameters startTime
end