]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/music-list.hh
* gcc-3.4 snapshot: 3.4.0 20040215 (prerelease) compile fixes, and
[lilypond.git] / lily / include / music-list.hh
1 /*
2   music-list.hh -- declare Simultaneous_music, Sequential_music, Event_chord
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 1997--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 */
8
9
10 #ifndef MUSIC_LIST_HH
11 #define MUSIC_LIST_HH
12
13 #include "music-sequence.hh"
14
15 /**
16   Simultaneous_music is a list of music-elements which happen simultaneously
17  */
18 class Simultaneous_music : public Music_sequence
19 {
20 public:
21   Simultaneous_music ();
22   VIRTUAL_COPY_CONSTRUCTOR (Music, Simultaneous_music);
23
24   virtual Pitch to_relative_octave (Pitch);
25   virtual Moment get_length () const;
26   virtual Moment start_mom () const;
27 };
28
29 /*
30   A chord.
31  */
32 class Event_chord : public Simultaneous_music
33 {
34 public:
35   VIRTUAL_COPY_CONSTRUCTOR (Music, Event_chord);
36   virtual Pitch to_relative_octave (Pitch);
37 };
38
39 /**
40   Sequential_music is a list of music-elements which are placed behind each other.
41  */
42 class Sequential_music : public Music_sequence
43 {
44 public:
45   VIRTUAL_COPY_CONSTRUCTOR (Music, Sequential_music);
46   virtual Moment get_length () const;
47   virtual Moment start_mom () const;
48   
49   Sequential_music ();
50 };
51
52 #endif /* MUSIC_LIST_HH */