class Completion_rest_engraver : public Engraver
{
vector<Item *> rests_;
- vector<Item *> prev_rests_;
vector<Stream_event *> rest_events_;
Moment rest_end_mom_;
bool is_first_;
if (unit)
{
Rational const now_unit = e->main_part_ / unit->main_part_;
- if (now_unit.den() > 1)
+ if (now_unit.den () > 1)
{
/*
within a unit - go to the end of that
return;
Duration rest_dur;
- Duration appearance;
Duration *orig = 0;
if (left_to_do_)
{
/*
- rest that rest_dur may be strictly less than left_to_do_
+ note that rest_dur may be strictly less than left_to_do_
(say, if left_to_do_ == 5/8)
*/
if (factor_.denominator () == 1 && factor_ > Rational (1, 1))
rest_dur = Duration (left_to_do_, false);
else
rest_dur = Duration (left_to_do_ / factor_, false).compressed (factor_);
- appearance = Duration (left_to_do_, false);
}
else
{
void
Completion_rest_engraver::stop_translation_timestep ()
{
- if (rests_.size ())
- prev_rests_ = rests_;
rests_.clear ();
}
if (rest_end_mom_.main_part_ <= now.main_part_)
{
rest_events_.clear ();
- prev_rests_.clear ();
}
context ()->set_property ("restCompletionBusy",
ly_bool2scm (rest_events_.size ()));