X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ftiming-translator.cc;h=dbe365e11c2c81f3001d09150464c6df75b57ca5;hb=4995fea559cd5399b4f462de546a15195d76f4c3;hp=aa4882853075520b62e236629e93fe3c5c039e8e;hpb=70a98a1bfe6eafa9a4cee14a8a5264a52a329d03;p=lilypond.git diff --git a/lily/timing-translator.cc b/lily/timing-translator.cc index aa48828530..dbe365e11c 100644 --- a/lily/timing-translator.cc +++ b/lily/timing-translator.cc @@ -18,7 +18,6 @@ TODO: change the rest of lily, so communication with Timing_translator is only done through properties. This means the class declaration can go here. */ - bool Timing_translator::try_music (Music*r) { @@ -33,7 +32,7 @@ Timing_translator::try_music (Music*r) void Timing_translator::process_music () { - if (check_ && measure_position ()) + if (check_ && measure_position ().main_part_) { check_->origin ()->warning (_f ("barcheck failed at: %s", measure_position ().str ())); @@ -44,7 +43,6 @@ Timing_translator::process_music () } } - void Timing_translator::stop_translation_timestep () { @@ -92,25 +90,21 @@ Timing_translator::initialize () daddy_trans_l_->set_property ("beatLength", Moment (1,4).smobbed_copy ()); } -Moment +Rational Timing_translator::measure_length () const { SCM l = get_property ("measureLength"); if (unsmob_moment (l)) - return *unsmob_moment (l); + return unsmob_moment (l)->main_part_; else - return Moment (1); + return Rational (1); } - - Timing_translator::Timing_translator () { - } - Moment Timing_translator::measure_position () const { @@ -120,8 +114,8 @@ Timing_translator::measure_position () const if (unsmob_moment (sm)) { m = *unsmob_moment (sm); - while (m < Moment (0)) - m += measure_length (); + while (m.main_part_ < Rational (0)) + m.main_part_ += measure_length (); } return m; @@ -130,7 +124,7 @@ Timing_translator::measure_position () const void Timing_translator::start_translation_timestep () { - check_ =00; + check_ = 0; Translator *t = this; Global_translator *global_l =0; do @@ -174,10 +168,10 @@ Timing_translator::start_translation_timestep () SCM cad = get_property ("timing"); bool c= to_boolean (cad); - Moment len = measure_length (); - while (c && measposp >= len) + Rational len = measure_length (); + while (c && measposp.main_part_ >= len) { - measposp -= len; + measposp.main_part_ -= len; b ++; }