2 music.hh -- declare Music
4 source file of the GNU LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
14 #include "virtual-methods.hh"
16 #include "minterval.hh"
17 #include "lily-proto.hh"
21 Anything which has length or pitch.
23 In Lily, everything that can be thought to have a length and a pitch
24 (which has a duration which can be transposed) is considered "music",
26 Music is hierarchical:
31 class Music:public Input {
33 Music_list * parent_music_l_;
35 /** The kind of iterator needed to walk this music. This doesn't
36 make sense for simple (ie non-list) music, but it does no harm
37 here. Yes, it did harm Music_list: you can forget to copy it.
42 /// what name (or look for this name)
45 virtual MInterval time_int() const;
48 virtual void transpose (Melodic_req const *);
49 virtual void translate (Moment dt);
50 VIRTUAL_COPY_CONS(Music,Music);
51 DECLARE_MY_RUNTIME_TYPEINFO;
54 virtual void do_print() const;