2 #include "inputmusic.hh"
6 Simple_music::add(Voice_element*v)
12 Simple_music::length()
17 Simple_music::translate_time(Moment t)
23 Simple_music::convert()
26 l.bottom().add(new Voice(voice_));
32 Simple_music::print() const
34 mtor << "Simple_music {";
42 Complex_music::add(Input_music*v)
48 Complex_music::print() const
50 for (iter_top(elts,i); i.ok(); i++)
55 Complex_music::concatenate(Complex_music*h)
57 for (iter_top(h->elts,i); i.ok(); i++)
61 Complex_music::Complex_music()
65 Complex_music::Complex_music(Complex_music const&s)
67 for (iter_top(s.elts,i); i.ok(); i++)
71 /****************************************************************/
74 Music_voice::print() const
76 mtor << "Music_voice {";
77 Complex_music::print();
82 Music_voice::add_elt(Voice_element*v)
84 PCursor<Input_music*> c(elts.bottom());
85 if (!c.ok() || !c->simple()) {
86 Simple_music*vs = new Simple_music;
92 Simple_music *s = c->simple();
101 for (iter_top(elts,i); i.ok(); i++)
108 Music_voice::convert()
113 for (iter_top(elts,i); i.ok(); i++) {
114 Moment len = i->length();
115 Voice_list k(i->convert());
116 k.translate_time(here);
124 Music_voice::translate_time(Moment t)
126 elts.bottom()->translate_time(t);
134 Music_general_chord::add_elt(Voice_element*v)
136 Simple_music*vs = new Simple_music;
138 elts.bottom().add(vs);
142 Music_general_chord::print() const
144 mtor << "Music_general_chord {";
145 Complex_music::print();
150 Music_general_chord::translate_time(Moment t)
152 for (iter_top(elts,i); i.ok(); i++)
153 i->translate_time(t);
157 Music_general_chord::length()
161 for (iter_top(elts,i); i.ok(); i++)
162 l = l >? i->length();
167 Music_general_chord::convert()
170 for (iter_top(elts,i); i.ok(); i++) {
171 Voice_list k(i->convert());
181 Voice_list::translate_time(Moment x)
183 for (iter_top(*this,i); i.ok(); i++)