2 music-list.hh -- declare Music_list, Chord and Voice
4 source file of the GNU LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
18 Music can be a list of other "Music" elements
20 class Music_list : public Music {
25 Music_list (Music_list const&);
27 DECLARE_MY_RUNTIME_TYPEINFO;
28 VIRTUAL_COPY_CONS(Music_list,Music);
29 virtual void add (Music*);
30 virtual void transpose (Melodic_req const *);
32 Pointer_list<Music*> music_p_list_;
35 virtual void do_print() const;
39 Chord is a list of music-elements which happen simultaneously
42 class Chord : public Music_list {
45 DECLARE_MY_RUNTIME_TYPEINFO;
46 VIRTUAL_COPY_CONS(Chord,Music);
47 virtual void translate (Moment dt);
48 virtual MInterval time_int() const;
52 The request is a collection of Requests. A note that you enter in mudela is
53 one Request_chord, one syllable of lyrics is one Request_chord
55 class Request_chord : public Chord {
57 DECLARE_MY_RUNTIME_TYPEINFO;
59 VIRTUAL_COPY_CONS(Request_chord,Music);
63 Voice is a list of music-elements which are placed behind each other.
65 class Voice : public Music_list {
71 DECLARE_MY_RUNTIME_TYPEINFO;
72 VIRTUAL_COPY_CONS(Voice, Music);
73 virtual void translate (Moment dt);
74 virtual MInterval time_int() const;
77 /** A simple piece of music, which wishes to change the spot of its
79 class Change_reg : public Music {
82 /// what kind of iterator needed to walk this music?
85 /// what name (or look for this name)
88 DECLARE_MY_RUNTIME_TYPEINFO;
89 VIRTUAL_COPY_CONS(Change_reg, Music);
91 #endif // MUSIC_LIST_HH