]> git.donarmstrong.com Git - lilypond.git/blob - lily/music-sequence.cc
release: 1.0.8
[lilypond.git] / lily / music-sequence.cc
1 /*   
2   music-sequence.cc --  implement Music_sequence
3   
4   source file of the GNU LilyPond music typesetter
5   
6   (c) 1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7   
8  */
9 #include "music-list.hh"
10 #include "debug.hh"
11 #include "musical-pitch.hh"
12
13 Music_sequence::Music_sequence (Music_sequence const&s)
14   : Music (s)
15 {
16   multi_level_i_ = s.multi_level_i_;
17   music_p_list_p_ = new Music_list (*s.music_p_list_p_);
18 }
19
20 IMPLEMENT_IS_TYPE_B1(Music_sequence, Music);
21
22 Music_sequence::Music_sequence(Music_list *mlist_p)
23 {
24   multi_level_i_ = 0;
25   music_p_list_p_ = mlist_p;
26 }
27
28 void
29 Music_sequence::transpose (Musical_pitch rq)
30 {
31   for (iter (music_p_list_p_->top(),i); i.ok (); i++)
32     i->transpose (rq);    
33 }
34
35 void
36 Music_sequence::do_print() const
37 {
38 #ifndef NPRINT
39   for (iter (music_p_list_p_->top(),i); i.ok (); i++)
40     i->print();
41 #endif 
42 }
43
44
45 void
46 Music_sequence::add_music (Music *m_p)
47 {
48   music_p_list_p_->add_music (m_p);
49 }