On 2015/10/10 01:50:28, Dan Eble wrote:
On 2015/10/09 06:23:09, dak wrote:

>

https://codereview.appspot.com/265410043/diff/60001/lily/part-combine-iterator.cc#newcode144
> lily/part-combine-iterator.cc:144: // What is the relationship
between
> "duration" and "length"?  Why does
> Length is a Moment, duration is a Duration.  get_event_length
converts a
> Duration into a Moment and caches the result.  Moments are what the
general
> timing works with.
>
> So there is really nothing to be seen here.

By what process should get_event_length() convert a duration to a
moment?  All I
see in get_event_length() is a call to get the "length" property.

Right.  It gets there by "precompute-music-length" during scorification
where the real job is done by Music::get_length.  So obviously if we are
creating a Stream_event from scratch, this mechanism can no longer be
used since the respective callbacks don't work with a Stream_event.
Still, omitting duration altogether is asking for trouble since the
Stream_event is also seen by other engravers.

And it's not like Duration (mom.main_part_, true) (who wrote _that_?
It's scary) or Duration ().compressed (mom.main_part_) is that hard to
write.

When I change my start_mmrest() to set "duration" instead of "length",
the bug
in part-combine-solo-end.ly reappears.  I am using
Duration().compressed(length.main_part_).smobbed_copy() as the
duration.

Well, here I see SCM_EOL.

https://codereview.appspot.com/265410043/

_______________________________________________
lilypond-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to