From: fred Date: Sun, 15 Dec 1996 22:59:54 +0000 (+0000) Subject: lilypond-0.0.17 X-Git-Tag: release/1.5.59~6580 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=1b1a1e00b34c0b5b93e66791c5c0ff56791bd7d4;p=lilypond.git lilypond-0.0.17 --- diff --git a/src/inputmusic.cc b/src/inputmusic.cc index 6d3186bf73..db2e3c57d5 100644 --- a/src/inputmusic.cc +++ b/src/inputmusic.cc @@ -1,106 +1,104 @@ #include "debug.hh" #include "inputmusic.hh" #include "voice.hh" -Input_music::~Input_music() -{ -} -Vertical_simple::Vertical_simple() -{ - voice_ = new Voice; -} -Vertical_simple::Vertical_simple(Vertical_simple const&s) -{ - voice_ = new Voice(*s.voice_); -} + void -Vertical_simple::add(Voice_element*v) +Simple_music::add(Voice_element*v) { - voice_->add(v); + voice_.add(v); } Real -Vertical_simple::length() +Simple_music::length() { - return voice_->last(); + return voice_.last(); } void -Vertical_simple::translate_time(Real t) +Simple_music::translate_time(Real t) { - voice_->start += t; + voice_.start += t; } Voice_list -Vertical_simple::convert() +Simple_music::convert() { Voice_list l; - l.bottom().add(new Voice(*voice_)); + l.bottom().add(new Voice(voice_)); return l; } -Vertical_simple::~Vertical_simple() -{ - delete voice_; -} void -Vertical_simple::print() const +Simple_music::print() const { - mtor << "Vertical_simple {"; - voice_->print(); + mtor << "Simple_music {"; + voice_.print(); mtor << "}\n"; } /****************/ + void -Music_voice::print() const +Complex_music::add(Input_music*v) +{ + elts.bottom().add(v); +} + +void +Complex_music::print() const { - mtor << "Music_voice {"; - for (PCursor i(voice_); i.ok(); i++) + for (PCursor i(elts); i.ok(); i++) i->print(); - mtor << "}\n"; } void -Music_voice::concatenate(Music_voice*h) +Complex_music::concatenate(Complex_music*h) { - for (PCursor i(h->voice_); i.ok(); i++) + for (PCursor i(h->elts); i.ok(); i++) add(i->clone()); } +Complex_music::Complex_music() +{ +} -Music_voice::Music_voice(Music_voice const&s) +Complex_music::Complex_music(Complex_music const&s) { - for (PCursor i(s.voice_); i.ok(); i++) + for (PCursor i(s.elts); i.ok(); i++) add(i->clone()); } +/****************************************************************/ + void -Music_voice::add(Voice_element*v) +Music_voice::print() const { - PCursor c(voice_.bottom()); + mtor << "Music_voice {"; + Complex_music::print(); + mtor << "}\n"; +} + +void +Music_voice::add_elt(Voice_element*v) +{ + PCursor c(elts.bottom()); if (!c.ok() || !c->simple()) { - Vertical_simple*vs = new Vertical_simple; + Simple_music*vs = new Simple_music; c.add(vs); } - c = voice_.bottom(); - Vertical_simple *s = c->simple(); + c = elts.bottom(); + Simple_music *s = c->simple(); s->add(v); } -void -Music_voice::add(Vertical_music*v) -{ - voice_.bottom().add(v); -} - Real Music_voice::length() { Real l = 0.0; - for (PCursor i(voice_); i.ok(); i++) + for (PCursor i(elts); i.ok(); i++) l += i->length(); return l; } @@ -112,7 +110,7 @@ Music_voice::convert() Voice_list l; Real here = 0.0; - for (PCursor i(voice_); i.ok(); i++) { + for (PCursor i(elts); i.ok(); i++) { Real len = i->length(); Voice_list k(i->convert()); k.translate_time(here); @@ -126,59 +124,51 @@ Music_voice::convert() void Music_voice::translate_time(Real t) { - for (PCursor i(voice_); i.ok(); i++) - i->translate_time(t); + elts.bottom()->translate_time(t); } /****************/ + void -Music_general_chord::print() const +Music_general_chord::add_elt(Voice_element*v) { - mtor << "Music_general_chord {"; - for (PCursor i(chord_); i.ok(); i++) - i->print(); - mtor << "}\n"; + Simple_music*vs = new Simple_music; + vs->add(v); + elts.bottom().add(vs); } void -Music_general_chord::concatenate(Music_general_chord*v) +Music_general_chord::print() const { - for (PCursor i(v->chord_); i.ok(); i++) - add(i->clone()); + mtor << "Music_general_chord {"; + Complex_music::print(); + mtor << "}\n"; } void Music_general_chord::translate_time(Real t) { - for (PCursor i(chord_); i.ok(); i++) + for (PCursor i(elts); i.ok(); i++) i->translate_time(t); } - - Real Music_general_chord::length() { Real l =0.0; - for (PCursor i(chord_); i.ok(); i++) - l = MAX(l, i->length()); + for (PCursor i(elts); i.ok(); i++) + l = l >? i->length(); return l; } -void -Music_general_chord::add(Horizontal_music*h) -{ - chord_.bottom().add(h); -} - Voice_list Music_general_chord::convert() { Voice_list l; - for (PCursor i(chord_); i.ok(); i++) { + for (PCursor i(elts); i.ok(); i++) { Voice_list k(i->convert()); l.concatenate(k); } @@ -186,14 +176,6 @@ Music_general_chord::convert() } -Music_general_chord::Music_general_chord( - Music_general_chord const & s) -{ - for (PCursor i(s.chord_); i.ok(); i++) { - add(i->clone()); - } -} - /****************/ void @@ -203,9 +185,3 @@ Voice_list::translate_time(Real x) i->start += x; } -void -Voice_list::junk() -{ - for (PCursor i(*this); i.ok(); i++) - delete i.ptr(); -}