On Sunday 26 Oct 2003 4:06 pm, Guillaume Laurent wrote:
> Can someone explain me the sequence I marked with '*' ? Is this the
> expected way of going ?

I looked briefly at this on Friday, but didn't get far.  (You'll have 
noticed the additional debug output I committed.)  This seems to be 
the result of the code in RosegardenSequencerApp::fetchEvents that 
seems to be designed explicitly to cope with loops in which the loop 
point may fall in the middle of a slice.  In this situation, in order 
to ensure the slice contains a full slice's-worth of events, it may 
be necessary to fill the slice with some events from the end of the 
looped section plus some from the start.

I got as far as thinking there was a particular problem with the 
combination of "end > m_loopEnd" test (as opposed to ">=") and 
failure to test "start < m_loopEnd": this seems to mean that when a 
slice actually ends at the same time as the loop end, it is treated 
as a normal slice, and then the _next_ slice (which is in fact 
entirely outside the loop) is treated as if it overlaps, hence this 
bizarre situation in which the start time is greater than or equal to 
the end time in the getSlice call.  But it's not quite as simple as 
just an incorrect test in this function -- I'm not clear why the next 
slice is being requested at all (surely the code that's calling this  
should have flipped back to the start of the loop by then).

I think on its own, this behaviour is strange but not fatal -- but 
combined with the meta-iterator's troubles handling non-contiguous 
slices (or whatever it is), it seems to cause real problems.

I think this whole sequence (pardon the pun) is rather overcomplicated 
by the original requirement to fit everything into getSlice calls 
from the GUI.


Chris



-------------------------------------------------------
This SF.net email is sponsored by: The SF.net Donation Program.
Do you like what SourceForge.net is doing for the Open
Source Community?  Make a contribution, and help us add new
features and functionality. Click here: http://sourceforge.net/donate/
_______________________________________________
Rosegarden-devel mailing list
[EMAIL PROTECTED] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to