]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/music-list.hh
release: 1.5.0
[lilypond.git] / lily / include / music-list.hh
1 /*
2   music-list.hh -- declare Music_sequence,
3   Simultaneous_music and Sequential_music
4
5   source file of the GNU LilyPond music typesetter
6
7   (c)  1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
8 */
9
10
11 #ifndef Music_sequence_HH
12 #define Music_sequence_HH
13
14 #include "music-sequence.hh"
15
16 /**
17   Simultaneous_music is a list of music-elements which happen simultaneously
18  */
19 class Simultaneous_music : public Music_sequence
20 {
21 public:
22   VIRTUAL_COPY_CONS (Music);
23   Simultaneous_music (SCM);
24   virtual Pitch to_relative_octave (Pitch);
25   virtual Moment length_mom () const;
26   virtual Moment start_mom () const;
27   Simultaneous_music ();
28 };
29
30 /**
31   The request is a collection of Requests. A note that you enter in lilypond is 
32   one Request_chord, one syllable of lyrics is one Request_chord
33  */
34 class Request_chord : public Simultaneous_music
35 {
36 public:
37   VIRTUAL_COPY_CONS (Music);
38   virtual Pitch to_relative_octave (Pitch);
39   virtual Moment start_mom () const;
40   Request_chord (SCM list);
41
42   Request_chord ();
43 };
44
45 /**
46   Sequential_music is a list of music-elements which are placed behind each other.
47  */
48 class Sequential_music : public Music_sequence
49 {
50 public:
51   VIRTUAL_COPY_CONS (Music);
52   Sequential_music (SCM);
53   virtual Moment length_mom () const;
54   virtual Moment start_mom () const;
55   
56   Sequential_music ();
57 };
58
59 #endif // Music_sequence_HH