Next: Extending music syntax, Previous: Input variables and Scheme, Up: Programmer interfaces for input
When a music expression is parsed, it is converted into a set of Scheme music objects. The defining property of a music object is that it takes up time. Time is a rational number that measures the length of a piece of music, in whole notes.
A music object has three kinds of types:
\simultaneous
leads to
a
SimultaneousMusic. A list of all expressions
available is in the internals manual, under
Music expressions.
event
, but it is also a
note-event
, a rhythmic-event
, and a melodic-event
.
All classes of music are listed in the internals manual, under Music classes.
Event
object, while \grace
creates a Grace_music
object.
We expect that distinctions between different C++ types will disappear in the future.
The actual information of a music expression is stored in properties.
For example, a
NoteEvent has pitch
and
duration
properties that store the pitch and duration of that
note. A list of all properties available is in the internals manual,
under
Music properties.
A compound music expression is a music object that contains other
music objects in its properties. A list of objects can be stored in
the elements
property of a music object, or a single `child'
music object in the element
object. For example,
SequentialMusic has its children in elements
,
and
GraceMusic has its single argument in
element
. The body of a repeat is stored in the element
property of
RepeatedMusic, and the alternatives in
elements
.
This page is for LilyPond-2.6.3 (stable-branch).