2 music.hh -- declare Music
4 source file of the GNU LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
15 #include "virtual-methods.hh"
17 #include "minterval.hh"
18 #include "lily-proto.hh"
20 class Music:public Input {
22 virtual MInterval time_int()const;
25 virtual void transpose(Melodic_req const *);
26 virtual void translate(Moment dt);
27 VIRTUAL_COPY_CONS(Music,Music)
31 virtual void do_print() const;
35 class Music_list : public Music {
37 Music_list(Music_list const&);
40 VIRTUAL_COPY_CONS(Music_list,Music)
41 virtual void add(Music*);
42 virtual void transpose(Melodic_req const *);
44 Pointer_list<Music*> music_p_list_;
46 virtual void do_print() const;
50 class Chord : public Music_list {
53 VIRTUAL_COPY_CONS(Chord,Music)
54 virtual void translate(Moment dt);
55 virtual MInterval time_int()const;
59 class MVoice : public Music_list {
62 VIRTUAL_COPY_CONS(MVoice, Music)
63 virtual void translate(Moment dt);
64 virtual MInterval time_int()const;