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
